rjvm

A tiny JVM written in Rust. Learning project (by andreabergia)

Rjvm Alternatives

Similar projects and alternatives to rjvm

  • Graal

    156 rjvm VS Graal

    GraalVM compiles Java applications into native executables that start instantly, scale fast, and use fewer compute resources 🚀

  • mmtk-core

    Memory Management ToolKit

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • computerraria

    A fully compliant RISC-V computer made inside the game Terraria

  • Metascala

    1 rjvm VS Metascala

    A JVM written in Scala

  • rust-jvm3

    A JVM made for educational purposes that implements a subset of the specification

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better rjvm alternative or higher similarity.

rjvm reviews and mentions

Posts with mentions or reviews of rjvm. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-08-28.
  • A JVM in Rust part 5 – Executing instructions
    4 projects | news.ycombinator.com | 28 Aug 2023
    https://github.com/andreabergia/rjvm/blob/93e7e48db085e780b0...
  • I have written a JVM in Rust
    5 projects | news.ycombinator.com | 21 Jul 2023
    Seems like that would take care of roots for the bytecode's themselves, but not for "native" functions[1]. Allocating a new object could call gc[2], and native functions are using the native callstack. It seems like it would be easy to allocate in a native function and any unrooted references would be invalidated. In fact I see a case like that here[3]. That method creates a reference with `expect_concrete_object_at` and then calls gc with `new_java_lang_class_object`. It avoids UB by not using `arg` after the call that gc's, but there is nothing stopping you from using `arg` again (and having an invalid reference).

    [1] https://github.com/andreabergia/rjvm/blob/main/vm/src/native...

    [2] https://github.com/andreabergia/rjvm/blob/be9c54066c64a82879...

    [3] https://github.com/andreabergia/rjvm/blob/be9c54066c64a82879...

Stats

Basic rjvm repo stats
4
1,401
8.6
4 months ago

andreabergia/rjvm is an open source project licensed under Apache License 2.0 which is an OSI approved license.

The primary programming language of rjvm is Rust.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com