Template Metaprogramming Made Easy (Huh?)

Jeremie Pelletier jeremiep at gmail.com
Thu Sep 10 19:11:03 PDT 2009


Justin Johansson Wrote:
> 5. Newcomers to the language will find it's type system concepts overwhelming - co-variance and contra-variance etc.  (don't know how D2 will address this better though). Yes these issues are important for OO libraries but feel there must be a more practical way out of the language complexity.  Personally I always kept away from the hairy and scary bits of C++; you don't need 'em in a practical language.
> 
> I've heard Scala's argument that all the complexity is hidden in the libraries so need to worry about it.  Unfortunately I don't believe her.  I learn a lot about a language by studying the library code and expect it to be as easy to read and understand as mainline code.

I couldn't agree more, I learned how to use D by studying its runtime library over the past few years. To me it is especially useful to study a runtime library when it is used to implement features of the language, so you get a clear grasp of what using these features imply. I lost count on how many neat tricks I learned reading Andrei's metaprogramming code.




More information about the Digitalmars-d mailing list