>>10
My Haskell mastering included the what, how and whys of Prelude (the standard library) including functors, applicative functors, arrows, categories, monads and monoids, its type system and extensions such as higher-kinds, n-rank types and existential types. I did it in my spare time, too, it all just made sense, and was so simple it isn't even funny to say it's hard.