Expander Runtime

The expander procedures are part of the expander API and accessible at phi=+1 (syntax definition time) in the core prelude.

These symbols are part of the <expander-runtime> module, defined at the core prelude, which you can import directly if you need to work with the expander at phi=0, for instance in source processing tools.

syntax-case

macro-expand-syntax

usage

(macro-expand-syntax ...)

Please document me!

macro-expand-syntax-case

usage

(macro-expand-syntax-case ...)

Please document me!

syntax-pattern?

usage

(syntax-pattern? ...)

Please document me!

syntax-local-pattern?

usage

(syntax-local-pattern? ...)

Please document me!

make-syntax-pattern

usage

(make-syntax-pattern ...)

Please document me!

syntax-pattern-id

usage

(syntax-pattern-id ...)

Please document me!

syntax-pattern-depth

usage

(syntax-pattern-depth ...)

Please document me!

syntax-check-splice-targets

usage

(syntax-check-splice-targets ...)

Please document me!

syntax-split-splice

usage

(syntax-split-splice ...)

Please document me!

Core Expander

current-expander-context

usage

(current-expander-context ...)

Please document me!

current-expander-marks

usage

(current-expander-marks ...)

Please document me!

current-expander-path

usage

(current-expander-path ...)

Please document me!

current-expander-phi

usage

(current-expander-phi ...)

Please document me!

current-module-reader-path

usage

(current-module-reader-path ...)

Please document me!

current-module-reader-args

usage

(current-module-reader-args ...)

Please document me!

local-context?

usage

(local-context? ...)

Please document me!

top-context?

usage

(top-context? ...)

Please document me!

module-context?

usage

(module-context? ...)

Please document me!

prelude-context?

usage

(prelude-context? ...)

Please document me!

expander-context-id

usage

(expander-context-id ...)

Please document me!

module-context-ns

usage

(module-context-ns ...)

Please document me!

module-context-import

usage

(module-context-import ...)

Please document me!

module-context-export

usage

(module-context-export ...)

Please document me!

module-context-code

usage

(module-context-code ...)

Please document me!

make-local-context

usage

(make-local-context ...)

Please document me!

eval-syntax

usage

(eval-syntax ...)

Please document me!

core-expand

usage

(core-expand ...)

Please document me!

core-expand-head

usage

(core-expand-head ...)

Please document me!

core-expand-expression+1

usage

(core-expand-expression+1 ...)

Please document me!

import-module

usage

(import-module ...)

Please document me!

eval-module

usage

(eval-module ...)

Please document me!

core-library-module-path?

usage

(core-library-module-path? ...)

Please document me!

core-resolve-library-module-path

usage

(core-resolve-library-module-path ...)

Please document me!

core-resolve-module-path

usage

(core-resolve-module-path ...)

Please document me!

core-quote-syntax

usage

(core-quote-syntax ...)

Please document me!

core-identifier=?

usage

(core-identifier=? ...)

Please document me!

core-identifier-key

usage

(core-identifier-key ...)

Please document me!

core-apply-expander

usage

(core-apply-expander ...)

Please document me!

syntax-local-introduce

usage

(syntax-local-introduce ...)

Please document me!

syntax-local-rewrap

usage

(syntax-local-rewrap ...)

Please document me!

syntax-local-unwrap

usage

(syntax-local-unwrap ...)

Please document me!

syntax-local-e

usage

(syntax-local-e ...)

Please document me!

syntax-local-value

usage

(syntax-local-value ...)

Please document me!

Bindings

resolve-identifier

usage

(resolve-identifier ...)

Please document me!

core-resolve-identifier

usage

(core-resolve-identifier ...)

Please document me!

binding?

usage

(binding? ...)

Please document me!

binding-id

usage

(binding-id ...)

Please document me!

runtime-binding?

usage

(runtime-binding? ...)

Please document me!

top-binding?

usage

(top-binding? ...)

Please document me!

module-binding?

usage

(module-binding? ...)

Please document me!

extern-binding?

usage

(extern-binding? ...)

Please document me!

syntax-binding?

usage

(syntax-binding? ...)

Please document me!

syntax-binding-e

usage

(syntax-binding-e ...)

Please document me!

alias-binding?

usage

(alias-binding? ...)

Please document me!

alias-binding-e

usage

(alias-binding-e ...)

Please document me!

import-binding?

usage

(import-binding? ...)

Please document me!

import-binding-e

usage

(import-binding-e ...)

Please document me!

Expanders

expander?

usage

(expander? ...)

Please document me!

expander-binding?

usage

(expander-binding? ...)

Please document me!

expander-e

usage

(expander-e ...)

Please document me!

expander-binding-e

usage

(expander-binding-e ...)

Please document me!

feature-expander?

usage

(feature-expander? ...)

Please document me!

user-expander?

usage

(user-expander? ...)

Please document me!

make-user-expander

usage

(make-user-expander ...)

Please document me!

user-expander-context

usage

(user-expander-context ...)

Please document me!

user-expander-phi

usage

(user-expander-phi ...)

Please document me!

import-expander?

usage

(import-expander? ...)

Please document me!

make-import-expander

usage

(make-import-expander ...)

Please document me!

export-expander?

usage

(export-expander? ...)

Please document me!

make-export-expander

usage

(make-export-expander ...)

Please document me!

import-export-expander?

usage

(import-export-expander? ...)

Please document me!

make-import-export-expander

usage

(make-import-export-expander ...)

Please document me!

Imports and Exports

module-import?

usage

(module-import? ...)

Please document me!

make-module-import

usage

(make-module-import ...)

Please document me!

module-import-source

usage

(module-import-source ...)

Please document me!

module-import-name

usage

(module-import-name ...)

Please document me!

module-import-phi

usage

(module-import-phi ...)

Please document me!

module-import-weak?

usage

(module-import-weak? ...)

Please document me!

module-export?

usage

(module-export? ...)

Please document me!

make-module-export

usage

(make-module-export ...)

Please document me!

module-export-context

usage

(module-export-context ...)

Please document me!

module-export-key

usage

(module-export-key ...)

Please document me!

module-export-phi

usage

(module-export-phi ...)

Please document me!

module-export-name

usage

(module-export-name ...)

Please document me!

module-export-weak?

usage

(module-export-weak? ...)

Please document me!

import-set?

usage

(import-set? ...)

Please document me!

import-set-source

usage

(import-set-source ...)

Please document me!

import-set-phi

usage

(import-set-phi ...)

Please document me!

import-set-imports

usage

(import-set-imports ...)

Please document me!

export-set?

usage

(export-set? ...)

Please document me!

export-set-source

usage

(export-set-source ...)

Please document me!

export-set-phi

usage

(export-set-phi ...)

Please document me!

export-set-exports

usage

(export-set-exports ...)

Please document me!

core-resolve-module-export

usage

(core-resolve-module-export ...)

Please document me!

core-module-export->import

usage

(core-module-export->import ...)

Please document me!

core-expand-import-source

usage

(core-expand-import-source ...)

Please document me!

core-expand-export-source

usage

(core-expand-export-source ...)

Please document me!