Slide 1

Slide 1 text

Introduction to Rubinius

Slide 2

Slide 2 text

Me Aviv Ben-Yosef @avivby http://codelord.net Coder @ BillGuard truby podcast http://rauchy.net/truby

Slide 3

Slide 3 text

Ruby in Ruby

Slide 4

Slide 4 text

Started by Evan Phoenix in 2006

Slide 5

Slide 5 text

Intention: Ruby as 1st class language And thread safety, and transparency, and...

Slide 6

Slide 6 text

Ruby Implementations MRI/CRuby JRuby Rubinius REE MacRuby mruby

Slide 7

Slide 7 text

Rubinius Status 1.8.7 compatible, quickly gaining on 1.9.2

Slide 8

Slide 8 text

How do you implement a language with no spec?

Slide 9

Slide 9 text

RubySpec saving us from language spaghetti

Slide 10

Slide 10 text

spec/ruby/language/if_spec.rb

Slide 11

Slide 11 text

Why should you care?

Slide 12

Slide 12 text

It’s awesome

Slide 13

Slide 13 text

Learn Ruby’s inner-workings

Slide 14

Slide 14 text

Super awesome open- source management

Slide 15

Slide 15 text

rvm install rbx --1.9 start using it today!

Slide 16

Slide 16 text

Quick hacking session Let’s remove “else” from “unless”!

Slide 17

Slide 17 text

Find relevant files $ git ls-files | grep unless spec/ruby/language/unless_spec.rb $ git ls-files | grep grammar lib/ext/melbourne/grammar19.y ...

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

... And then just hunt down all the unless..else in rbx

Slide 21

Slide 21 text

A dozen “rake spec”s later

Slide 22

Slide 22 text

Do it yourself http://bit.ly/JweRYU