Ruby code from Kent Beck's Smalltalk Best Practice Patterns