(The (parentheses (update)))
Today we are pleased to announce DreamBerd 3.
With it, we introduce a brand new feature...
Parentheses
Parentheses in DreamBerd do nothing. They get replaced with whitespace.
The following lines of code all do the same thing.
add(3, 2)!
add 3, 2!
(add (3, 2))!
add)3, 2(!
Lisp lovers will love this feature. Use as many parentheses as you want!
(add (3, (add (5, 6))))!
Lisp haters will also love it.
(add (3, (add (5, 6)!
Bounties £££
There's a growing number of people attempting to build a DreamBerd compiler. We imagine that this update will decrease that number.
If you really want to make a DreamBerd compiler, we highly recommend that you target a smaller subset of the language. Please consider the following features optional:
- Multiplayer
const const const
server
Feel free to use a local store instead. - AI
If your code has a compile-time error... but could potentially be 'un-errored' by adding more code... it's supposed to email me ([email protected]). But this kind of 'partial' parsing can be tricky. So feel free to ignore this, or only do it in certain cases. - Implicit strings
If your code has a compile-time error... but could potentially be 'un-errored' by interpreting a certain part of it as a string... it's supposed to interpret the shortest possible amount as code as such. Again, this kind of 'possibility parsing' can be tricky. So feel free to ignore this, or only do it in a small number of cases. - Optional parentheses
As of today, all parentheses are optional. Their use can mostly be replaced by significant whitespace. For function calling, your parser now needs to figure out the signature of every function, so that it can figure out which arguments are being passed to it. This is quite hard! Feel free to require parentheses. - ECMAScript
Unless otherwise stated, DreamBerd is the same as ECMAScript. But that can take a lot of work to parse and compile, especially when combined with the other tricky aspects. So I highly recommend just sticking to the functions and features that appear in the DreamBerd documentation.
Even when ignoring these, making a DreamBerd compiler can be hard!
Therefore, the DreamBerd Foundation will pay the following rewards for these accomplishments:
- £99 to a charity* of your choice - if you're the first person to make a DreamBerd compiler (with the above exceptions)
- £99 to a charity* of your choice - if you're the first person to make a DreamBerd compiler (with NO exceptions)
Or do both at once to win £198 outright!
Many thanks,
Lu Wilson, CEO of the DreamBerd Foundation, please pay me money so I can afford these bounties.
*no techbro charities