Biochimica

Codice genetico

il 14 Agosto 2025

19 minutes di lettura
codice genetico

Il codice genetico è il linguaggio con cui la vita scrive le istruzioni per costruire le proprie proteine. All’interno del DNA, queste istruzioni sono composte da quattro “lettere” chimiche  ovvero adenina (A), citosina (C), guanina (G) e timina (T)  che, combinate in gruppi di tre basi chiamati codoni, indicano quale amminoacido inserire in ogni punto di una proteina. Grazie a questa struttura, l’informazione genetica può essere trascritta e tradotta con precisione, permettendo alle cellule di produrre le proteine necessarie al loro funzionamento.

Sorprendentemente, questo linguaggio è quasi universale: un batterio, una pianta o un essere umano leggono i codoni nello stesso modo. Questa uniformità suggerisce che il codice genetico abbia avuto origine molto presto nell’evoluzione, ed è stato conservato perché estremamente efficace nel trasmettere informazioni biologiche complesse. La disposizione dei codoni nella tabella genetica non è casuale, e ancora oggi la sua origine e il motivo della sua struttura così ordinata restano oggetto di studio.

Gli scienziati hanno elaborato diverse teorie per spiegare come il codice genetico si sia formato e consolidato:

La teoria stereochimica suggerisce che esista un’affinità naturale tra certi codoni e gli amminoacidi che codificano, come se le basi e le proteine fossero in grado di riconoscersi chimicamente.

La teoria della coevoluzione propone che il codice si sia sviluppato insieme alle vie biochimiche che producono gli amminoacidi, in modo che la struttura del codice rispecchiasse le disponibilità chimiche della cellula primordiale.

Secondo la teoria della minimizzazione dell’errore  il codice è stato selezionato per ridurre gli effetti negativi di mutazioni o errori di traduzione, rendendolo robusto e affidabile anche in presenza di piccoli cambiamenti nella sequenza nucleotidica.

Queste teorie non si escludono a vicenda e insieme offrono una visione più completa dell’eleganza e della stabilità sorprendente del codice genetico, un sistema che ha permesso alla vita di evolversi con grande precisione e continuità.

L’ipotesi dell’incidente congelato

Secondo la teoria dell’espansione del codice proposta da Francis Crick, l’assegnazione degli amminoacidi ai codoni sarebbe stata in gran parte accidentale durante l’evoluzione primordiale del codice genetico. In altre parole, anche se oggi ci aspetteremmo che amminoacidi simili abbiano codoni simili, la scelta originale dei codoni potrebbe non aver seguito questa logica.

incidente congelato
incidente congelato

Questo concetto è noto come “ipotesi dell’incidente congelato” perché, una volta che il codice genetico primordiale si era espanso per includere tutti i 20 amminoacidi moderni, qualsiasi cambiamento successivo avrebbe richiesto modifiche simultanee in molte sequenze proteiche già esistenti. Tale scenario sarebbe stato letale, spiegando così l’universalità quasi totale del codice genetico tra gli organismi viventi.

Oggi sappiamo che il codice non è completamente universale: esistono modifiche significative, ad esempio nei mitocondri o in alcuni protozoi, ma la sua organizzazione di base è rimasta invariata, confermando la robustezza e l’efficienza del codice primordiale.

Struttura del codice genetico

Il codice genetico rappresenta il sistema mediante il quale l’informazione contenuta nel DNA viene tradotta in proteine funzionali. La sua organizzazione non è casuale: ogni dettaglio garantisce che le istruzioni genetiche vengano lette correttamente, permettendo alle cellule di funzionare in modo efficiente.

Le basi azotate

Il DNA è formato da quattro basi azotate che basi possono essere immaginate come le “lettere” di un alfabeto biologico, che combinandosi in sequenze precise trasmettono istruzioni genetiche.
Nell’RNA messaggero (m-RNA), che serve da intermediario tra DNA e proteina, la timina viene sostituita dall’uracile (U). Questa semplice sostituzione è fondamentale per distinguere i ruoli dei due acidi nucleici e garantire il corretto processo di trascrizione e traduzione.

I codoni

Le basi del DNA vengono lette in gruppi di tre, detti codoni, e ogni codone indica un amminoacido specifico da inserire nella proteina in formazione. Ad esempio, il codone AUG segnala al ribosoma mitocondriale di iniziare la sintesi della proteina, fornendo anche l’informazione per inserire l’amminoacido metionina come primo della catena. Questa lettura a tre basi garantisce che ogni combinazione abbia un significato univoco, riducendo ambiguità nella traduzione.

Il codice genetico è spesso rappresentato attraverso una tabella dei codoni, che mostra quale amminoacido corrisponde a ciascuna combinazione di tre basi nucleotidiche. Poiché il DNA utilizza quattro basi e ogni codone è formato da tre basi, il numero totale di combinazioni possibili è 4 · 4 · 4 = 64 codoni.

Di questi 64 codoni 61 codoni codificano per i 20 amminoacidi standard presenti nelle proteine e 3 codoni fungono da codoni di stop, segnalando la terminazione della sintesi proteica.

Questa ridondanza, chiamata degenerazione del codice, significa che più codoni possono corrispondere allo stesso amminoacido, conferendo al codice genetico una certa robustezza contro mutazioni e errori di traduzione.

La tabella del codice genetico

Il codice genetico può essere rappresentato come una tabella in cui ogni combinazione di tre basi azotate, chiamata codone, corrisponde a un amminoacido specifico o a un segnale di stop per la sintesi proteica. Ad esempio, nella tabella fornita, il codone UUU codifica per la fenilalanina (Phe), mentre AUG ha una funzione doppia: codifica per la metionina (Met) ed è anche il codone di inizio della traduzione.

Ogni codone è formato da tre lettere corrispondenti alle basi dell’RNA messaggero: adenina (A), uracile (U), citosina (C) e guanina (G). Con quattro possibili basi e tre posizioni per codone, esistono 64 combinazioni possibili (4³). Alcuni amminoacidi sono codificati da più codoni differenti: questo fenomeno è chiamato degenerazione del codice ed è un meccanismo che aumenta la robustezza del codice genetico, riducendo l’impatto di eventuali mutazioni puntiformi.

Oltre ai codoni che specificano amminoacidi, alcuni codoni servono come segnali di terminazione della sintesi proteica: ad esempio, UAA, UAG e UGA sono codoni di stop. La tabella del codice genetico fornisce quindi una mappa universale che permette al ribosoma di leggere correttamente l’informazione contenuta nel DNA e sintetizzare proteine funzionali.

tabella
tabella

Per interpretare la tabella del codice genetico, si seguono generalmente le tre posizioni del codone in ordine: prima base, seconda base e terza base. La tabella è organizzata in modo da raggruppare i codoni secondo queste posizioni, facilitando l’individuazione dell’amminoacido corrispondente.

-Prima base: questa corrisponde alla riga principale della tabella. La scelta della prima base determina il blocco generale in cui il codone si troverà.

-Seconda base: spesso è rappresentata nelle colonne interne della tabella. La combinazione della prima e della seconda base restringe ulteriormente le possibilità, indicando un sottoinsieme di codoni che codificano amminoacidi simili.

-Terza base: nota anche come posizione “wobble”, può variare senza necessariamente cambiare l’amminoacido codificato. Questa posizione è quindi più tollerante alle mutazioni e spiega la degenerazione del codice. La terza base viene letta consultando l’ultima suddivisione della tabella per identificare l’amminoacido esatto o il segnale di stop.

In pratica, per determinare l’amminoacido associato a un codone come GCU:

-Si guarda la prima base (G) per trovare la riga corretta.

-Si considera la seconda base (C) per restringere la colonna.

-Infine, la terza base (U) identifica esattamente l’amminoacido, in questo caso l’alanina (Ala).

Questo metodo permette di leggere rapidamente ogni codone nella tabella e capire quale amminoacido sarà incorporato durante la sintesi proteica.

Degenerazione del codice

Il codice genetico è ridondante o “degenerato”, il che significa che più codoni possono codificare lo stesso amminoacido. Per esempio, l’amminoacido leucina può essere codificato da sei codoni diversi. Questa caratteristica agisce come una sorta di “tutela”: se durante la trascrizione o la traduzione una base subisce una mutazione, spesso la proteina prodotta non viene alterata, riducendo l’impatto degli errori genetici.

Codoni di stop

Oltre ai codoni che codificano amminoacidi, il codice genetico comprende codoni di stop, come UAA, UAG e UGA, che segnalano al ribosoma la fine della catena proteica. Senza questi segnali, il ribosoma continuerebbe a leggere oltre la sequenza prevista, producendo proteine non funzionanti. I codoni di stop sono quindi essenziali per garantire la precisione della sintesi proteica.

Caratteristiche principali

Universalità – Il codice genetico è sorprendentemente simile in quasi tutti gli esseri viventi, dai batteri agli esseri umani. Questo suggerisce che tutte le forme di vita discendono da un antenato comune e che il codice è stato conservato perché funziona efficacemente.

Non ambiguità – Ogni codone ha un significato univoco: non esistono codoni che possano codificare più di un amminoacido. Questa chiarezza è fondamentale: anche un piccolo errore potrebbe compromettere la funzione della proteina.

Continuità – I codoni vengono letti uno dopo l’altro, senza pause o segni di punteggiatura. Questo significa che la sequenza di lettura deve essere precisa, poiché anche uno spostamento di una singola base può cambiare completamente la proteina prodotta.

Ridondanza – La presenza di più codoni per lo stesso amminoacido non è casuale: agisce come un meccanismo di sicurezza contro mutazioni puntiformi e errori di traduzione. In pratica, il codice genetico è progettato per essere resistente e affidabile, minimizzando gli effetti potenzialmente dannosi dei cambiamenti casuali nella sequenza nucleotidica.

Origine ed evoluzione del codice genetico

L’origine del codice genetico resta uno dei temi più affascinanti della biologia molecolare. Il codice non sarebbe nato già perfetto, ma si è sviluppato gradualmente, probabilmente a partire da una versione più semplice presente nei primi organismi.

La teoria dell’incidente congelato, proposta da Francis Crick, suggerisce che l’assegnazione degli amminoacidi ai codoni sia stata in gran parte accidentale: una volta che il codice primordiale si era espanso per includere tutti i 20 amminoacidi moderni, qualsiasi cambiamento successivo avrebbe richiesto modifiche simultanee in molte proteine esistenti, risultando spesso letale.

Questo spiegherebbe l’universalità quasi totale del codice genetico tra gli organismi viventi. Tuttavia, la scoperta di codici varianti e della possibilità di apportare modifiche limitate senza rompere il sistema suggerisce che la struttura del codice potrebbe non essere del tutto casuale.

Per comprendere meglio l’evoluzione del codice, gli scienziati hanno formulato tre teorie principali, non necessariamente mutualmente esclusive:

La teoria stereochimica  sostiene che l’assegnazione dei codoni agli amminoacidi sia determinata da una affinità fisico-chimica tra le triplette di nucleotidi e gli amminoacidi corrispondenti. In questo scenario, la struttura del codice non sarebbe casuale, ma in qualche modo “necessaria”. I primi modelli stereochimici risalgono agli anni ’50, subito dopo la scoperta della struttura del DNA, e hanno stimolato ulteriori ricerche teoriche e sperimentali, sebbene gli esperimenti diretti non abbiano mai confermato interazioni specifiche generalizzabili.

La teoria adattativa (minimizzazione dell’errore)  propone che il codice genetico si sia evoluto per ridurre l’effetto delle mutazioni e degli errori di traduzione. I codoni simili codificano spesso amminoacidi con proprietà chimiche simili, limitando i danni prodotti da errori casuali. Simulazioni e osservazioni sperimentali sul tasso di errori in diverse posizioni dei codoni supportano l’idea che il codice sia stato selezionato per massimizzare la robustezza e l’affidabilità della traduzione proteica.

Per la teoria della coevoluzione  la struttura del codice riflette i percorsi di biosintesi degli amminoacidi. In pratica, durante l’evoluzione, codoni originariamente assegnati ad amminoacidi precursori sono stati riassegnati ai prodotti finali di tali percorsi, modellando il codice in parallelo con la chimica cellulare.

coevoluzione
coevoluzione

Approcci più recenti, centrati sull’interazione tra codoni e tRNA o tra codoni e amminoacil-tRNA sintetasi, suggeriscono che anche questa coevoluzione abbia contribuito a ridurre errori e ambiguità durante la traduzione.

Queste teorie, formulate sin dai primi anni della biologia molecolare, continuano a essere rilevanti ancora oggi. La combinazione di fattori casuali, selezione adattativa e vincoli biochimici sembra aver plasmato un codice genetico stabile, efficiente e sorprendentemente conservato, pur consentendo piccole variazioni locali in alcune linee evolutive.

Nonostante decenni di ricerche e l’accumulo di numerose prove sperimentali e circostanziali, nessuna delle tre principali teorie sull’origine e l’evoluzione del codice genetico — stereochimica, coevoluzione e minimizzazione dell’errore — è supportata in modo inequivocabile dai dati disponibili. È quindi plausibile considerare uno scenario composito, in cui ciascuna teoria catturi alcuni aspetti della realtà biologica.

Ad esempio, si può immaginare che:

In una fase iniziale, gli amminoacidi sintetizzati abiogenicamente si leghino ai loro codoni affini grazie a proprietà chimiche intrinseche (teoria stereochimica).

Successivamente, il codice si espanda e si modifichi in parallelo con le vie di biosintesi degli amminoacidi (teoria della coevoluzione).

Infine, le assegnazioni dei codoni vengano ottimizzate dalla selezione naturale, in modo da minimizzare gli effetti di errori di traduzione e mutazioni puntiformi sul genoma (teoria adattativa).

Questa visione composita è estremamente flessibile e può spiegare molte caratteristiche del codice genetico moderno, pur sollevando questioni riguardo alla falsificabilità e testabilità delle ipotesi. Tuttavia, l’analisi critica delle previsioni specifiche di ciascuna teoria potrebbe comunque fornire strumenti per valutare e, eventualmente, falsificare uno scenario composito, contribuendo a chiarire ulteriormente i processi che hanno plasmato il codice genetico.

Evoluzione collettiva e universalità del codice genetico

Un’ipotesi recente propone che l’universalità del codice genetico possa essere spiegata attraverso un processo di evoluzione collettiva dei primi replicatori. In questo scenario, comunità di entità genetiche primitive scambiavano informazioni in maniera orizzontale, e il mantenimento di un codice comune risultava essenziale per la trasmissione efficace di queste informazioni.

All’interno di tali comunità, cluster di codici simili competevano per sopravvivere e adattarsi alle diverse nicchie ambientali. I codici più efficienti, in grado di minimizzare gli errori durante la traduzione, tendevano a prevalere, favorendo l’emergere di un codice quasi universale e altamente robusto.

Questa visione combina elementi dell’ipotesi dell’incidente congelato con una pressione selettiva collettiva, offrendo un quadro in cui l’universalità del codice genetico non è solo il risultato di eventi casuali, ma anche di un processo di ottimizzazione guidato dalla competizione e dalla cooperazione tra comunità di unità replicanti primordiali.

Importanza biologica e applicazioni

Il codice genetico è il cuore della vita così come la conosciamo. La sua precisione e stabilità consentono alle cellule di produrre le proteine necessarie al funzionamento di organismi complessi, dalla riproduzione alla risposta agli stimoli ambientali. Ogni errore nella lettura del codice può avere conseguenze significative, motivo per cui la sua struttura altamente conservata è fondamentale per la stabilità biologica.

Oltre al ruolo centrale nella biologia cellulare, la comprensione del codice genetico ha aperto ampie prospettive applicative. In medicina, ad esempio, permette di identificare mutazioni responsabili di malattie genetiche e di sviluppare terapie mirate, come quelle basate sulla correzione di geni difettosi. In biotecnologia, la capacità di leggere e manipolare il codice genetico ha reso possibile la produzione di proteine ricombinanti, vaccini, enzimi industriali e organismi geneticamente modificati con caratteristiche specifiche.

Il codice genetico è anche alla base di strumenti avanzati come l’editing genomico, che sfrutta enzimi capaci di tagliare e modificare sequenze di DNA con precisione, aprendo nuove strade nella ricerca biologica e nella cura di malattie finora incurabili. Inoltre, studi sul codice hanno contribuito a sviluppare sistemi sintetici di codifica, come codici genetici espansi o artificiali, che possono incorporare amminoacidi non naturali, ampliando le possibilità di progettazione di nuove proteine con funzioni innovative.

In sintesi, la comprensione del codice genetico non solo ci aiuta a capire le leggi fondamentali della vita, ma costituisce anche una base essenziale per innovazioni scientifiche e tecnologiche che continuano a trasformare la biologia, la medicina e l’industria.

Errori e mutazioni nel codice genetico

Il codice genetico, pur essendo straordinariamente robusto, non è immune da errori e mutazioni. Durante la duplicazione del DNA o nella trascrizione in RNA possono verificarsi mutazioni puntiformi, cioè cambiamenti di singole basi, inserzioni, delezioni o duplicazioni di sequenze. Questi errori possono alterare i codoni e, di conseguenza, la sequenza di amminoacidi nelle proteine prodotte. Talvolta le mutazioni sono silenti, non modificando l’amminoacido codificato grazie alla degenerazione del codice genetico, ma altre volte possono avere effetti significativi sulla struttura e funzione della proteina.

mutazioni genetiche
mutazioni genetiche

Alcune mutazioni hanno effetti particolarmente rilevanti:

Missenso: una base cambia e il codone codifica un amminoacido diverso; l’effetto può essere lieve o grave a seconda dell’impatto sulla proteina.

Nonsense: introduzione di un codone di stop prematuro, producendo proteine tronche e spesso non funzionali.

Frameshift: inserzioni o delezioni non multiple di tre basi, che modificano completamente la lettura del gene e generano proteine alterate o non funzionanti.

Gli errori possono anche derivare dalla traduzione errata, quando il ribosoma inserisce un amminoacido sbagliato durante la sintesi proteica. La cellula possiede meccanismi di controllo e correzione della qualità, ma non tutti gli errori possono essere eliminati. Alcuni cambiamenti, se avvantaggiosi, possono essere selezionati evolutivamente, dando origine a varianti proteiche con nuove proprietà, mentre altri possono risultare deleteri o letali.

A lungo termine, mutazioni ed errori costituiscono la principale fonte di variabilità genetica, essenziale per l’adattamento e l’evoluzione. La struttura stessa del codice genetico appare ottimizzata per ridurre l’impatto negativo degli errori: codoni simili spesso codificano amminoacidi con caratteristiche chimiche affini, limitando i danni prodotti da mutazioni casuali. In questo senso, errori e mutazioni rappresentano un equilibrio delicato tra rischio e opportunità, fondamentali per la resilienza e la flessibilità della vita.

Errori e mutazioni rappresentano un delicato equilibrio tra rischio e opportunità: possono compromettere la funzione cellulare, ma sono anche fondamentali per l’innovazione biologica e la resilienza della vita.

Conseguenze delle mutazioni nel codice genetico

Le mutazioni nel codice genetico possono avere effetti molto diversi a seconda del tipo di cambiamento e della proteina coinvolta. Sul piano clinico, possono essere responsabili di malattie monogeniche (come fibrosi cistica, fenilchetonuria, talassemie) o contribuire alla predisposizione a patologie complesse e multifattoriali, tra cui alcuni tumori, malattie neurodegenerative o autoimmuni. In alcuni casi, mutazioni somatiche acquisite nel corso della vita — e non ereditarie — possono trasformare cellule sane in cellule tumorali, dando avvio a processi oncogeni.

Alcuni esempi significativi di mutazioni ereditarie includono:

Anemia falciforme: questa malattia è causata da una mutazione missenso nel gene della β-globina, una delle due catene proteiche che compongono l’emoglobina. La sostituzione di un singolo amminoacido provoca un’alterazione della struttura della proteina, rendendo i globuli rossi rigidi e a forma di falce. Queste cellule deformi hanno una vita più breve e tendono a ostruire i vasi sanguigni, causando anemia cronica, dolori episodici e danni agli organi.

Fibrosi cistica: patologia multiorgano, che colpisce soprattutto l’apparato respiratorio e quello digerente. E’ dovuta ad un gene alterato, cioè mutato, chiamato gene CFTR (Cystic Fibrosis Transmembrane Regulator) che codifica per un canale ionico fondamentale per il trasporto del cloro e dell’acqua attraverso le membrane cellulari. Il gene CFTR codifica la sintesi della proteina CFTR, che se ben funzionante, regola il movimento del cloro, al quale segue il movimento dell’acqua, dall’interno verso l’esterno delle cellule epiteliali delle ghiandole mucose.

La mutazione porta a proteine CFTR difettose o assenti, determinando accumulo di muco denso e viscoso nei polmoni, nel pancreas e in altri organi. Ciò provoca infezioni respiratorie ricorrenti, difficoltà digestive e un generale compromissione della qualità della vita.

Distrofia muscolare di Duchenne: causata da mutazioni frameshift nel gene della distrofina, una proteina essenziale per la stabilità delle fibre muscolari. È una patologia pediatrica, neuromuscolare, ereditaria X linked, ovvero legata al cromosoma X, che e colpisce i soggetti di sesso maschile.  Queste mutazioni producono proteine tronche e non funzionali, con conseguente degenerazione progressiva del tessuto muscolare, debolezza crescente e perdita della capacità di deambulare nei bambini colpiti.

Emofilia: alcune forme della malattia derivano da mutazioni nonsense nei geni che codificano i fattori della coagulazione. L’introduzione di un codone di stop prematuro interrompe la sintesi proteica, impedendo la produzione di fattori necessari alla coagulazione. Questo determina una ridotta capacità di formare coaguli, con sanguinamenti prolungati, ecchimosi frequenti e rischio di emorragie spontanee in organi vitali.

L’emofilia è una malattia genetica legata al cromosoma X, e per questo motivo si manifesta quasi esclusivamente nei maschi. La mutazione che causa il disturbo può essere trasmessa dalla madre ai figli maschi e, nelle femmine, può essere presente sia una copia normale sia quella mutata. Il gene responsabile è recessivo, il che significa che basta una sola copia funzionante del gene del fattore della coagulazione per garantire una normale coagulazione del sangue.

Le femmine possiedono due cromosomi X, quindi due copie del gene del fattore della coagulazione. Se una femmina eredita un cromosoma X con la mutazione e uno normale dall’altro genitore, quest’ultimo permette alla proteina di essere prodotta correttamente, rendendola portatrice senza sintomi evidenti della malattia. I maschi, invece, possiedono un solo cromosoma X (ereditato dalla madre) e un cromosoma Y (ereditato dal padre). Se il loro unico cromosoma X contiene la mutazione, non hanno una seconda copia funzionale che compensi, e quindi sviluppano la malattia.

Oltre agli effetti patologici, le mutazioni possono generare varianti proteiche con nuove proprietà che risultano vantaggiose in determinati contesti. Ad esempio, mutazioni che conferiscono resistenza a infezioni o tolleranza a condizioni ambientali estreme possono essere selezionate positivamente nel corso delle generazioni. In questo senso, le mutazioni rappresentano sia una minaccia sia una risorsa: possono compromettere la funzione cellulare, ma forniscono anche la materia prima per l’evoluzione e l’adattamento.

Pertanto le mutazioni costituiscono il motore della diversità genetica e mostrano il doppio volto della biologia: da un lato causano malattie e disfunzioni cellulari, dall’altro rappresentano la fonte primaria di variabilità indispensabile per l’evoluzione delle specie. Comprendere le loro conseguenze significa non solo chiarire i meccanismi delle patologie genetiche, ma anche cogliere il ruolo creativo e dinamico che le mutazioni hanno avuto nella storia della vita.

Riflessioni finali e prospettive

Prima di concludere, è importante chiedersi se l’analisi delle proprietà e dell’evoluzione del codice genetico possa davvero risolvere il mistero della sua origine. Gran parte degli studi condotti finora si svolge in contesti formali e controllati, come modelli matematici o esperimenti di selezione su sistemi semplificati, la cui rilevanza rispetto all’evoluzione primordiale rimane incerta.

L’ipotesi dell’evoluzione collettiva dei primi replicatori è particolarmente interessante perché sposta l’analisi del codice da un esercizio teorico a un contesto biologicamente più ampio, mostrando come la cooperazione e la competizione tra comunità di replicatori possa aver favorito l’universalità del codice. Tuttavia, anche questa proposta affronta solo una parte del problema più generale: l’origine del principio stesso di codifica e del sistema di traduzione. Qui emerge un circolo complesso: un sistema di traduzione efficace è necessario per produrre proteine funzionali, ma le proteine funzionali sono a loro volta essenziali per il sistema di traduzione.

Modellazioni più dettagliate, ad esempio a partire da predecessori più semplici come codici a doppietti, potrebbero offrire nuove prospettive sulle prime fasi dell’evoluzione del codice e aiutare a comprendere come sia emerso un sistema così complesso e robusto. Pur essendo ancora lontani da una spiegazione completa, questi studi evidenziano la profondità e la complessità del problema, che rimane una delle sfide più affascinanti della biologia evolutiva.

Chimicamo la chimica online perché tutto è chimica

Autore