Jasmine Snake, another JavaScript interpreter written on Python 3
 
 
 
Go to file
Yury Kurlykov ace635c999
Implement EmptyStatement node generation
I don't even know what does the "procrastination" word mean. `EmptyStatement` is the most useful node ever.
2020-04-28 15:52:35 +10:00
grammars Comment out throw keyword 2020-04-27 22:57:54 +10:00
jasminesnake Implement EmptyStatement node generation 2020-04-28 15:52:35 +10:00
.gitignore Initial commit 2020-04-15 16:15:56 +10:00
LICENSE Initial commit 2020-04-15 16:15:56 +10:00
README.md Add ESTree link in README.md 2020-04-27 23:13:42 +10:00
requirements-dev.txt Initial commit 2020-04-15 16:15:56 +10:00
requirements.txt Add AST to ASCII converter 2020-04-28 03:30:37 +10:00
setup.py Initial commit 2020-04-15 16:15:56 +10:00
tox.ini Initial commit 2020-04-15 16:15:56 +10:00

README.md

Jasmine Snake

Another JavaScript interpreter written on Python 3.

Code style: black SemVer: 2.0.0

Requirements

  • ANTLR 4
  • Colorama

To run tests:

  • pylint
  • Tox

You can get ANTLR here, other dependencies could be installed with pip:

pip install -r requirements.txt # Use requirements-dev.txt if you want to run tests

Running

antlr4 -Xexact-output-dir -o jasminesnake/lex -package lex -Dlanguage=Python3 -listener grammars/*.g4
python -m jasminesnake

Credits

ESTree specification: https://github.com/estree/estree/

JavaScript grammar source: https://github.com/antlr/grammars-v4/tree/master/javascript/javascript

The snake: https://textart.io/art/lnl9xe1OsKIow7xPGeWDrAeF/snake