SICP style scheme written in Ruby