It's not, but I was trying to make the best of the lack of interfaces in Ruby. What's the best practice here? Just letting people pass whatever class they want, but documenting well that the class needs to have those methods? (The OOP side of my brain is hinting at me that this doesn't sound very "clean"), so to speak.