Skip to content

Ferrugo is a JVM implementation written in Rust

License

Notifications You must be signed in to change notification settings

alexandre-cremieux/ferrugo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ferrugo

CircleCI codecov

Ferrugo is a JVM implementation written in Rust.

This is now just a toy project (for me/you to learn how it works).

Current Status

  • Able to run some classfiles. see ./examples/(Hello|BigInt|SmallPT).class
  • Partly support for JIT compiling powered by LLVM
  • Aiming readable code (this is the hardest, yes)

Building from Source

Building on Linux

  1. Install Rust

Run the command below and follow the onscreen instructions.

curl https://sh.rustup.rs -sSf | sh
  1. Use Rust Nightly
rustup override set nightly
  1. Install dependencies
  • LLVM 6.0
  • (Other packages as necessary...)
# e.g. Ubuntu or Debian
apt-get install llvm-6.0
  1. Test
cargo test
  1. Build and Run
cargo run --release examples/Hello.class

Building on other platforms

I don't know. Maybe almost the same as Linux.

About

Ferrugo is a JVM implementation written in Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%