jstar
small-vm
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.
jstar
-
-❄️- 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.
small-vm
-
Project and blog criticism
The accompanying virtual machine : https://github.com/Nathan-Furnal/small-vm
What are some alternatives?
wax - A tiny programming language that transpiles to C, C++, Java, TypeScript, Python, C#, Swift, Lua and WebAssembly 🚀
RVVM - The RISC-V Virtual Machine
umka-lang - Umka: a statically typed embeddable scripting language
libforth - libforth: A small Forth interpreter that can be used as a library written in c99
interpreter - A simple intepreter written in java.
lc3-in-lc3 - A metacircular LC3 implementation
lqsd - LiQuid Screen Dim - Dim your screen smoothly - Mirror of: https://git.korhonen.cc/FunctionalHacker/lqsd
Kwork - Cross-platform bundle for development on low memory machines
gravity - Gravity Programming Language
Metals - Scala language server with rich IDE features 🚀
frece - Maintain a database sorted by frecency (frequency + recency)