On 2010-05-03 15:33:53 -0400, Michel Fortin <[email protected]> said:

On 2010-05-03 05:53:34 -0400, Jacob Carlborg <[email protected]> said:

foo((int i) { writeln(i); });

I agree that the semicolon looks out of place for one-line function bodies.

The semicolon could be made optional for the last statement in a block. Just have it be a statement separator instead of a terminator. That'd be consistent with commas in enums, array literals, and function arguments.

foo((int i) { writeln(i) });

It could even be taken a little further: make the last statement the implicit return value of a function:

        { a < b } same as { return a < b; }

Adding back the semicolon would bring back the current behaviour (it's just like adding an empty statement):

        { a < b; } same as { a < b; return; }

It'd be nice for functional style predicates.

--
Michel Fortin
[email protected]
http://michelf.com/

Reply via email to