On 01/24/2013 07:12 PM, Andrei Alexandrescu wrote:
On 1/24/13 11:32 AM, deadalnix wrote:
On Thursday, 24 January 2013 at 16:27:02 UTC, Andrei Alexandrescu wrote:
On 1/24/13 3:38 AM, Tommi wrote:
I've always secretly hated the ambiguity in D's syntax. E.g:

foo.bar

What could foo and bar be? D has many more answers than C++:

D C++
foo bar foo bar
Module/Namespace x x
Type x x
Variable x x x x
Method x
Free function x x

Nah, C++ has also namespace, inner classes and function-local
classes... lookup and resolution are actually more complicated than D.


No. C++ has no forward references, no UFCS, and no way to introduce new
symbols during semantic analysis.

C++ is an horrible beast, but on the identifier side, D is far worse.

Well if D is worse, should we give up on forward references, UFCS, or
mixins?

Andrei

Also, static if and 'is' expressions.
No, but we must specify and implement a sophisticated evaluation model of compile-time code evaluation, introspection, and generation constructs. DMD gets it wrong. Semantics of code, or whether it is accepted may depend on the order modules are passed on the command line.
I'll release what I have got so far later in spring.

Reply via email to