Go backward to The Typed lambda-CalculusGo up to TopGo forward to Record Types |

- Basic types:
- Unit (trivial type, only element ())
- Bool (with if-then-else)
- Int (with arithmetic and comparison)
- Real (with arithmetic and comparison)
- String (with infix concatenation ^)

- Type constructors:
*->*(function space)- x (Cartesian product)
- record types (labeled Cartesian products)
- variant types (labeled disjoint sums)

- Example:
- value p: Int x Bool = 3, true

fst(p), snd(p)

- value p: Int x Bool = 3, true

Author: Wolfgang Schreiner

Last Modification: May 27, 1998