Bashforth
A Forth interpreter, entirely written as bash script. But by now is yoda (https://github.com/Bushmills/yoda) the better bashforth. (by Bushmills)
minivm
A VM That is Dynamic and Fast (by FastVM)
Our great sponsors
Bashforth | minivm | |
---|---|---|
4 | 13 | |
61 | 1,552 | |
- | 0.3% | |
0.0 | 8.9 | |
about 2 years ago | 8 days ago | |
Shell | C | |
GNU General Public License v3.0 or later | 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.
Bashforth
Posts with mentions or reviews of Bashforth.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-01-08.
-
Hacker News top posts: Jan 8, 2022
Bashforth: A Forth interpreter, written as bash script\ (0 comments)
- Bashforth: A Forth interpreter, written as bash script
- A Forth interpreter, entirely written as bash script
- A Forth interpreter, written as bash script
minivm
Posts with mentions or reviews of minivm.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-09.
-
Show HN: I wrote a WebAssembly Interpreter and Toolkit in C
> I developed a unique way to write interpreters based on threaded code jumps and basic block versioning when I made MiniVM (https://github.com/FastVM/minivm). It was both larger and more dynamic than WebAssembly.
I'd be very interested to read more about this. It looks like you are using "one big function" with computed goto (https://github.com/FastVM/Web49/blob/main/src/interp/interp....). My experience working on this problem led me to the same conclusion as Mike Pall, which is that compilers do not do well with this pattern (particularly when it comes to register allocation): http://lua-users.org/lists/lua-l/2011-02/msg00742.html
I'm curious how you worked around the problem of poor register allocation in the compiler. I've come to the conclusion that tail calls are the best solution to this problem: https://blog.reverberate.org/2021/04/21/musttail-efficient-i...
-
Ask HN: Recommendation for general purpose JIT compiler
Maybe take a look at MiniVM[0]? It was on HN a couple months ago[1].
- MiniVM: “Minivm Port to Dlang”
- MiniVM: A zero-dependency cross-language runtime on par with LuaJIT and C
-
Hacker News top posts: Jan 8, 2022
MiniVM: A zero-dependency cross-language runtime on par with LuaJIT and C\ (19 comments)
- MiniVM: A minimal cross-language runtime that beats C/luajit on some benchmarks