State of Doge 4

Where we are at

These posts aim to provide a little progress update on milestones or things completed.

Parser Work

The parser has been enhanced with support for explicit returns:

The amaze keyword acts as an explicit return, without closing the current block. Unlike wow value, which returns and closes the block.

This keyword will hopefully be used within anonymous functions to clear up ambiguity of whether we close the anonymous function }, or close both the anonymous function AND arguments to a function }).

So, using amaze:

rly foo
amaze 1
wow

Without amaze:

rly foo
wow 1

Both end up transforming to:

if ( foo() ) {
  return 1;
}

We’ve also removed the controlFlowParser so expression support within control flow statements now follows the same logic as the rest.

Things we’ve fixed

What we’ll focus on

Published: April 19 2019

blog comments powered by Disqus