4.2. Infixové operátory

Infixové operátory jsou vlastně také funkce a můžeme je opět definovat rovnicemi. Například takto lze definovat operátor konkatenace seznamů:

(++)                    :: [a] -> [a] -> [a]
[]     ++ ys            =  ys
(x:xs) ++ ys            =  x : (xs++ys)


Poznámka:
Poznámka:
Lexikálně se infixové operátory skládají pouze ze „symbolů“ na rozdíl od normálních identifikátorů, které jsou alfanumerické. Haskell nemá žádné prefixové operátory s výjimkou minus (-), který je jak infixový, tak prefixový.

Jako další příklad uveďme důležitý infixový operátor pracující s funkcemi - operátor pro kompozici funkcí:

(.)                     :: (b->c) -> (a->b) -> (a->c)
f . g                   = \ x -> f (g x)