How to make a fast dynamic language interpreter
65 points by pizlonator 3 hours ago | 4 comments
grg0 2 hours ago
Interesting, thanks for sharing. It is a topic I'd like to explore in detail at some point.
replyI also like how, according to Github, the repo is 99.7% HTML and 0.3% C++. A testament to the interpreter's size, I guess?
pizlonator 2 hours ago
I committed the statically generated site, which is wastefully large because how I generate the code browsers
replyBut yeah the interpreter is very small
It was materially useful in this project.
- Caught multiple memory safety issues in a nice deterministic way, so designing the object model was easier than it would have been otherwise.
- C++ with accurate GC is a really great programming model. I feel like it speeds me up by 1.5x relative to normal C++, and maybe like 1.2x relative to other GC’d languages (because C++’s APIs are so rich and the lambdas/templates and class system is so mature).
But I’m biased in multiple ways
- I made Fil-C++
- I’ve been programming in C++ for like 35ish years now