io7m | single-page | multi-page | archive (zip, signature)
2. Why?A Crash Course In Algebraic Types4. Shapes
PreviousUpNext

What?
Algebraic data types are currently not well-known outside of statically typed functional languages such as OCaml, Haskell, Scala, amongst others. The simplest way to think of them appears to be as a sort of enumerated type, where each case of the type can have associated data. Values of the types are inspected via a language construct called pattern matching, which can essentially be thought of as a much more powerful version of the switch or case construct found in languages such as C, Java, Ada, and others. As underwhelming as this sounds, the combination of these types and pattern matching allow for reducing what would be extremely complicated tasks in other languages down to trivial symbol manipulation, and subsume vast parts of the type systems in other languages.

PreviousUpNext
2. Why?A Crash Course In Algebraic Types4. Shapes