Parametrisierte Tupel in Haskell
Tupel sind Produkttypen in Haskell, die eine feste Anzahl von Werten unterschiedlicher Typen enthalten können.
Definition und Verwendung
Ein 2-Tupel (Paar) kann mit zwei Typparametern definiert werden:
data Pair a b = PairConstructor a b
PairConstructor 5 6 :: Pair Int IntPairConstructor 5.0 6 :: Pair Double IntPairConstructor 'a' True :: Pair Char Bool
Native Syntax und Funktionen
In Haskell werden Tupel einfach mit runden Klammern geschrieben. Die Typen werden durch Kommas getrennt.
(1, 4.0, 'a', True) :: (Int, Double, Char, Bool)
Standardfunktionen für Paare:
fst :: (a, b) -> agibt das erste Element zurück.snd :: (a, b) -> bgibt das zweite Element zurück.