Since I seem to oscillate between looking at TEM images and doing confocal microscopy these days, allow me to chime in here.
Apart from resolution, there are two factors that make EM useful in a way that light microscopy techniques never will be. Namely, that they allow you to look at an entire specimen at once and at the same time see things you weren't looking for. The pretty color images confocal images are made by tagging particular structures in the cell with fluorescent molecules. This is done either with fluorochrome labeled antibodies or by expressing proteins fused to fluorescent proteins. Therefore, you have to know what you're looking for in order to make a picture of it. Furthermore due to the overlap in the emission spectra of the fluorescent tracers, you can generally only look at about 3 things simultaneously. So if you want to see all the structures in a cell at once or you're looking for something, like a virus, but don't know which one or don't have an antibody for it, EM is still the tool of choice.
The whole list is in one contiguous block of memory and iterating it means incrementing a pointer sizeof(int) bytes each iteration. Iterating a linked list on the other hand, means jumping around in memory following pointers for each iteration. Which is much slower and induces an enormous cache penalty.
This is basic stuff and just shows how futile using low-level languages is when people don't even understand why linked lists are slower than array lists...
It's a dark day on Slashdot when this is modded informative.
A linked list, like you say, is a bunch of objects in heap space containing pointers to one another. That's the whole bloody point. You give up random access and in return get O(1) head and tail insertion. A C# "list" as you describe it is a C++ std::vector or std::dequeue. Call vector::push_back() too many times and you get to reallocate and copy the whole pointer array. In return you get (maybe) faster transversal and random access capability. Comparing a C# List as you've described it to a C++ std::list is an apples to oranges comparison.
Note also, that C++ gives you both the apple and the orange depending on what you feel like eating.
This is correct. Most African nonhuman primate species have their own particular immunodeficiency virus. We call them SIVs, simian immunodeficiency viruses. Infections in these primate species are essentially asymptomatic. Phylogenetically, HIVs are descendants of a few SIVs implying multiple transmission events from nonhuman primates to humans. Humans are a non-adapted host for the virus and end up developing immunodeficiency. The same is true for Asian monkey species who have not co-evolved with SIV. Thus SIV-infected Asian monkeys are used as the model for HIV infection in humans.
Other viruses display similar behavior. The macaque equivalent to herpes simplex, for instance, causes fatal encephalitis in people but is typically completely asymptomatic in the monkeys.
Fortunately, we know from accidental infection of laboratory staff with SIV that the virus usually fails to replicate in people. In rare instances, the infected person becomes viremic but never developed immunodeficiency. Thus, the finding of an HIV of gorilla origin in a human is interesting but doesn't herald the arrival of some new super-virus pandemic.
The interesting thing about this finding is that the feathers in this dinosaur were associated with the ulna. In birds, most feather follicles are embedded in the skin. Only the flight feathers are attached to a bony structure. This is presumably because in birds, feathers form a major structural component of the wing itself. They need stiff shafts and a firm anchor to the skeletal system so as to maintain the form of the wing during flapping flight. The shape of a bat wing is maintained by a bat's modified finger bones and pterosaurs had some spine structures to support the wing membrane.
So why did this presumably non-flighted dinosaur require feathers with secure attachment to the bones of its forelimb?