- First, run
git clone https://github.com/Battledash-2/Neon
to clone the source code - Second, create a Javascript file named
run.js
- In the file, require the lexer, parser and interpreter in
/src
. - To initiate, use
new Interpreter().eval(new Parser(new Lexer('ANY CODE HERE')));
- Clone the source code (like shown above)
- Run
node . <MODE: [-f: File, -c: Console, Default: -c]> <MODE==FILE?FNAME: [-t: Show Exec Time]>
- Proxies (like the Javascript
new Proxy(<OBJECT>, <PROXY>))
and the Luasetmetatable(<OBJECT>, <PROXY>)
) - ObjectPrototype.defineProperty (
<OBJECT>.defineProperty(<NAME>, <FAKE-ISH PROXY: VALUE>)
)
- OOP support (still missing
extends
keyword) (Classes) - (...initial) (objects, array, negated sets, if statements, for/while, variables, scopes)
- Number interpreter with a lexer and parser (
./examples/NumberInterpreter
) - Mini-language / small lexer & parser-less language (
./examples/MiniLang
) - Lambda functions (
./examples/LambdaFunctions
)