[previous] [up] [next]     [index]
Next: Units Up: Parser Previous: Preliminaries

Core Scheme

NOTE: As a convention in this section, val and body will hold a zodiac:parsed object; var will contain a zodiac:binding. The plural forms, vals and bodies, contain lists of zodiac:parsed.

zodiac:set!-form : zodiac:form (var val)

zodiac:begin-form : zodiac:form (bodies)

zodiac:begin0-form : zodiac:form (bodies)

These structures are explained by the above convention.

zodiac:define-values-form : zodiac:form (vars val)

vars is a list of zodiac:binding.

zodiac:let-values-form : zodiac:form (vars vals body)

zodiac:letrec*-values-form : zodiac:form (vars vals body)

The vars fields are lists of lists of zodiac:binding.[footnote]

zodiac:if-form : zodiac:form (test then else)

test, then and else are zodiac:parsed.

zodiac:quote-form : zodiac:form (expr)

expr contains a zodiac:read object.

zodiac:case-lambda-form : zodiac:form (args bodies)

args is a list of argument lists. Each element of args is an zodiac:arglist (see section [cross-reference]).

zodiac:struct-form : zodiac:form (type super fields)

type is a (McMicMac) zodiac:symbol; fields is a list of these. zodiac:super is either the false value (#f) or a zodiac:parsed object, depending on whether or not a super-type expression was specified.



PLT