O'Haskell OOP Polymorphic Functions