Revised RFC on range design for D2

0ffh frank at youknow.what.todo.interNETz
Fri Sep 26 14:00:31 PDT 2008


Andrei Alexandrescu wrote:
> Steven Schveighoffer wrote:
>> You are assuming that the C language decision to require parentheses 
>> for all functions was a design mistake.  I would argue that the design 
>> was on purpose and correctly served that purpose.  The purpose was to 
>> remove ambiguity when faced with understanding code without all the 
>> context.
> 
> I have stated my assumption and its basis. What is the basis of yours?

Yum. I think the problem is that when C was designed, K&R didn't consider
the use of classes with properties using getter and setter methods.
Therefore, it made sense to have the naked function name denote the
function pointer, and make braces following an identifier the mark of a
function call. I initially had some trouble accepting the explicit & in D
to get the function pointer myself.
I wouldn't go so far as to call that property of C a design mistake in
light of the actual intensions of K&R. But I definitely would defend
the choice of a language designer to change that feature in light of
more modern programming paradigms.

regards, frank


More information about the Digitalmars-d-announce mailing list