000150280 001__ 150280
000150280 005__ 20190316234831.0
000150280 037__ $$aCONF
000150280 245__ $$aType Classes as Objects and Implicits
000150280 269__ $$a2010
000150280 260__ $$bACM$$c2010
000150280 336__ $$aConference Papers
000150280 520__ $$aType classes were originally developed in Haskell as a disciplined alternative to ad-hoc polymorphism. Type classes have been shown to provide a type-safe solution to important challenges in software engineering and programming languages such as, for example, retroactive extension of programs. They are also recognized as a good mechanism for concept-based generic programming and, more recently, have evolved into a mechanism for type-level computation. This paper presents a lightweight approach to type classes in object-oriented (OO) languages with generics using the Concept pattern and implicits (a type-directed implicit parameter passing mechanism). This paper also shows how Scala’s type system conspires with implicits to enable, and even surpass, many common extensions of the Haskell type class system, making Scala ideally suited for generic programming in the large.
000150280 700__ $$aOliveira, Bruno C. d. S.
000150280 700__ $$aMoors, Adriaan
000150280 700__ $$g126003$$aOdersky, Martin$$0241835
000150280 7112_ $$dOctober 17-21, 2010$$cReno/Tahoe, Nevada, USA$$aOOPSLA/SPLASH’10
000150280 773__ $$tProceedings of the ACM international conference on Object oriented programming systems languages and applications$$q341-360
000150280 8564_ $$uhttps://infoscience.epfl.ch/record/150280/files/TypeClasses.pdf$$zn/a$$s243987$$yPostprint
000150280 909C0 $$xU10409$$0252187$$pLAMP
000150280 909CO $$qGLOBAL_SET$$pconf$$ooai:infoscience.tind.io:150280$$pIC
000150280 917Z8 $$x177178
000150280 917Z8 $$x177178
000150280 937__ $$aEPFL-CONF-150280
000150280 973__ $$rREVIEWED$$sPUBLISHED$$aEPFL
000150280 980__ $$aCONF