Here’s a nice passage from the preface to The Journey of Man by Spencer Wells.
Our DNA carries, hidden in its string of four simple letters, a historical document stretching back to the origin of life and the first self-replicating molecules, through our amoebic ancestors, and down to the present day.
Here we have some nice examples of figurative language in what amounts to a scientific document. It’s in the preface, so the figures are appropriate, I think. Let’s take them out, and you’ll see what I mean.
Human DNA contains, in its string of billions of copies of four nucleotides, information that describes life from the time of its origin until now.
Not nearly as interesting, is it?
The original sentence contains examples of personification (ancestors), pleonasm (“present day” instead of “now”), metonymy (“letters” instead of “nucleotides”), synecdoche (“four” instead of “string of billions of copies of four”), hysteron-proteron (putting “self-replicating molecules” ahead of “the origin of life”), metaphor (“document” instead of “information”), and anabasis (adding “amoebic ancestors” between “molecules” and “present day.”) There; I think I got them all. You might include catachresis, or incongruity, since we generally consider the movement from self-replicating chemicals to humans as moving upward, but he describes the passage of time as downward (“down to the present…”). He also starts describing time as going back to the origin, and ends by coming down to the present. Adding physical directions to the passage of time is a figure of speech, too, but whatcha gonna do?
personification: attributing human characteristics to something
metonymy: substituting one noun for another
synecdoche: saying a part of something, but meaning the whole thing
hysteron-proteron: putting the second thing first
metaphor: giving something another name
anabasis: going slowly upward
catachresis: being self-contradictory
Your reaction is probably surprise. To which I say, figures of speech are pretty common, aren’t they?
If you prefer, here’s a simpler approach: