Wiederholung: Kompositum

Haskell: algebraischer Datentyp

data List a  = Nil | Cons a (List a)
     Nil  :: List a
     Cons :: a -> List a -> List a

Java: Kompositum

interface List<A> { }
class Nil implements List<A> { }
class Cons<A> implements List<A> {
    A head; List<A> tail;
}

Scala: case class



Johannes Waldmann 2012-06-25