bearophile wrote:
Ary Borenszweig:
Why, of course, the C syntax for types:
int (*x[5])[3];
int (*x)(char);
int (*[] x)(char);
*Ugh*...
Try porting code that uses heavily n-dimensional tensors from C to D, and you
understand why supporting the C syntax for arrays (with inverted coordinates in
the definition) is a godsend :-)
That's a good point. But can't you do:
extern(C) {
...
}
for that? Well, some signatures might leek in the interface, but if they
are hard to understand (I could learn them, but if there's a simpler
notation, what for?) than it'll be harder to use for D users, and
they'll feel they are programming in a mix of C and D, not in D.
Bye,
bearophile