3 ms·
> Few languages allow you to just keep diving in deeper and deeper as you desire, while still letting you get to work right away without being a master. I find
by junke 10y ago
> Few languages allow you to just keep diving in deeper and deeper as you desire, while still letting you get to work right away without being a master.
I find it to be the case with most languages.
> Even template metaprogramming alone is gigantic area of ongoing research -- the stuff you can do with it is mind-bending and unavailable in nearly all other languages.
Your are being a bit hyperbolic. Meta-programming is not necessarily a hard thing to do, but in some languages, like C++ it was made impractical at first. Then, templates introduced some metaprogramming aspects with another layer of Turing-completeness.
I can appreciate the usefulness of C++ and how templates contribute to it, though.
> Templates are, after all, one of very very few wholly functional, immutable languages out there.
XSLT too ;-)
> And template instantiation is the underlying force behind many of the modern features like lambdas that allow you to access that power without actually knowing templates well.
Lambdas roamed the earth long before templates.
> ... and if you can accept that you will never know the entire language and can just use those bits that make things easier, it is possible to have a healthy relationship with the language.
Agree.
- hellofunk 10y ago> Lambdas roamed the earth long before templates. I'm talking about C++ lambdas, in particular, which are templates under the hood.