I would agree with you if we were talking about more complicated features like monad transformers or monoids or something like that, but list operations like this are very high-leverage, not that complicated under the hood, and becoming part of the standard required knowledge for most programming ideologies.  (Eg. Java has recently embraced them in Java 8, Python has them, etc)<p>Your logic about an abstraction being &quot;legitimately obfuscated&quot; &quot;until you grok&quot; it could apply to nearly every advancement in programming, and needs to be qualified with some notion of why you&#x27;ve decided to apply it to the layer of abstraction that you have.