Sketchy LISP Volume 2 - Reference |
Copyright (C) 2006 Nils M Holm Buy a printed copy |
Next: Library Functions | - Contents - Index - | Next: Meta Commands |
Sketchy supports three-argument lambda functions, where the third argument is an association list containing the lexical context of the resulting closure:
(lambda (x) (not (p x)) ((p . #<primitive pair?>)))
Scheme does not support first-class lexical environments.
There are some subtle departures from R5RS in the cond
and define
pseudo function of Sketchy. See their
descriptions in the Primitive Functions
chapter for details.
Sketchy's bottom
, list->integer
,
and integer->list
functions do not have any counterparts
in Scheme. The latter two are implemented easily, though.
Many essential functions that are part of R5RS Scheme are not
implemented in Sketchy. See the Library Functions
chapter
to see what actually is implemented.
Because Sketchy does not have floating point numbers, it does not
require a space character before and after the dot of a dotted pair,
and so the notations '(x.y)
and '(x . y)
are equivalent.
In R5RS Scheme, the spaces around dots are needed to distinguish
between pairs and lists of floating point numbers. Without the
spaces, it would be impossible to decide whether '(1.2)
is a dotted pair containing the integers 1 and 2 or a list containing
the floating point number 1.2.
Next: Library Functions | - Contents - Index - | Next: Meta Commands |