digitalmars.D - Removing the "int foo[];" syntax
- Brian Schott (13/13) Apr 30 2013 It complicates the grammar and doesn't fit with D's style of
- Jacob Carlborg (4/16) May 01 2013 I would say no if it was removed.
- bearophile (9/12) May 02 2013 I suggested something more moderate: to just disallow mixing C
- Dicebot (4/5) May 02 2013 I remember being mentioned by someone that it is more about
- deadalnix (2/7) May 02 2013 Array are value type in D so I'm not sure this really helps.
- Dicebot (4/5) May 02 2013 I remember being mentioned by someone that it is more about
- Jonathan M Davis (7/22) May 04 2013 I think that deprecating the C-style syntax has been considered in the p...
It complicates the grammar and doesn't fit with D's style of declaraing variables. (type then identifier) I realize that it was left in to make C programmers happy, but it doesn't even work like it does in C: int a[10]; int b[10], b[10]; int[10] c, d; int e[string]; int f[string], g[string]; test.d(2): Error: multiple declarations must have the same type, not int[10] and int[10] test.d(5): Error: multiple declarations must have the same type, not int[string] and int[string]
Apr 30 2013
On 2013-05-01 00:36, Brian Schott wrote:It complicates the grammar and doesn't fit with D's style of declaraing variables. (type then identifier) I realize that it was left in to make C programmers happy, but it doesn't even work like it does in C: int a[10]; int b[10], b[10]; int[10] c, d; int e[string]; int f[string], g[string]; test.d(2): Error: multiple declarations must have the same type, not int[10] and int[10] test.d(5): Error: multiple declarations must have the same type, not int[string] and int[string]I would say no if it was removed. -- /Jacob Carlborg
May 01 2013
Brian Schott:It complicates the grammar and doesn't fit with D's style of declaraing variables. (type then identifier)I suggested something more moderate: to just disallow mixing C and D syntax in the same declaration: http://d.puremagic.com/issues/show_bug.cgi?id=5807I realize that it was left in to make C programmers happy,For that I suggested a -cstyle switch, to be used only temporarily to port C code to D: http://d.puremagic.com/issues/show_bug.cgi?id=4580 Bye, bearophile
May 02 2013
On Tuesday, 30 April 2013 at 22:36:44 UTC, Brian Schott wrote:I realize that it was left in to make C programmers happyI remember being mentioned by someone that it is more about simplifying porting of C headers to D than actually making C programmers happy.
May 02 2013
On Thursday, 2 May 2013 at 08:18:48 UTC, Dicebot wrote:On Tuesday, 30 April 2013 at 22:36:44 UTC, Brian Schott wrote:Array are value type in D so I'm not sure this really helps.I realize that it was left in to make C programmers happyI remember being mentioned by someone that it is more about simplifying porting of C headers to D than actually making C programmers happy.
May 02 2013
On Tuesday, 30 April 2013 at 22:36:44 UTC, Brian Schott wrote:I realize that it was left in to make C programmers happyI remember being mentioned by someone that it is more about simplifying porting of C headers to D than actually making C programmers happy.
May 02 2013
On Wednesday, May 01, 2013 00:36:43 Brian Schott wrote:It complicates the grammar and doesn't fit with D's style of declaraing variables. (type then identifier) I realize that it was left in to make C programmers happy, but it doesn't even work like it does in C: int a[10]; int b[10], b[10]; int[10] c, d; int e[string]; int f[string], g[string]; test.d(2): Error: multiple declarations must have the same type, not int[10] and int[10] test.d(5): Error: multiple declarations must have the same type, not int[string] and int[string]I think that deprecating the C-style syntax has been considered in the past, but I don't know what Andrei or Walter's stance on it is. I don't think that it adds much value though beyond making it slightly easier to port code from C to D, and I'm all for removing it. Most D programmers are probably using the D syntax anyway. - Jonathan M Davis
May 04 2013