Translation of the basics in " Open, extensible object models" into Ruby.