jakogut / tinyvm

TinyVM is a small, fast, lightweight virtual machine written in pure ANSI C.
MIT License
3.2k stars 296 forks source link

Comments. #34

Open technetos opened 6 years ago

technetos commented 6 years ago

Please comment this code. It looks like a really excellent project for learning about virtual machines but people wont use it that way if its a pain to figure out whats going on.

If not comments then please provide documentation.

vi commented 6 years ago

Also README and/or repository description should state what type of a virtual machine is it. Is like hardware-level one like Qemu/virtualbox or language-level like JVM?

SuperFola commented 6 years ago

Why not adding some benchmarks also, to know about the performances of the VM on a few algorithms such as the fibbonacci sequence or the factorial ?

stefanos82 commented 6 years ago

I agree with @vi. This project, even though very promising, it's not clear what its actual nature is.

I am interested in VM for programming languages to be honest with you, not for VM OS hosting emulators.

technetos commented 6 years ago

Id be totally willing to contribute to the docs if you set some up :smiley:

SuperFola commented 6 years ago

@stefanos82 by reading the code i think this is for a programming language

stefanos82 commented 6 years ago

Nice! Thank you @SuperFola for letting me know.

jakogut commented 6 years ago

@technetos Some years ago, I started this project because I wanted to know more about how virtual machines work, so I wrote one. The syntax and function of the VM is described in the SYNTAX document.

@SuperFola There are example programs in programs/tinyvm, including Project Euler solutions, and a few comparable programs in C and x86 assembly.

I've been working on an off on a C library replacement that can host this project as well, which is linked as a submodule from mlibc.

As far as further documentation goes, PRs are welcome.