JRuby, Duby, Surinx, Java...

Nicolas Mérouze

@nmerouze

http://boldr.net

we_like(:ruby).syntax

"Ruby is exotic, use Java!"

  - Ignorant boss

JRuby

Use gems AND java libs

Mix Java and Ruby, it makes a good soup!

require "java"
import java.lang.System
puts System.getProperties["java.runtime.version"]

Desktop applications: Swing, Qt, Limelight...

BDD with Celerity

We can use any Rack app with JRuby

And Google AppEngine

Web applications with Vaadin

Mix Ruby with others languages than Java

Mix it with Javascript: Snarl

Mix it with Scala: Scuby

There's more

Sidekicks: Duby, Surinx, BiteScript

Duby is Java with Ruby syntax

def fib(a:int)
  if a < 2

a


  else

fib(a - 1) + fib(a - 2)


  end
end

.class and .java output

public class fib extends java.lang.Object {
  public static void main(java.lang.String[] argv) { }
  public static int fib(int a) {

return (a < 2) ? a : (fib.fib((a - 1)) + fib.fib((a - 2)));


  }
}

Surinx: Like Duby but dynamic

Bitescript: DSL/API for emitting JVM bytecode

Thanks. Questions?