Next: R4RS Macros, Previous: Scheme Syntax Extension Packages, Up: Scheme Syntax Extension Packages [Contents][Index]
Defmacros are supported by all implementations.
Returns a new (interned) symbol each time it is called. The symbol names are implementation-dependent
(gentemp) ⇒ scm:G0 (gentemp) ⇒ scm:G1
Returns the slib:eval of expanding all defmacros in scheme
expression e.
filename should be a string. If filename names an existing
file, the defmacro:load procedure reads Scheme source code
expressions and definitions from the file and evaluates them
sequentially. These source code expressions and definitions may
contain defmacro definitions. The defmacro:load procedure does
not affect the values returned by current-input-port,
current-error-port, and current-output-port.
Returns #t if sym has been defined by defmacro,
#f otherwise.
If form is a macro call, macroexpand-1 will expand the
macro call once and return it. A form is considered to be a macro
call only if it is a cons whose car is a symbol for which a
defmacro has been defined.
macroexpand is similar to macroexpand-1, but repeatedly
expands form until it is no longer a macro call.
When encountered by defmacro:eval, defmacro:macroexpand*,
or defmacro:load defines a new macro which will henceforth be
expanded when encountered by defmacro:eval,
defmacro:macroexpand*, or defmacro:load.
(require 'defmacroexpand)
Returns the result of expanding all defmacros in scheme expression e.
Next: R4RS Macros, Previous: Scheme Syntax Extension Packages, Up: Scheme Syntax Extension Packages [Contents][Index]