Questo interprete di codice JavaScript è stato implementato in Python utilizzando la versione 3.11.
In particolare sono state implementate le seguenti funzionalità:
-
- Number
- String
- Boolean
- Null
- Undefined
- Array
-
+(Addizione)-(Sottrazione)*(Moltiplicazione)/(Divisione)
-
==(Uguaglianza)!=(Disuguaglianza)<(Minore di)>(Maggiore di)<=(Minore o uguale a)>=(Maggiore o uguale a)
-
&&(AND)||(OR)!(NOT)
-
if...else
-
for
-
prompt()
-
console.log()
-
function
Per eseguire correttamente l'interprete, è necessario installare la libreria PLY.
pip install plyPer utilizzare l'interprete, è sufficiente eseguire il file principale test.py.
Lo script utilizzerà il file data/test.js come input.
python test.pySono forniti alcuni test per verificare la correttezza dell'interprete:
-
Test del lexer:
python -m unittest -v tests.lexer_test
-
Test del parser:
python -m unittest -v tests.parser_test
-
Test dell'interprete:
python -m unittest -v tests.interpreter_test
-
Errori dell'interprete:
python -m unittest -v tests.interpreter_errors