interpreter
A simple intepreter written in java. (by bamless)
jstar
A lightweight embeddable scripting language (by bamless)
interpreter | jstar | |
---|---|---|
2 | 4 | |
29 | 105 | |
- | - | |
0.0 | 7.5 | |
over 3 years ago | 4 days ago | |
Java | C | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
interpreter
Posts with mentions or reviews of interpreter.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-04-30.
-
Implementing a Call Stack
Here you go: https://github.com/bamless/interpreter. Look at the interpret/memenv package. The implementation really couldn't be more simple: it is just a queue of frame objects. pushStackFrame is called when calling a function, and popStackFrame when hitting a return or a function end. The MemoryEnvironment is instantiated by the interpreter visitor so all parts of it have access to the memory. The variables themselves are kept in an hashmap inside each Frame. Not the most efficient way but fast enough for a tree walking interpreter
-
Is there a FULL guide about creating a statically typed bytecode interpreter in C/C++?
https://github.com/bamless/interpreter/tree/master.
jstar
Posts with mentions or reviews of jstar.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-12-04.
-
-❄️- 2023 Day 1 Solutions -❄️-
[LAUNGUAGE: J*]
-
What is your favorite programming language?
My language, obviously.
- Bamless/jstar: A lightweight embeddable scripting language
-
Implementing a Call Stack
Also, since you are willing to look at non-treewalk interpreters, you can take a look at this: https://github.com/bamless/jstar/blob/master/src/vm.h In this I use two parallel arrays, one for frames and one for variables. The frame contains the instruction pointer of the function and the address of the start of the activation record. Variables are stored packed inside the stack array and are accessed through indexing.
What are some alternatives?
When comparing interpreter and jstar you can also consider the following projects:
jmurmel - A standalone or embeddable JVM based interpreter/ compiler for Murmel, a single-namespace Lisp dialect inspired by Common Lisp
wax - A tiny programming language that transpiles to C, C++, Java, TypeScript, Python, C#, Swift, Lua and WebAssembly 🚀