data Tree a = Leaf | Branch (Tree a) a (Tree a) t = Branch Leaf "bar" Leaf case t of Branch l k r -> k
data Tree a = Leaf | Branch {left::Tree a, key::a, right::Tree a } t = Branch {left=Leaf,key="bar",right=Leaf} case t of Branch {} -> key t
Branch {left=Leaf,key="bar" ,right=Branch Leaf "foo" Leaf}