Source §3 Concurrent

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

What names are predeclared in Source §3 Concurrent?

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

What can you do in Source §3 Concurrent?

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


To introduce concurrency into your programs, you can use the functions in the CONCURRENCY library. The program runs concurrently with the threads that it creates. The program terminates when all threads terminate. Any result value from any of the threads, including the program's thread, are ignored. Use the predeclared display function to display result values.

You want the definitive specs?

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