InfraRuby

InfraRuby is a compiler and runtime for statically typed Ruby.

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, Bignum, Comparable, Dir, Encoding, Enumerable, Enumerator, Exception, File, Fixnum, 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, pathname, set, socket, stringio, thread, time, uri.

Example

infraruby-init hello
cd hello
bundle install
rake --tasks
rake library:core:compile
rake program:hello-main:core:compile
rake program:hello-main:core:execute

Support

http://infraruby.com/