2 resultados para Transgenerational inheritance
em AMS Tesi di Laurea - Alm@DL - Università di Bologna
Resumo:
Transgenerational plasticity (TGP), a type of maternal effect, occurs when the environment experienced by one or both the parents prior to fertilization directly translates, without changing DNA sequences, into changes in offspring reaction norms. Evidence of such effects has been found in several traits throughout many phyla, and, although of great potential importance - especially in a time of rapid climate change - TGP in thermal growth physiology had never been demonstrated for vertebrates until the first experiment on thermal TGP in sheepshead minnows, who, given sufficient time, adaptively program their offspring for maximal egg viability and growth at the temperature experienced before fertilization. This study on sheepshead minnows from South Carolina and Connecticut investigates how population, parent temperature, and offspring temperature affect egg production, size, viability, larval survival and growth rates, whether these effects provide evidence of TGP, and whether and how they vary with length of exposure time (5, 12, 19, 26, 33 and 43 days) of the parents to the new experimental temperatures of either 26°C or 32°C. Several results are consistent with those obtained in the previous TGP study, which outline a sequence of events consisting of an initial adjustment period to the new temperatures, in which egg production decreases and no signs of TGP are present, followed by a shift to TGP (towards 26-33 days of exposure) in which parents start to produce more eggs which are better adapted to the new thermal environment. Other results present new information, such as signs of TGP in the parent temperature effect on egg sizes already around 20 days of exposure. The innovative idea of populations being able to adapt to rapidly shifting environments through non-genetic mechanisms such as TGP opens new possibilities of survival of species and will have important implications on ecology, physiology, and contemporary evolution.
Resumo:
La presente tesi è dedicata al riuso nel software. Eccettuata un'introduzione organica al tema, l'analisi è a livello dei meccanismi offerti dai linguaggi di programmazione e delle tecniche di sviluppo, con speciale attenzione rivolta al tema della concorrenza. Il primo capitolo fornisce un quadro generale nel quale il riuso del software è descritto, assieme alle ragioni che ne determinano l'importanza e ai punti cruciali relativi alla sua attuazione. Si individuano diversi livelli di riuso sulla base dell'astrazione e degli artefatti in gioco, e si sottolinea come i linguaggi contribuiscano alla riusabilità e alla realizzazione del riuso. In seguito, viene esplorato, con esempi di codice, il supporto al riuso da parte del paradigma ad oggetti, in termini di incapsulamento, ereditarietà, polimorfismo, composizione. La trattazione prosegue analizzando differenti feature – tipizzazione, interfacce, mixin, generics – offerte da vari linguaggi di programmazione, mostrando come esse intervengano sulla riusabilità dei componenti software. A chiudere il capitolo, qualche parola contestualizzata sull'inversione di controllo, la programmazione orientata agli aspetti, e il meccanismo della delega. Il secondo capitolo abbraccia il tema della concorrenza. Dopo aver introdotto l'argomento, vengono approfonditi alcuni significativi modelli di concorrenza: programmazione multi-threaded, task nel linguaggio Ada, SCOOP, modello ad Attori. Essi vengono descritti negli elementi fondamentali e ne vengono evidenziati gli aspetti cruciali in termini di contributo al riuso, con esempi di codice. Relativamente al modello ad Attori, viene presentata la sua implementazione in Scala/Akka come caso studio. Infine, viene esaminato il problema dell'inheritance anomaly, sulla base di esempi e delle tre classi principali di anomalia, e si analizza la suscettibilità del supporto di concorrenza di Scala/Akka a riscontrare tali problemi. Inoltre, in questo capitolo si nota come alcuni aspetti relativi al binomio riuso/concorrenza, tra cui il significato profondo dello stesso, non siano ancora stati adeguatamente affrontati dalla comunità informatica. Il terzo e ultimo capitolo esordisce con una panoramica dell'agent-oriented programming, prendendo il linguaggio simpAL come riferimento. In seguito, si prova ad estendere al caso degli agenti la nozione di riuso approfondita nei capitoli precedenti.