On Saturday, 3 June 2017 at 20:06:05 UTC, Walter Bright wrote:
On 6/3/2017 12:28 AM, Petar Kirov [ZombineDev] wrote:
Personally, making contracts less verbose and more powerful is
much higher on my list
We did discuss bouncing the DIP back with a request to revamp
it as a complete overhaul of the contract syntax, but decided
that this DIP was about resolving a simple and immediate
problem, and it shouldn't be held up on that basis.
Yes, keeping scope of DIP1003 was the right call. In order to for
the process to be effective, we need to have good turnaround time.
That said, I'm glad to hear that the idea of an overhaul the
contract syntax is on your radar. Related to that, is the need to
formally specify what exactly is the compiler allowed to assume
via asserts. Currently the answer is offensive programming [0]
which doesn't play well with domains that require defensive
programming. But that's a topic for another day and another DIP.
[0]:
https://en.wikipedia.org/wiki/Defensive_programming#Offensive_programming