Skip to content
Smalltalk on Rubinius
Ruby Smalltalk
Find file
Latest commit 8964380 @rkh no longer use parslet fork
Failed to load latest commit information.
bin Fix keyword symbols (like #foo:bar:)
kernel ANSI Smalltalk complete Character implementation
lib Revert "Start on new compiler"
spec need compiler specs
Gemfile no longer use parslet fork
Gemfile.lock switch to tuning-rbx branch of parslet (my fork)

Smalltalk implementation running on Rubinius.

WARNING: Not usable, yet.


  • Parser is nearly complete (ANSI Smalltalk is complete, but no syntax for class/method definition yet)
  • Compiler is incomplete
  • Standard library and core classes are near to non-existent


rvm use rbx
gem install bundler
bundle install

Example usage:

~/Workspace/reak (git: master) ☃〠 bin/reak
st> 1 - (2 - 1) > -1
st> 1 > 2 ifTrue: [ self halt ] ifFalse: [ nil isNil respondTo: #doesNotUnderstand: ]
st> 1 rubyPerform: #to_s
a RubyObject("1")
st> 1 - 1; + "yes, this is valid smalltalk" 1

This implementation is not image based nor does it have a built-in IDE. So, if you are looking for a classic Smalltalk, you might better be looking somewhere else. Also, it is rather experimental at the moment.

Parts of the compiler have been stolen from, I mean inspired by Brian Ford's Poison.

Something went wrong with that request. Please try again.