q3vm
Wren
q3vm | Wren | |
---|---|---|
7 | 44 | |
799 | 6,748 | |
- | 0.2% | |
3.6 | 0.0 | |
2 months ago | 9 months ago | |
C | Wren | |
GNU General Public License v3.0 only | MIT License |
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.
q3vm
-
QCVM - QuakeC Virtual Machine written in C89
I am a big fan of Q3VM and have even used it in a couple of projects.
-
QCVM: Bite-sized QuakeC VM written in C
But it returned in Quake 3 the n?
https://github.com/jnz/q3vm
- Buying a permissive license for a Copyleft project
-
SHOULD A BEGINNER ATTEMPT A VIRTUAL MACHINE PROJECT?
You might want to check out Q3VM (A stripped down virtual machine from Quake III).
- Is it possible to dynamically execute C code from C++?
- Is there a Plan9 port for TCC?
-
Where can I find the source code of C language itself?
Finally, the compiler itself is the easy part, emitting x86/x86_64 instructions is where it starts to get very complex. For this reason, I really recommend Q3VM (https://github.com/jnz/q3vm). It is a single file VM (originally written for Quake III) which interprets fantasy but greatly simplified instructions from a slightly modified LCC compiler (also part of the project). This might be very useful to learn from.
Wren
- Tinyssh
-
Show HN: Wren – simple yet super extensible task management system
For a moment I thought it was about wren programming language... [1]
[1] https://wren.io/
-
Attempting each AOC in a language starting with each letter of the alphabet
For "W" you could use Wren.
-
loxcraft: a compiler, language server, and online playground for the Lox programming language
Bob Nystrom also has a blog, and his articles are really well written (see his post on Pratt parsers / garbage collectors). I'd also recommend going through the source code for Wren, it shares a lot of code with Lox. Despite the deceptive simplicity of the implementation, it (like Lox) is incredibly fast - it's a great way to learn how to build production grade compilers in general.
-
Bevy 0.10: data oriented game engine built in Rust
Only kind of unrelated ... Every time I see the Bevy logo I'm reminded of Wren language https://wren.io/
-
Are they all like this?
If you want a pure C99 (sadly not C89 like Lua) immensely fast embeddable language pure interpreter, wren is a great language with excellent features like overload by arity. There is a huge maturity gap between the languages tho.
-
Most important language features not touched in the book "Crafting Interpreters"?
Check out the source to Wren: https://wren.io. It’s from the author of Crafting Interpreters and builds directly on what’s discussed in the book (essentially a more complete Lox) and adds several additional types, including an array.
- Why does Rust have parameters on impl?
- Liberating the Smalltalk lurking in C and Unix
-
What are some good C programs I can read through?
The best C code I have ever read is that of wren.
What are some alternatives?
wasm-micro-runtime - WebAssembly Micro Runtime (WAMR)
Lua - Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.
pocketlang - A lightweight, fast embeddable scripting language.
LuaJIT - Mirror of the LuaJIT git repository
lcc - The lcc retargetable ANSI C compiler
ChaiScript - Embedded Scripting Language Designed for C++
Senegal - Senegal programming language
V8 - The official mirror of the V8 Git repository
QCVM - Bite-sized QuakeC VM written in C
Duktape - Duktape - embeddable Javascript engine with a focus on portability and compact footprint
janet - A dynamic language and bytecode vm
ChakraCore - ChakraCore is an open source Javascript engine with a C API. [Moved to: https://github.com/chakra-core/ChakraCore]