D and the world

Don Clugston dac at nospam.com.au
Mon Apr 23 23:40:48 PDT 2007


eao197 wrote:
> On Tue, 24 Apr 2007 03:25:48 +0400, Georg Wrede <georg at nospam.org> wrote:
> 
>> eao197 wrote:
>>> Don Clugston <dac at nospam.com.au> wrote:
>>>> The question is, how well does metaprogramming scale in each of 
>>>> these  languages?
>>>  I don't understand what you meen with 'scale'.
>>
>> Scale means: you can do the same thing if your program is small and if 
>> it is big.
> 
> There is another sence of 'scale': can a project with intensive use of 
> macros be manageable and maintainable if the project team has one, 
> two,..., ten,..., a hundred or more programmers.

I meant both senses -- a ten-line program is not going to have a hundred 
programmers working on it.
I don't think we know yet how well either D or Nermele will scale; but 
my intuition that D will fare better.

> AFAIK, Lisp proves that languages with high degree of metaprogramming 
> don't scale well in that sence. Because every developer tends to invent 
> his own, more powerful and elegant Lisp 
> [http://www.c2.com/cgi/wiki?SocialProblemsOfLisp ;)].

I think Nemerle will suffer from this. IMHO, being able to define 'for' 
in the language itself, has no benefit in practice; the set of useful 
control constructs is very well known. If it's useful to everyone, it 
should be rigidly controlled by the language; otherwise you get 
confusion and incompatibility.
I suspect that in D, metaprogramming will be used almost exclusively for 
domain-specific languages.



More information about the Digitalmars-d mailing list