A JVM implemented in go-lang
This project is a practice of Write your own JVM by Zhang XiuHong , the project repo is here.
Most code of this project comes from that repo.
This project complete a subset of Java virtual machine, including command line interpreter, class reader, class inflator, runtime data area, instruction set and instruction interpreter, object and class stuff, function call and return, array and string support, exception handling, and so on.
JVM is quite a complicate thing, this JVM is still having a poor performance and it is not robust enough. It may crash when executing certain native methods or something. Many features not be handled yet, and many of the code is still not elegant enough.
Practice is a good way to learn something.
Golang has very friendly documentations, thanks for there docs, I have some understanding of golang.
If you are a newbie of golang, a handful ide must be very helpful. Gogland by JetBrains is worth a try, and it's under EAP now(9/19/2017), so it's free.
You're welcome to PR or submit issues😀