Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sharktheone/yeeeeem
A toy JVM
https://github.com/sharktheone/yeeeeem
java jvm jvm-bytecode vm zig ziglang
Last synced: 10 days ago
JSON representation
A toy JVM
- Host: GitHub
- URL: https://github.com/sharktheone/yeeeeem
- Owner: Sharktheone
- Created: 2024-08-13T17:49:24.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-09-10T22:23:21.000Z (5 months ago)
- Last Synced: 2024-12-06T13:25:23.148Z (2 months ago)
- Topics: java, jvm, jvm-bytecode, vm, zig, ziglang
- Language: Zig
- Homepage:
- Size: 99.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# yeeeeem
A very simple JVM written in zig, supporting a subset of it's instructions and capabilities.
## Getting started
First you need to install zig. If you have it installed, you can run the following command to build yeeeeem:```console
zig build
```then you need to have some sort of java class. For a simple hello world, create a file `main.java`
```java
class Main {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
```then compile it to a class file via
```console
javac main.java
```you can then run it in yeeeeem
```console
./zig-out/bin/yeeeeem Main.class
```![Demo](assets/demo.png)
### Why the name?
Well, since we want to make fun of java, we call it yava.
So it is a YVM or Yava Virtual Machine, this looks bad, so why not YM.
And since we have fun it's yeeeeem!
Pronounced more like yeeee-em