SX

Top-level Files of tip
Login

Files in the top-level directory from the latest check-in


sx - symbolic expressions

Sx is a collection of libraries and frameworks to work with s-expressions.

See for more information on its project page.

Types

Sx support the following atomic, immutable types:

Sx supports nested lists. A list is delimited by parentheses: ( ... ). Within a list, all values are separated by space characters, including new line. Lists can be nested. Internally, lists are created by pairs. The first part of a pair, called "car", contains the actual value stored at the beginning of a list. The second part, called "cdr", typically links to the next pair. This allows multiple lists to share elements. A proper list is a list, where the last elements second part is the empty list. The last element of a list may be a pair, where the second part references a values except a list. Such lists are improper lists. Since the second part may reference any value, even earlier elements of a list, lists may be circular. Single pairs are denoted as (X . Y), where the car references S and the cdr references Y (Y is not a list).

All other types supported by Sx cannot be specified via the reader.