On Friday, 28 July 2017 at 16:44:24 UTC, MysticZach wrote:
On Friday, 28 July 2017 at 11:04:23 UTC, Nick Treleaven wrote:
One option to solve the out contract ambiguity and aid parsing by tools is to require 'do' after out contract expressions. It allows the syntax `out(expression) do {...}`, even when expression is a single identifier that should be interpreted as a boolean expression.

One of the main goals of this DIP is to eliminate the need for `body/do` in the common case. It would significantly reduce this DIP's value if it couldn't do that, IMO.

This*1000.
Having a keyword delimit the end of an optional is both redundant and inconsistent with virtually every other rule in the D grammar (except old contract syntax). It's one of the (two) major reasons why I don't use the original contract syntax.

Reply via email to