I think your perception is heavily colored by your bad experience with C++. :) Seriously, you should try some metaprogramming in D sometime, and experience for yourself what *real* metaprogramming feels like. Forget about that sorry mess that is C++; try it out afresh in D and
see, you might even like it afterwards. ;)

I totally sympathize, 'cos I came from a strong C/C++ background, and
C++ templates are just... well, I can say they deserve their bad
reputation. But unfortunately, that made people associate
metaprogramming with C++'s poor implementation of it, when actually,
metaprogramming done right is actually very pleasant to use.


T

I don't doubt that there are forms of metaprogramming that are MUCH better than C++, actually C++ is among the worst. But even in dunno, a lisp with hygienic macros, metaprogramming should be used imho with caution, because it's so easy to introduce all kind of new constructs that look nifty and shorten the code, but one has to understand that each time you add one it's one more foreign syntax that is local to a context and people have to learn and recognize

Reply via email to