Version: 5.1.3

How to Design Programs Languages

The languages documented in this manual are provided by DrRacket to be used with the How to Design Programs book.

When programs in these languages are run in DrRacket, any part of the program that was not run is highlighted in orange and black. These colors are intended to give the programmer feedback about the parts of the program that have not been tested. To avoid seeing these colors, use check-expect to test your program. Of course, just because you see no colors, does not mean that your program has been fully tested; it simply means that each part of the program has been run (at least once).

    1 Beginning Student

      1.1 Pre-Defined Variables

      1.2 Syntax

      1.3 Pre-defined Functions

        1.3.1 Numbers: Integers, Rationals, Reals, Complex, Exacts, Inexacts

        1.3.2 Booleans

        1.3.3 Symbols

        1.3.4 Lists

        1.3.5 Posns

        1.3.6 Characters

        1.3.7 Strings

        1.3.8 Images

        1.3.9 Misc

    2 Beginning Student with List Abbreviations

      2.1 Pre-Defined Variables

      2.2 Syntaxes for Beginning Student with List Abbreviations

      2.3 Common Syntaxes

      2.4 Pre-defined Functions

        2.4.1 Numbers: Integers, Rationals, Reals, Complex, Exacts, Inexacts

        2.4.2 Booleans

        2.4.3 Symbols

        2.4.4 Lists

        2.4.5 Posns

        2.4.6 Characters

        2.4.7 Strings

        2.4.8 Images

        2.4.9 Misc

    3 Intermediate Student

      3.1 Pre-Defined Variables

      3.2 Syntax for Intermediate

      3.3 Common Syntaxes

      3.4 Pre-defined Functions

        3.4.1 Numbers: Integers, Rationals, Reals, Complex, Exacts, Inexacts

        3.4.2 Booleans

        3.4.3 Symbols

        3.4.4 Lists

        3.4.5 Posns

        3.4.6 Characters

        3.4.7 Strings

        3.4.8 Images

        3.4.9 Misc

        3.4.10 Numbers (relaxed conditions)

        3.4.11 Higher-Order Functions

    4 Intermediate Student with Lambda

      4.1 Pre-Defined Variables

      4.2 Syntax for Intermediate with Lambda

      4.3 Common Syntaxes

      4.4 Pre-defined Functions

        4.4.1 Numbers: Integers, Rationals, Reals, Complex, Exacts, Inexacts

        4.4.2 Booleans

        4.4.3 Symbols

        4.4.4 Lists

        4.4.5 Posns

        4.4.6 Characters

        4.4.7 Strings

        4.4.8 Images

        4.4.9 Misc

        4.4.10 Numbers (relaxed conditions)

        4.4.11 Higher-Order Functions

    5 Advanced Student

      5.1 Pre-Defined Variables

      5.2 Syntax for Advanced

      5.3 Common Syntaxes

      5.4 Pre-Defined Functions

        5.4.1 Numbers: Integers, Rationals, Reals, Complex, Exacts, Inexacts

        5.4.2 Booleans

        5.4.3 Symbols

        5.4.4 Lists

        5.4.5 Posns

        5.4.6 Characters

        5.4.7 Strings

        5.4.8 Images

        5.4.9 Misc

        5.4.10 Numbers (relaxed conditions)

        5.4.11 Higher-Order Functions

        5.4.12 Reading and Printing

        5.4.13 Vectors

        5.4.14 Boxes

        5.4.15 Hash Tables

    Index