Type class

Type class, (en català: classe de tipus) en ciència de la computació, és un sistema de tipus que suporta polimorfisme ad hoc. Type class va aparèixer per primer cop al llenguatge de programació Haskell.[1]

La seva definició parteix l'univers dels tipus en classes, segons si implementen o no la signatura.

Exemples

Una type class Eq es declararia de la següent manera :

class Eq a where
  (==) :: a -> a -> Bool
  (/=) :: a -> a -> Bool

llavors es podria definir una funció elem :

elem :: Eq a => a -> [a] -> Bool
elem y []     = False
elem y (x:xs) = (x == y) || elem y xs

Referències

  1. contributors, Cats. «Cats» (en anglès). https://typelevel.org.+[Consulta: 9 octubre 2017].