Abstract #1
JRuby: You Ain't Seen Nothin Yet
You know that JRuby is an implementation of Ruby for the JVM. But did you also know it provides full-featured two-way integration with Java libraries? The rumors are false; JRuby can create normal Java .class files, support annotation and reflection-based APIs, and a whole lot more. It's a true JVM language. Anything you can do with other JVM languages you can do with JRuby...and do it all in Ruby, one of the most beautiful languages created. This talk will walk through JRuby's Java integration features, from extending classes and implementing interfaces to generating real Java class files and wiring into reflective and annotation-based Java APIs. You will also see real-world examples of JRuby, ranging from web applications using Rails to desktop apps and games. And we'll talk about where JRuby can take you and your applications in the future.
Abstract #2:
Java.next: You're Doing It Wrong
There's so many languages to choose from on the JVM. Ruby, Scala, Clojure, Groovy, Python, Fan...and of course Java. But none of them seem positioned to unseat Java as the nuts-and-bolts language we write day to day. Why is that? Is it because some of them are dynamic languages with performance considerations? Is it because of their bloated runtime libraries? Is it because they've become too "opinionated" and moved too far away from "normal" developers? In this talk we'll explore some of the challenges we've faced implementing JRuby and how those challenges led me to create the Duby programming language. Duby is a lightweight, highly-extensible, runtime-free, statically-typed, Ruby-like language for the JVM that's changing the way we look at JVM languages. I'll show how Duby works, how you can extend it, and why it (or a language like it) have a chance to replace Java where no other language does. If you're not itching to write Duby code by the end of this talk, I'll let you buy me a beer.