•Inductively
formed structured data
–Generalizes
enumerations & tagged variants
•Types
used to prevent the construction of ill-formed data
•Pattern
matching allows abstract high level (yet still efficient)
access
•Can
be parameterized to make polymorphic container-like structures