Revised RFC on range design for D2

Sergey Gromov snake.scaly at gmail.com
Fri Sep 26 14:25:06 PDT 2008


In article <gbjihf$2803$1 at digitalmars.com>, 
frank at youknow.what.todo.interNETz says...
> 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.

Functions in D are first-class values.  It's awkward that a first-class 
value cannot be accessed by its identifier.


More information about the Digitalmars-d-announce mailing list