disjunkte Vereinigung (erkennbar am Konstruktor)
von Kreuzprodukten mit benannten Komponenten.
data Tree a = Leaf | Node { key :: a , left :: Tree a , right :: Tree a } t :: Tree Int t = Node { key = 5 , left = Leaf , right = Node { key = 7, left = Leaf, right = Leaf } }