Template Metaprogramming Made Easy (Huh?)

language_fan foo at bar.com.invalid
Tue Sep 15 08:34:38 PDT 2009


Tue, 15 Sep 2009 16:41:25 +0200, Lutger thusly wrote:

> language_fan wrote:
> 
>> Tue, 15 Sep 2009 00:25:46 +0200, Lutger thusly wrote:
>> 
>>> That's a fancy way of saying that anyone who has not studied CS is a
>>> moron and therefore cannot understand what is good about languages,
>>> thus they lose any argument automatically. Am I right?
>> 
>> I just recommend learning basic concepts until terms like generational
>> garbage collection, closure, register allocation, immutability, loop
>> fusion, term rewriting, regular languages, type constructor, virtual
>> constructor, and covariance do not scare you anymore.
>> 
>> 
> Right right, I don't disagree with that. It was more the 'ruby/python
> programmers make apps no-one uses using amateur tools | c-family users
> worship FOO and the rest are academics that use pure functional
> languages' part that tripped me up. You know, the majority of software
> isn't built by academics, NASA uses C mostly, etc. A little nuance
> wouldn't hurt here.

Ok. I did not even mean you should write all your programs in LISP or 
Prolog. The point is, once you know how to use various kinds of 
techniques, you can use whatever language you want. The problem is, most 
programmers only know 1-3 languages, and those languages are typically 
very similar to each other (e.g. Java, C, and C++). Some problems are 
inherently functional or easily expressed with regular expressions or as 
a logical constraint satisfaction problem. It does not make sense to 
write your own priority queue for each new task.



More information about the Digitalmars-d mailing list