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.
tinyvm
Posts with mentions or reviews of tinyvm.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-04-01.
-
Trying to write a stack-based VM in Rust, have not found useful tutorial.
I'm actually writing a tutorial right now, but in the meantime you can checkout this repo of mine: https://github.com/mkhan45/tinyvm. It's a ~250 LOC stack vm with another 200 lines of comments
- A tiny stack based VM in Rust
-
Dijkstra's "Why numbering should start at zero"
The last Rust I looked at was this file, ; true there are few if any explicit array indexing, but the code is gobbledygook, with lines this:
-
Looking for feedback on a toy bytecode vm
The repo is here: https://github.com/mkhan45/tinyvm. It's written in Rust and only ~275 mostly repetetive LOC so I think it's pretty understandable even without comments, but I'll add some explanation if anyone asks.
langs
Posts with mentions or reviews of langs.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-12-09.
- How does the compiler know that an already typedefed ident is meant to be a new declarator?
- Compiler Case Study
- Making Simple Concepts Hard
- What makes a language easy for writing a parser?
-
Resources to understand mojo and compilers
The code is here. Note that the input filename is hardcoded in the source code.
- Automatic import of C headers —how to deal with macros?
- How does preprocessing work in a one pass compiler?
- 'Table Data' and 'X-Macros'
- Register Window in a Stack VM Interpreter
- My New IL
What are some alternatives?
When comparing tinyvm and langs you can also consider the following projects:
interpret
prolog-to-minizinc - A Prolog-to-MiniZinc translator
slang-v2 - Simple scripting language interpreter
rakudo - 🦋 Rakudo – Raku on MoarVM, JVM, and JS
evolution_original - rust evolving pictures
vox - Vox language compiler. AOT / JIT / Linker. Zero dependencies
Lobsters - Computing-focused community centered around link aggregation and discussion
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
TablaM - The practical relational programing language for data-oriented applications
wabt - The WebAssembly Binary Toolkit
factor - Factor programming language
c2rust - Migrate C code to Rust