DIP 1009--Improve Contract Usability--Preliminary Review Round 1

Moritz Maxeiner via Digitalmars-d digitalmars-d at puremagic.com
Fri Jun 23 11:24:04 PDT 2017


On Friday, 23 June 2017 at 17:31:15 UTC, MysticZach wrote:
> [...]
>
> Yeah, my take is that the grammar for `assert`s applies to the 
> new syntax as well. If the grammar for asserts is this:
>
> AssertExpression:
>   assert ( AssertParameters )
>
> ... then the grammar for the new syntax is:
>
> InExpression:
>   in ( AssertParameters )
>
> OutExpression:
>   out ( ; AssertParameters )
>   out ( Identifier ; AssertParameters )

I'm all for this syntax, just one spec/implementation question:
If the new contract syntax (formally) shares grammar rules with 
assert, won't that cause more work for people who want to update 
the assert syntax later (since they will have to take contracts 
into account)?


More information about the Digitalmars-d mailing list