Source §2

Source §2 is a small programming language, designed for the second chapter of the textbook Structure and Interpretation of Computer Programs, JavaScript Adaptation (SICP JS).

What names are predeclared in Source §2?

On the right, you see all predeclared names of Source §2, in alphabetical order. Click on a name to see how it is defined and used. They come in these groups:

  • AUXILIARY: Auxiliary constants and functions
  • MISC: Miscellaneous constants and functions
  • MATH: Mathematical constants and functions
  • LISTS: Support for lists

What can you do in Source §2?

You can use all features of Source §1 and all features that are introduced in chapter 2 of the textbook. Below are the features that Source §2 adds to Source §1.

The empty list null

Source §2 provides a new primitive value, null, that serves as empty list.

The LIST functions

To work with lists, you can use the functions in the LISTS group of predeclared functions, already mentioned above.

You want the definitive specs?

For our development team, we are maintaining a definitive description of the language, called the Specification of Source §2. Feel free to take a peek!