The Dark Side of Ruby

Object-Oriented Programming