Version: 4.1.3
The mzlib/compat library defines a number of
procedures and syntactic forms that are commonly provided by other
Scheme implementations. Most of the procedures are aliases for
mzscheme procedures.
Same as =, <, etc.
Same as add1 and sub1.
Same as gensym.
Same as flush-output.
Same as current-milliseconds.
(atom? v) → any |
v : any/c |
Same as (not (pair? v)) (which does not actually imply an
atomic value).
Like define-struct, except that the name-id is moved
inside the parenthesis for fields. In addition,
init-field-ids can be specified with automatic initial-value
expression.
The init-field-ids do not have corresponding arguments for
the make-name-id constructor. Instead, each
init-field-id’s init-expr is evaluated to obtain the
field’s value when the constructor is called. The field-ids
are bound in init-exprs, but not other
init-field-ids.
Examples: |
> (define-structure (add left right) ([sum (+ left right)])) |
> (add-sum (make-add 3 6)) |
9 |
The getprop function gets a property value associated with
sym. The property argument names the property to be
found. If the property is not found, default is returned.
The properties obtained with getprop are the ones installed
with putprop.
(new-cafe [eval-handler]) → any |
eval-handler : (any/c . -> . any) = #f |
Emulates Chez Scheme’s new-cafe by installing
eval-handler into the current-eval parameter while
running read-eval-print. In addition, current-exit
is set to escape from the call to new-cafe.