Type Classes as Objects and Implicits Bruno C. d. S. Oliveira ROSAEC Center, Seoul National University bruno@ropas.snu.ac.kr Adriaan Moors Martin Odersky EPFL {adriaan.moors, martin.odersky}@epfl.ch Abstract Type classes were originally developed in Haskell as a dis- ciplined alternative to ad-hoc polymorphism. Type classes have been shown to provide a type-safe solution to impor- tant challenges