TruffleRuby

Ruby编程语言的高性能实现。基于Oracle实验室的GraalVM构建。「A high performance implementation of the Ruby programming language. Built on the GraalVM by Oracle Labs.」

Github stars Tracking Chart

TruffleRuby logo

TruffleRuby is the GraalVM high-performance implementation
of the Ruby programming language built by
Oracle Labs.

Getting started

There are three ways to install TruffleRuby releases and nightly builds:

  • Via GraalVM, which includes support for
    other languages such as JavaScript, R and Python and supports both the
    native and JVM configurations.
    Inside GraalVM will then be a bin/ruby command that runs TruffleRuby.
    We recommend that you use a Ruby manager
    to use TruffleRuby inside GraalVM.

  • Via your Ruby manager/installer (RVM, rbenv,
    chruby, ruby-build, ruby-install). This contains only TruffleRuby, in the
    native configuration, making it a smaller
    download. It is meant for users just wanting a Ruby implementation and already
    using a Ruby manager.

  • Using the standalone distribution
    as a simple binary tarball. This distribution is also useful for
    testing TruffleRuby in CI.
    On TravisCI, you can simply use:

    language: ruby
    rvm:
      - truffleruby
    

    And on GitHub Actions:

    - uses: ruby/setup-ruby@v1
      with:
        ruby-version: truffleruby
    

You can use gem and bundle to install Gems as normal.

Please report any issue you might find on GitHub.

Aim

TruffleRuby aims to:

  • Run idiomatic Ruby code faster
  • Run Ruby code in parallel
  • Boot Ruby applications in less time
  • Execute C extensions in a managed environment
  • Add fast and low-overhead interoperability with languages like Java, JavaScript, Python and R
  • Provide new tooling such as debuggers and monitoring that work across languages
  • All while maintaining very high compatibility with the standard implementation of Ruby

TruffleRuby Configurations

There are two main configurations of TruffleRuby: Native and JVM which make different trade-offs.

Main metrics

Overview
Name With Owneroracle/truffleruby
Primary LanguageRuby
Program languageRuby (Language Count: 14)
PlatformLinux, Mac
License:Other
所有者活动
Created At2016-02-05 18:03:11
Pushed At2025-04-21 12:02:17
Last Commit At2025-04-21 10:32:50
Release Count207
Last Release Namevm-ee-24.2.1 (Posted on )
First Release Namehudson-whatever (Posted on )
用户参与
Stargazers Count3.1k
Watchers Count75
Fork Count191
Commits Count68.3k
Has Issues Enabled
Issues Count1315
Issue Open Count169
Pull Requests Count2143
Pull Requests Open Count10
Pull Requests Close Count290
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private