InfraRuby Vision delivers solutions for mobile and web applications.
You can try InfraRuby live in your browser!
Try the InfraRuby statically typed Ruby compiler live in your browser. Try our examples or write your own code.
Follow @InfraRuby on Twitter for news and updates.

InfraRuby 4.1 released

Get the latest InfraRuby compiler and runtime for statically typed Ruby on the JVM!

To install the InfraRuby development packages, type in a privileged shell:

gem install infraruby-dev

The compiler requires annotations for field types and method signatures, and supports blocks, mixins, primitive types with autoboxing, generic types with bounded wildcards and type argument inference, and local type inference with autocasting.

The runtime implements selected methods from core classes Array Class Comparable Dir Encoding Enumerable Enumerator Exception Fiber File Float Hash Integer IO Kernel MatchData Math Mutex Numeric Object Process Random Range Regexp String Symbol Thread and standard library packages base64 benchmark date digest json net/http openssl pathname securerandom set socket stringio thread time uri.

All valid InfraRuby code is also valid Ruby code: InfraRuby code runs in Ruby interpreters without modification.

These gems are available for InfraRuby development:

Please email to add your gems to this list.

When compared to JRuby, InfraRuby has faster startup (~0 seconds vs ~5 seconds, depending on your hardware) and faster runtime (~5×, depending on your code), and also lower memory usage (~3×, depending on your code).

The InfraRuby compiler is implemented in the InfraRuby language and uses JRuby to bootstrap: the compiler source is compiled to bytecode using the compiler itself under JRuby. For comparison, the compiler source is compiled again using the compiled compiler.

This chart shows, for each runtime, the time to compile the compiler source to bytecode:

Try the InfraRuby statically typed Ruby compiler live in your browser. You can use InfraRuby for your own projects with our free download!

Follow @InfraRuby on Twitter
Copyright © 2011-2017 InfraRuby Vision Limited