It goes against the simplified idea of evolution, in that, having a huge amount of off-spring die for no reason should generally be selected against since it’s wasteful.
But evolution isn’t a straight march to a finish line, it can only use what it has to work with and it’s entirely possible for a branch of it to get stuck in weird specific ways that aren’t helpful.
Because usually if you end up at the API reference in that situation it’s a code / project smell that other stuff is going wrong.
If I want to use a library to do something, you should be able to search for what you want to do + language / framework, find the library’s docs, follow the install instructions and then look through the highest level API / instructions and then just go from there.
If you find yourself confused at unhelpful API references that just means that they have badly written top level API docs, badly written intros, or quite probably just badly written APIs.