Contents

    1  Starting with Typed Scheme
        1.1  A First Function
        1.2  Adding more complexity
        1.3  Defining New Datatypes
        1.4  Recursive Datatypes and Unions
        1.5  Giving Names to Types

    2  Polymorphism

    3  More Built-In Types

    4  Special Form Reference
        4.1  Binding Forms
        4.2  Structure Defintions
        4.3  Type Aliases
        4.4  Type Annotation
        4.5  Require

    5  The Typed Scheme Language Level