SICP on erlang