js/README.md

44 lines
1.2 KiB
Markdown
Raw Permalink Normal View History

2020-04-15 16:15:56 +10:00
# Jasmine Snake
Another JavaScript interpreter written on Python 3.
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![SemVer: 2.0.0](https://img.shields.io/badge/SemVer-2.0.0-F8DE7E?labelColor=23261D)](https://semver.org/spec/v2.0.0.html)
2020-06-28 18:06:34 +10:00
![Testing status](https://github.com/t1meshift/js/workflows/Testing/badge.svg)
2020-04-15 16:15:56 +10:00
## Requirements
- ANTLR 4
- Colorama
To run tests:
2020-06-26 16:24:06 +10:00
- pytest
2020-04-15 16:15:56 +10:00
You can get ANTLR [here](https://www.antlr.org/), other dependencies could be installed with pip:
```bash
pip install -r requirements.txt # Use requirements-dev.txt if you want to run tests
```
## Running
```bash
antlr4 -Xexact-output-dir -o jasminesnake/lex -package lex -Dlanguage=Python3 -listener grammars/*.g4
2020-04-15 16:15:56 +10:00
python -m jasminesnake
```
2020-06-28 17:24:38 +10:00
# Testing
```bash
# Running with -s is optional
python -m pytest -s
```
2020-04-15 16:15:56 +10:00
## Credits
2020-04-27 23:13:42 +10:00
ESTree specification:
[https://github.com/estree/estree/](https://github.com/estree/estree/)
2020-04-15 16:15:56 +10:00
JavaScript grammar source:
[https://github.com/antlr/grammars-v4/tree/master/javascript/javascript](https://github.com/antlr/grammars-v4/tree/master/javascript/javascript)
2020-04-15 16:45:22 +10:00
The snake:
[https://textart.io/art/lnl9xe1OsKIow7xPGeWDrAeF/snake](https://textart.io/art/lnl9xe1OsKIow7xPGeWDrAeF/snake)