The agnostic-lizard Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The agnostic-lizard Reference Manual

This is the agnostic-lizard Reference Manual, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 10:42:33 2018 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction

Agnostic Lizard is a portable implementation of a code walker and in
particular of the macroexpand-all function (and macro) that makes a best
effort to be correct while not expecting much beyond what the Common Lisp
standard requires.

It aims to be implementation-agnostic and to climb the syntax trees.

Alternatives: 
  macroexpand-dammit (only macroexpansion, removes macrolet),
  hu.dwim.walker (significant implementation-specific code, not all
implementation support up to date, removes macrolet),
  trivial-macroexpand-all (only macroexpansion, maximally
implementation-specific but supports a lot of implementations),
  swank (implementation-specific but supports a lot of implementations, no code
walker)


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 agnostic-lizard

Author

Michael Raskin <38a938c2@rambler.ru>

License

GPLv3+

Description

A portable code walker that makes a best effort to be correct in most cases

Source

agnostic-lizard.asd (file)

Components

Next: , Previous: , Up: Top   [Contents][Index]

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Next: , Previous: , Up: Files   [Contents][Index]

3.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.1 agnostic-lizard.asd

Location

agnostic-lizard.asd

Systems

agnostic-lizard (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.2 agnostic-lizard/package.lisp

Parent

agnostic-lizard (system)

Location

package.lisp

Packages

agnostic-lizard


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.3 agnostic-lizard/utils.lisp

Dependency

package.lisp (file)

Parent

agnostic-lizard (system)

Location

utils.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.4 agnostic-lizard/env-wrappers.lisp

Dependency

package.lisp (file)

Parent

agnostic-lizard (system)

Location

env-wrappers.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.5 agnostic-lizard/metaenv.lisp

Dependencies
Parent

agnostic-lizard (system)

Location

metaenv.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.6 agnostic-lizard/lexenv.lisp

Dependencies
Parent

agnostic-lizard (system)

Location

lexenv.lisp

Exported Definitions
Internal Definitions

environment-entries-for-name (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.7 agnostic-lizard/pure-expansion.lisp

Dependencies
Parent

agnostic-lizard (system)

Location

pure-expansion.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.8 agnostic-lizard/special-form-handlers.lisp

Dependencies
Parent

agnostic-lizard (system)

Location

special-form-handlers.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.9 agnostic-lizard/generic-walking.lisp

Dependencies
Parent

agnostic-lizard (system)

Location

generic-walking.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.10 agnostic-lizard/macro-based-walking.lisp

Dependencies
Parent

agnostic-lizard (system)

Location

macro-based-walking.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.11 agnostic-lizard/local-variables.lisp

Dependencies
Parent

agnostic-lizard (system)

Location

local-variables.lisp

Packages

agnostic-lizard-lexenv-wrapper

Exported Definitions
Internal Definitions

Previous: , Up: Lisp files   [Contents][Index]

3.1.12 agnostic-lizard/wrapping-reader.lisp

Dependency

package.lisp (file)

Parent

agnostic-lizard (system)

Location

wrapping-reader.lisp

Exported Definitions

Previous: , Up: Files   [Contents][Index]

3.2 Other


Next: , Previous: , Up: Other files   [Contents][Index]

3.2.1 agnostic-lizard/README

Parent

agnostic-lizard (system)

Location

README


Next: , Previous: , Up: Other files   [Contents][Index]

3.2.2 agnostic-lizard/AUTHORS

Parent

agnostic-lizard (system)

Location

AUTHORS


Next: , Previous: , Up: Other files   [Contents][Index]

3.2.3 agnostic-lizard/COPYING

Parent

agnostic-lizard (system)

Location

COPYING


Next: , Previous: , Up: Other files   [Contents][Index]

3.2.4 agnostic-lizard/gpl-3.0.txt

Parent

agnostic-lizard (system)

Location

gpl-3.0.txt


Previous: , Up: Other files   [Contents][Index]

3.2.5 agnostic-lizard/examples.lisp

Parent

agnostic-lizard (system)

Location

examples.lisp


Next: , Previous: , Up: Top   [Contents][Index]

4 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

4.1 agnostic-lizard

Source

package.lisp (file)

Use List

common-lisp

Used By List

agnostic-lizard-lexenv-wrapper

Exported Definitions
Internal Definitions

Previous: , Up: Packages   [Contents][Index]

4.2 agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Use List
Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

5.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.1 Macros

Macro: locfunc NAME &rest ARGS
Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Macro: locvar NAME &optional VALUE
Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Macro: macro-macroexpand-all FORM &rest HANDLER-DEFINITIONS &key ON-EVERY-FORM ON-MACRO-WALKER-CREATE-MACRO

Produce code returning the full macroexpansion of the form in the current lexical environment.
Optionally, run handlers. :on-every-form will be run before quoting and wrapping in environment handling helpers.

Package

agnostic-lizard

Source

macro-based-walking.lisp (file)

Macro: macro-walk-form FORM &rest HANDLER-DEFINITIONS

Walk the form inside the current lexical environment using the handlers from handler-definitions. See walk-form for details about handlers.
The resulting form after walking is returned as the macroexpansion.

Package

agnostic-lizard

Source

macro-based-walking.lisp (file)

Macro: with-saved-lexenvs FORM

Walk the form wrapping each expression into saving of the lexical environment

Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Macro: with-wrap-every-form-reader CALLBACK &body BODY

Execute body using a modified readtable so that every top-level form read by the reader is modified using the callback

Package

agnostic-lizard

Source

wrapping-reader.lisp (file)

Macro: wrap-rest-of-input CALLBACK

Modify each top-level form in the rest of the current file with the callback

Package

agnostic-lizard

Source

wrapping-reader.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.2 Functions

Function: install-wrap-every-form-reader CALLBACK

Add an entry to the readtable that reads top-level forms normally, then applies the callback to each form

Package

agnostic-lizard

Source

wrapping-reader.lisp (file)

Function: lexenv-cursor &optional N REL
Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Function: list-locfuncs &optional N
Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Function: list-locvars &optional N
Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Function: macroexpand-all FORM &optional ENV &key NAMES NEVER-PASS-FALLBACK-ENV

Recursively expand all macro calls in form with initial environment described by env

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Function: metaenv-ensure-name-from-environment METAENV NAME ENVIRONMENT
Package

agnostic-lizard

Source

lexenv.lisp (file)

Function: metaenv-ensure-names-from-environment METAENV NAMES ENVIRONMENT
Package

agnostic-lizard

Source

lexenv.lisp (file)

Function: pry &key REASON

Launch an interactive debugging session

Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Function: walk-form FORM ENV &rest HANDLER-DEFINITIONS

Walk the form inside the environment described by env using the handlers from handler-definitions.
Handlers get a form and a walker-metaenv environment description.
The return value of a handler is used instead of the form passed to the handler during further processing.

Handlers can be:
:on-every-form-pre — called before processing each form in an executable position
:on-macroexpanded-form — called for each form after macroexpanding its top operation; hardwired macros are passed unexpanded :on-special-form-pre — called before processing a special form or a hardwired macro
:on-function-form-pre — called before processing a function call
:on-special-form — called after processing a special form or a hardwired macro
:on-every-atom — called after processing a form expanded to an atom
:on-function-form — called after processing a function call
:on-every-form — called after expanding each form in an executable position

env can be metaenv or walker-metaenv

Package

agnostic-lizard

Source

generic-walking.lisp (file)

Function: wrap-every-form-reader CALLBACK NORMAL-READTABLE

Prepare a special reader for the readtable that reads every top-level form using normal-readtable, then applies the callback to the form

Package

agnostic-lizard

Source

wrapping-reader.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.3 Generic functions

Generic Function: metaenv-blocks OBJ

Query the list of defined blocks from a metaenv object

Package

agnostic-lizard

Source

metaenv.lisp (file)

Writer

(setf metaenv-blocks) (generic function)

Methods
Method: metaenv-blocks (METAENV metaenv)

automatically generated reader method

Method: metaenv-blocks OBJ
Generic Function: (setf metaenv-blocks) NEW-VALUE OBJECT
Package

agnostic-lizard

Reader

metaenv-blocks (generic function)

Methods
Method: (setf metaenv-blocks) NEW-VALUE (METAENV metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-function-like-entries OBJ

Query the list of function-like entries from a metaenv object

Package

agnostic-lizard

Source

metaenv.lisp (file)

Writer

(setf metaenv-function-like-entries) (generic function)

Methods
Method: metaenv-function-like-entries (METAENV metaenv)

automatically generated reader method

Method: metaenv-function-like-entries OBJ
Generic Function: (setf metaenv-function-like-entries) NEW-VALUE OBJECT
Package

agnostic-lizard

Reader

metaenv-function-like-entries (generic function)

Methods
Method: (setf metaenv-function-like-entries) NEW-VALUE (METAENV metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-macroexpand-all FORM ENV

Expand all macros on all levels of form in the environment env

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Methods
Method: metaenv-macroexpand-all FORM (ENV macro-walker-metaenv) around
Source

macro-based-walking.lisp (file)

Method: metaenv-macroexpand-all FORM (ENV walker-metaenv)
Source

generic-walking.lisp (file)

Method: metaenv-macroexpand-all FORM (ENV metaenv)
Method: metaenv-macroexpand-all FORM (ENV (eql nil))
Generic Function: metaenv-tags OBJ

Query the list of defined tags from a metaenv object

Package

agnostic-lizard

Source

metaenv.lisp (file)

Writer

(setf metaenv-tags) (generic function)

Methods
Method: metaenv-tags (METAENV metaenv)

automatically generated reader method

Method: metaenv-tags OBJ
Generic Function: (setf metaenv-tags) NEW-VALUE OBJECT
Package

agnostic-lizard

Reader

metaenv-tags (generic function)

Methods
Method: (setf metaenv-tags) NEW-VALUE (METAENV metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-variable-like-entries OBJ

Query the list of variable-like entries from a metaenv object

Package

agnostic-lizard

Source

metaenv.lisp (file)

Writer

(setf metaenv-variable-like-entries) (generic function)

Methods
Method: metaenv-variable-like-entries (METAENV metaenv)

automatically generated reader method

Method: metaenv-variable-like-entries OBJ
Generic Function: (setf metaenv-variable-like-entries) NEW-VALUE OBJECT
Package

agnostic-lizard

Reader

metaenv-variable-like-entries (generic function)

Methods
Method: (setf metaenv-variable-like-entries) NEW-VALUE (METAENV metaenv)

automatically generated writer method

Source

metaenv.lisp (file)


Previous: , Up: Exported definitions   [Contents][Index]

5.1.4 Classes

Class: macro-walker-metaenv ()

A version of walker-metaenv that can store additional information for expanding to a form with macro calls. This approach allows to use Common Lisp implementation’s own handling of environment.
We still keep track of environment just for portable access to the list of discovered lexical environment entries.

Package

agnostic-lizard

Source

metaenv.lisp (file)

Direct superclasses

walker-metaenv (class)

Direct methods
Direct slots
Slot: create-macro

Whether to do expansion or just create a macro call that will be able to get proper environment

Initargs

:create-macro

Initform

t

Readers

metaenv-create-macro (generic function)

Writers

(setf metaenv-create-macro) (generic function)

Slot: recursive-label

A label to distinguish the forms freshly created in relation to the current environment.

Initargs

:recursive-label

Initform

(gensym)

Readers

metaenv-recursive-label (generic function)

Writers

(setf metaenv-recursive-label) (generic function)

Slot: on-macro-walker-create-macro

A handler invoked when macro-walker creates a new macro

Initargs

:on-macro-walker-create-macro

Initform

(quote values)

Readers

metaenv-on-macro-walker-create-macro (generic function)

Writers

(setf metaenv-on-macro-walker-create-macro) (generic function)

Class: metaenv ()

The basic object holding the lexical environment data for macroexpansion

Package

agnostic-lizard

Source

metaenv.lisp (file)

Direct superclasses

standard-object (class)

Direct subclasses

walker-metaenv (class)

Direct methods
Direct slots
Slot: function-like
Initargs

:fn, :fun, :func, :function-like

Readers

metaenv-function-like-entries (generic function)

Writers

(setf metaenv-function-like-entries) (generic function)

Slot: variable-like
Initargs

:var, :variable-like

Readers

metaenv-variable-like-entries (generic function)

Writers

(setf metaenv-variable-like-entries) (generic function)

Slot: blocks
Initargs

:block, :blocks

Readers

metaenv-blocks (generic function)

Writers

(setf metaenv-blocks) (generic function)

Slot: tags
Initargs

:tag, :tags

Readers

metaenv-tags (generic function)

Writers

(setf metaenv-tags) (generic function)

Slot: fallback-env

A slot for storing environment obtained via an &environment parameter

Initargs

:env, :fallback-env

Readers

metaenv-fallback-env (generic function)

Writers

(setf metaenv-fallback-env) (generic function)

Slot: never-pass-fallback-env

A slot storing the policy switch for never passing the fallback env to macroexpand-1

Initargs

:never-pass-fallback-env

Readers

metaenv-never-pass-fallback-env (generic function)

Writers

(setf metaenv-never-pass-fallback-env) (generic function)

Class: walker-metaenv ()

An extended walker environment object.
Here we keep a few handlers to allow transformations of the code during walking.

Package

agnostic-lizard

Source

metaenv.lisp (file)

Direct superclasses

metaenv (class)

Direct subclasses

macro-walker-metaenv (class)

Direct methods
Direct slots
Slot: on-function-form
Initargs

:on-function-form

Initform

(function values)

Readers

metaenv-on-function-form (generic function)

Writers

(setf metaenv-on-function-form) (generic function)

Slot: on-function-form-pre
Initargs

:on-function-form-pre

Initform

(function values)

Readers

metaenv-on-function-form-pre (generic function)

Writers

(setf metaenv-on-function-form-pre) (generic function)

Slot: on-every-atom
Initargs

:on-every-atom

Initform

(function values)

Readers

metaenv-on-every-atom (generic function)

Writers

(setf metaenv-on-every-atom) (generic function)

Slot: on-every-form
Initargs

:on-every-form

Initform

(function values)

Readers

metaenv-on-every-form (generic function)

Writers

(setf metaenv-on-every-form) (generic function)

Slot: on-every-form-pre
Initargs

:on-every-form-pre

Initform

(function values)

Readers

metaenv-on-every-form-pre (generic function)

Writers

(setf metaenv-on-every-form-pre) (generic function)

Slot: on-special-form-pre
Initargs

:on-special-form-pre

Initform

(function values)

Readers

metaenv-on-special-form-pre (generic function)

Writers

(setf metaenv-on-special-form-pre) (generic function)

Slot: on-special-form
Initargs

:on-special-form

Initform

(function values)

Readers

metaenv-on-special-form (generic function)

Writers

(setf metaenv-on-special-form) (generic function)

Slot: on-macroexpanded-form
Initargs

:on-macroexpanded-form

Initform

(function values)

Readers

metaenv-on-macroexpanded-form (generic function)

Writers

(setf metaenv-on-macroexpanded-form) (generic function)


Previous: , Up: Definitions   [Contents][Index]

5.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.1 Special variables

Special Variable: *hardwired-operators*

The list of hardwired macros; they are code-walked without macroexpansion

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Special Variable: *saved-lexenv-cursor*

The current position on the lexenv stack

Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)

Special Variable: *saved-lexenvs*

A stack of saved lexical environments

Package

agnostic-lizard-lexenv-wrapper

Source

local-variables.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.2 Macros

Macro: define-handle-nfunction ()
Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Macro: eval-with-current-environment (VAR) &body CODE

Evaluate code in a lexical environment where var is bound to the lexical environment object corresponding to the macro call position

Package

agnostic-lizard

Source

utils.lisp (file)

Macro: metaenv-macro-macroexpand-all FORM &optional EXTRA-ENV

A helper macro for recapturing environment

Package

agnostic-lizard

Source

macro-based-walking.lisp (file)

Macro: metaenv-macro-macroexpand-all-wrapper FORM ENV

This wrapper does nothing but protects form from metaenv-macro-walker-turn-to-quoted

Package

agnostic-lizard

Source

macro-based-walking.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.3 Functions

Function: environment-entries-for-name NAME ENVIRONMENT

Create metaenv entries corresponding to environment for name.

Returns a list: variable-like entry, function-like entry.

Package

agnostic-lizard

Source

lexenv.lisp (file)

Function: flet-wrap NAME BODY

Wrap a chunk of code with a pseudo-flet;
it is for macroexpansion only, so there is no body

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: go-tag-p X
Package

agnostic-lizard

Source

utils.lisp (file)

Function: lambda-list-variable-names L
Package

agnostic-lizard

Source

utils.lisp (file)

Function: let-wrap NAME BODY

Wrap a chunk of code with a pseudo-let;
it is for macroexpansion only, so there is no body;
some globals don’t like to ever be bound to nil, so try a global value first

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: macrolet-code-wrap NAME CODE BODY

Wrap a chunk of code with a macrolet given a literal macrolet definition

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: macrolet-wrap NAME FUNCTION BODY

Wrap a chunk of code with a macrolet defined by a macro-function

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: metaenv-irrelevant-for-macroexpand OBJ

Check if the metaenv obj is the same as the fallback environment for macroexpand-1

Package

agnostic-lizard

Source

metaenv.lisp (file)

Function: metaenv-macro-walker-turn-to-quoted FORM ENV &optional CDR-BRANCH

Convert a partially walked form into code producing the expansion of the form after the walk is completed

Package

agnostic-lizard

Source

macro-based-walking.lisp (file)

Function: metaenv-macroexpand FORM ENV

Perform full macroexpansion of the top level of the form in the environment env

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Function: metaenv-map-macroexpand-all FORMS ENV

Apply metaenv-macroexpand-all to all the forms using the same env

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Function: metaenv-map-macroexpand-all-after-declarations ENTRIES ENV ENABLE-DOCSTRING

Apply metaenv-map-macroexpand-all to all the forms among the entries, but use the declarations as-is

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Function: metaenv-wrap-form OBJ FORM

Wrap the form into environment-setting wrappers corresponding to all the entries of obj.

Package

agnostic-lizard

Source

metaenv.lisp (file)

Function: separate-declarations ENTRIES &key ENABLE-DOCSTRING

Separate a list of entries into declarations and forms, with a possible docstring, if enabled

Package

agnostic-lizard

Source

utils.lisp (file)

Function: symbol-macrolet-wrap NAME EXPANSION BODY

Wrap a chunk of code with a symbol-macrolet

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: with-metaenv-built-env OBJ VAR CODE

Evaluate code in the lexical environment where var is bound to the lexical environment object described by obj

Package

agnostic-lizard

Source

metaenv.lisp (file)

Function: wrap-block-env ENTRIES FORM

Wrap a form to make sure all the blocks listed in entries are defined

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: wrap-function-like-env ENTRIES FORM

Wrap a form using the function-like entries.
An entry can be:
(name nil) — not defined in this environment
(name (:plain)) — an flet
(name (:macro macro-function)) — a macrolet, defined by a macro-function
(name (:macro-from environment)) — a macrolet that should be copied from an environment object (name (:macro-code)) — a macrolet, defined by literal macrolet code
(name (:macro-function-code)) — a macrolet, defined by the code to define the macro-function

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: wrap-tag-env ENTRIES FORM

Wrap a form to make sure all the tags listed in entries are defined

Package

agnostic-lizard

Source

env-wrappers.lisp (file)

Function: wrap-variable-like-env ENTRIES FORM

Wrap a form using variable-like entries.
An entry can be:
(name nil) — not defined in this environment
(name (:plain)) — a let
(name (:macro expansion)) — a symbol-macro, defined by the expansion
(name (:macro-from environment)) — a symbol-macro to be copied from an environment

Package

agnostic-lizard

Source

env-wrappers.lisp (file)


Previous: , Up: Internal definitions   [Contents][Index]

5.2.4 Generic functions

Generic Function: metaenv-add-block OBJ NAME

Add a block into the metaenv object.

Package

agnostic-lizard

Source

metaenv.lisp (file)

Methods
Method: metaenv-add-block (OBJ metaenv) NAME
Method: metaenv-add-block OBJ NAME
Generic Function: metaenv-add-function-like-entry OBJ ENTRY

Add a function-like entry into the metaenv object.
The entry should follow the format described in wrap-function-like-env. The entry will shadow previously available entries with the same name.

Package

agnostic-lizard

Source

metaenv.lisp (file)

Methods
Method: metaenv-add-function-like-entry (OBJ metaenv) ENTRY
Method: metaenv-add-function-like-entry OBJ ENTRY
Generic Function: metaenv-add-tag OBJ NAME

Add a tag into the metaenv object.

Package

agnostic-lizard

Source

metaenv.lisp (file)

Methods
Method: metaenv-add-tag (OBJ metaenv) NAME
Method: metaenv-add-tag OBJ NAME
Generic Function: metaenv-add-variable-like-entry OBJ ENTRY

Add a variable-like entry into the metaenv object.
The entry should follow the format described in wrap-variable-like-env. The entry will shadow previously available entries with the same name.

Package

agnostic-lizard

Source

metaenv.lisp (file)

Methods
Method: metaenv-add-variable-like-entry (OBJ metaenv) ENTRY
Method: metaenv-add-variable-like-entry OBJ ENTRY
Generic Function: metaenv-clone OBJ &optional OVERRIDES

Create a copy of a metaenv-related object

Package

agnostic-lizard

Source

metaenv.lisp (file)

Methods
Method: metaenv-clone (OBJ macro-walker-metaenv) &optional OVERRIDES
Method: metaenv-clone (OBJ walker-metaenv) &optional OVERRIDES
Method: metaenv-clone (OBJ metaenv) &optional OVERRIDES
Generic Function: metaenv-clone-args OBJ

The needed initargs for copying a metaenv-related object

Package

agnostic-lizard

Source

metaenv.lisp (file)

Methods
Method: metaenv-clone-args (OBJ macro-walker-metaenv) around
Method: metaenv-clone-args (OBJ walker-metaenv) around
Method: metaenv-clone-args (OBJ metaenv)
Generic Function: metaenv-create-macro OBJECT
Generic Function: (setf metaenv-create-macro) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-create-macro (MACRO-WALKER-METAENV macro-walker-metaenv)
Method: (setf metaenv-create-macro) NEW-VALUE (MACRO-WALKER-METAENV macro-walker-metaenv)

Whether to do expansion or just create a macro call that will be able to get proper environment

Source

metaenv.lisp (file)

Generic Function: metaenv-expand-lambda-expression DESIGNATOR ENV

Expand a lambda expression or a named-lambda expression

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-expand-lambda-expression DESIGNATOR ENV
Generic Function: metaenv-fallback-env OBJ

Query the fallback environment object from a metaenv object

Package

agnostic-lizard

Source

metaenv.lisp (file)

Writer

(setf metaenv-fallback-env) (generic function)

Methods
Method: metaenv-fallback-env (METAENV metaenv)

A slot for storing environment obtained via an &environment parameter

Method: metaenv-fallback-env OBJ
Generic Function: (setf metaenv-fallback-env) NEW-VALUE OBJECT
Package

agnostic-lizard

Reader

metaenv-fallback-env (generic function)

Methods
Method: (setf metaenv-fallback-env) NEW-VALUE (METAENV metaenv)

A slot for storing environment obtained via an &environment parameter

Source

metaenv.lisp (file)

Generic Function: metaenv-macroexpand-1 FORM ENV

Do a single step of macroexpansion on the top level of form in the environment env

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Methods
Method: metaenv-macroexpand-1 FORM (ENV macro-walker-metaenv)
Source

macro-based-walking.lisp (file)

Method: metaenv-macroexpand-1 X ENV
Generic Function: metaenv-macroexpand-all-special-form OPERATOR FORM ENV

A handler for dispatching macroexpand-all handling of special forms and some macros

Package

agnostic-lizard

Source

pure-expansion.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form (OPERATOR (eql cond)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql multiple-value-bind)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql handler-bind)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql labels)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql defmethod)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql defun)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql defmacro)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql flet)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql symbol-macrolet)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql macrolet)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql progv)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql load-time-value)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql locally)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql function)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql eval-when)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql the)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql return-from)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql go)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql quote)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql unwind-protect)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql multiple-value-call)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql multiple-value-prog1)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql catch)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql throw)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql progn)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql if)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql tagbody)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql setq)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql let*)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql let)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form (OPERATOR (eql block)) FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form OPERATOR FORM ENV
Source

special-form-handlers.lisp (file)

Method: metaenv-macroexpand-all-special-form OPERATOR FORM (ENV (eql nil))
Generic Function: metaenv-macroexpand-all-special-form-defun OPERATOR FORM ENV

Expand a form that is similar to defun

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form-defun OPERATOR FORM ENV
Generic Function: metaenv-macroexpand-all-special-form-flet OPERATOR FORM ENV

Expand a form similar to flet

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form-flet OPERATOR FORM ENV
Generic Function: metaenv-macroexpand-all-special-form-function OPERATOR FORM ENV

Expand a form similar to function

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form-function OPERATOR FORM ENV
Generic Function: metaenv-macroexpand-all-special-form-let OPERATOR FORM ENV

Expand a form that is similar to let

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form-let OPERATOR FORM ENV
Generic Function: metaenv-macroexpand-all-special-form-macrolet OPERATOR FORM ENV

Expand a form similar to macrolet

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form-macrolet OPERATOR FORM ENV
Generic Function: metaenv-macroexpand-all-special-form-progn OPERATOR FORM ENV

Expand a form similar to a funcall or to a progn

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form-progn OPERATOR FORM ENV
Generic Function: metaenv-macroexpand-all-special-form-the OPERATOR FORM ENV

Expand a special form similar to the

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-all-special-form-the OPERATOR FORM ENV
Generic Function: metaenv-macroexpand-lambdalist ENTRIES ENV SELF-VISIBLE WAIT-FOR-KEYWORD

Macroexpand assignments/default values in entries and destructively add the names to env

Package

agnostic-lizard

Source

special-form-handlers.lisp (file)

Methods
Method: metaenv-macroexpand-lambdalist (ENTRIES list) ENV SELF-VISIBLE WAIT-FOR-KEYWORD
Generic Function: metaenv-never-pass-fallback-env OBJ

Query whether the fallback environment object should never be passed to macroexpand-1

Package

agnostic-lizard

Source

metaenv.lisp (file)

Writer

(setf metaenv-never-pass-fallback-env) (generic function)

Methods
Method: metaenv-never-pass-fallback-env (METAENV metaenv)

A slot storing the policy switch for never passing the fallback env to macroexpand-1

Method: metaenv-never-pass-fallback-env OBJ
Generic Function: (setf metaenv-never-pass-fallback-env) NEW-VALUE OBJECT
Package

agnostic-lizard

Reader

metaenv-never-pass-fallback-env (generic function)

Methods
Method: (setf metaenv-never-pass-fallback-env) NEW-VALUE (METAENV metaenv)

A slot storing the policy switch for never passing the fallback env to macroexpand-1

Source

metaenv.lisp (file)

Generic Function: metaenv-on-every-atom OBJECT
Generic Function: (setf metaenv-on-every-atom) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-every-atom (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-every-atom) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-on-every-form OBJECT
Generic Function: (setf metaenv-on-every-form) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-every-form (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-every-form) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-on-every-form-pre OBJECT
Generic Function: (setf metaenv-on-every-form-pre) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-every-form-pre (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-every-form-pre) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-on-function-form OBJECT
Generic Function: (setf metaenv-on-function-form) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-function-form (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-function-form) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-on-function-form-pre OBJECT
Generic Function: (setf metaenv-on-function-form-pre) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-function-form-pre (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-function-form-pre) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-on-macro-walker-create-macro OBJECT
Generic Function: (setf metaenv-on-macro-walker-create-macro) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-macro-walker-create-macro (MACRO-WALKER-METAENV macro-walker-metaenv)
Method: (setf metaenv-on-macro-walker-create-macro) NEW-VALUE (MACRO-WALKER-METAENV macro-walker-metaenv)

A handler invoked when macro-walker creates a new macro

Source

metaenv.lisp (file)

Generic Function: metaenv-on-macroexpanded-form OBJECT
Generic Function: (setf metaenv-on-macroexpanded-form) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-macroexpanded-form (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-macroexpanded-form) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-on-special-form OBJECT
Generic Function: (setf metaenv-on-special-form) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-special-form (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-special-form) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-on-special-form-pre OBJECT
Generic Function: (setf metaenv-on-special-form-pre) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-on-special-form-pre (WALKER-METAENV walker-metaenv)

automatically generated reader method

Source

metaenv.lisp (file)

Method: (setf metaenv-on-special-form-pre) NEW-VALUE (WALKER-METAENV walker-metaenv)

automatically generated writer method

Source

metaenv.lisp (file)

Generic Function: metaenv-recursive-label OBJECT
Generic Function: (setf metaenv-recursive-label) NEW-VALUE OBJECT
Package

agnostic-lizard

Methods
Method: metaenv-recursive-label OBJ
Source

metaenv.lisp (file)

Method: metaenv-recursive-label (MACRO-WALKER-METAENV macro-walker-metaenv)
Method: (setf metaenv-recursive-label) NEW-VALUE (MACRO-WALKER-METAENV macro-walker-metaenv)

A label to distinguish the forms freshly created in relation to the current environment.

Source

metaenv.lisp (file)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   A   F   L   O  
Index Entry  Section

A
agnostic-lizard.asd: The agnostic-lizard<dot>asd file
agnostic-lizard/AUTHORS: The agnostic-lizard/authors file
agnostic-lizard/COPYING: The agnostic-lizard/copying file
agnostic-lizard/env-wrappers.lisp: The agnostic-lizard/env-wrappers<dot>lisp file
agnostic-lizard/examples.lisp: The agnostic-lizard/examples<dot>lisp file
agnostic-lizard/generic-walking.lisp: The agnostic-lizard/generic-walking<dot>lisp file
agnostic-lizard/gpl-3.0.txt: The agnostic-lizard/gpl-3<dot>0<dot>txt file
agnostic-lizard/lexenv.lisp: The agnostic-lizard/lexenv<dot>lisp file
agnostic-lizard/local-variables.lisp: The agnostic-lizard/local-variables<dot>lisp file
agnostic-lizard/macro-based-walking.lisp: The agnostic-lizard/macro-based-walking<dot>lisp file
agnostic-lizard/metaenv.lisp: The agnostic-lizard/metaenv<dot>lisp file
agnostic-lizard/package.lisp: The agnostic-lizard/package<dot>lisp file
agnostic-lizard/pure-expansion.lisp: The agnostic-lizard/pure-expansion<dot>lisp file
agnostic-lizard/README: The agnostic-lizard/readme file
agnostic-lizard/special-form-handlers.lisp: The agnostic-lizard/special-form-handlers<dot>lisp file
agnostic-lizard/utils.lisp: The agnostic-lizard/utils<dot>lisp file
agnostic-lizard/wrapping-reader.lisp: The agnostic-lizard/wrapping-reader<dot>lisp file

F
File, Lisp, agnostic-lizard.asd: The agnostic-lizard<dot>asd file
File, Lisp, agnostic-lizard/env-wrappers.lisp: The agnostic-lizard/env-wrappers<dot>lisp file
File, Lisp, agnostic-lizard/generic-walking.lisp: The agnostic-lizard/generic-walking<dot>lisp file
File, Lisp, agnostic-lizard/lexenv.lisp: The agnostic-lizard/lexenv<dot>lisp file
File, Lisp, agnostic-lizard/local-variables.lisp: The agnostic-lizard/local-variables<dot>lisp file
File, Lisp, agnostic-lizard/macro-based-walking.lisp: The agnostic-lizard/macro-based-walking<dot>lisp file
File, Lisp, agnostic-lizard/metaenv.lisp: The agnostic-lizard/metaenv<dot>lisp file
File, Lisp, agnostic-lizard/package.lisp: The agnostic-lizard/package<dot>lisp file
File, Lisp, agnostic-lizard/pure-expansion.lisp: The agnostic-lizard/pure-expansion<dot>lisp file
File, Lisp, agnostic-lizard/special-form-handlers.lisp: The agnostic-lizard/special-form-handlers<dot>lisp file
File, Lisp, agnostic-lizard/utils.lisp: The agnostic-lizard/utils<dot>lisp file
File, Lisp, agnostic-lizard/wrapping-reader.lisp: The agnostic-lizard/wrapping-reader<dot>lisp file
File, other, agnostic-lizard/AUTHORS: The agnostic-lizard/authors file
File, other, agnostic-lizard/COPYING: The agnostic-lizard/copying file
File, other, agnostic-lizard/examples.lisp: The agnostic-lizard/examples<dot>lisp file
File, other, agnostic-lizard/gpl-3.0.txt: The agnostic-lizard/gpl-3<dot>0<dot>txt file
File, other, agnostic-lizard/README: The agnostic-lizard/readme file

L
Lisp File, agnostic-lizard.asd: The agnostic-lizard<dot>asd file
Lisp File, agnostic-lizard/env-wrappers.lisp: The agnostic-lizard/env-wrappers<dot>lisp file
Lisp File, agnostic-lizard/generic-walking.lisp: The agnostic-lizard/generic-walking<dot>lisp file
Lisp File, agnostic-lizard/lexenv.lisp: The agnostic-lizard/lexenv<dot>lisp file
Lisp File, agnostic-lizard/local-variables.lisp: The agnostic-lizard/local-variables<dot>lisp file
Lisp File, agnostic-lizard/macro-based-walking.lisp: The agnostic-lizard/macro-based-walking<dot>lisp file
Lisp File, agnostic-lizard/metaenv.lisp: The agnostic-lizard/metaenv<dot>lisp file
Lisp File, agnostic-lizard/package.lisp: The agnostic-lizard/package<dot>lisp file
Lisp File, agnostic-lizard/pure-expansion.lisp: The agnostic-lizard/pure-expansion<dot>lisp file
Lisp File, agnostic-lizard/special-form-handlers.lisp: The agnostic-lizard/special-form-handlers<dot>lisp file
Lisp File, agnostic-lizard/utils.lisp: The agnostic-lizard/utils<dot>lisp file
Lisp File, agnostic-lizard/wrapping-reader.lisp: The agnostic-lizard/wrapping-reader<dot>lisp file

O
Other File, agnostic-lizard/AUTHORS: The agnostic-lizard/authors file
Other File, agnostic-lizard/COPYING: The agnostic-lizard/copying file
Other File, agnostic-lizard/examples.lisp: The agnostic-lizard/examples<dot>lisp file
Other File, agnostic-lizard/gpl-3.0.txt: The agnostic-lizard/gpl-3<dot>0<dot>txt file
Other File, agnostic-lizard/README: The agnostic-lizard/readme file

Jump to:   A   F   L   O  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   (  
D   E   F   G   I   L   M   P   S   W  
Index Entry  Section

(
(setf metaenv-blocks): Exported generic functions
(setf metaenv-blocks): Exported generic functions
(setf metaenv-create-macro): Internal generic functions
(setf metaenv-create-macro): Internal generic functions
(setf metaenv-fallback-env): Internal generic functions
(setf metaenv-fallback-env): Internal generic functions
(setf metaenv-function-like-entries): Exported generic functions
(setf metaenv-function-like-entries): Exported generic functions
(setf metaenv-never-pass-fallback-env): Internal generic functions
(setf metaenv-never-pass-fallback-env): Internal generic functions
(setf metaenv-on-every-atom): Internal generic functions
(setf metaenv-on-every-atom): Internal generic functions
(setf metaenv-on-every-form): Internal generic functions
(setf metaenv-on-every-form): Internal generic functions
(setf metaenv-on-every-form-pre): Internal generic functions
(setf metaenv-on-every-form-pre): Internal generic functions
(setf metaenv-on-function-form): Internal generic functions
(setf metaenv-on-function-form): Internal generic functions
(setf metaenv-on-function-form-pre): Internal generic functions
(setf metaenv-on-function-form-pre): Internal generic functions
(setf metaenv-on-macro-walker-create-macro): Internal generic functions
(setf metaenv-on-macro-walker-create-macro): Internal generic functions
(setf metaenv-on-macroexpanded-form): Internal generic functions
(setf metaenv-on-macroexpanded-form): Internal generic functions
(setf metaenv-on-special-form): Internal generic functions
(setf metaenv-on-special-form): Internal generic functions
(setf metaenv-on-special-form-pre): Internal generic functions
(setf metaenv-on-special-form-pre): Internal generic functions
(setf metaenv-recursive-label): Internal generic functions
(setf metaenv-recursive-label): Internal generic functions
(setf metaenv-tags): Exported generic functions
(setf metaenv-tags): Exported generic functions
(setf metaenv-variable-like-entries): Exported generic functions
(setf metaenv-variable-like-entries): Exported generic functions

D
define-handle-nfunction: Internal macros

E
environment-entries-for-name: Internal functions
eval-with-current-environment: Internal macros

F
flet-wrap: Internal functions
Function, environment-entries-for-name: Internal functions
Function, flet-wrap: Internal functions
Function, go-tag-p: Internal functions
Function, install-wrap-every-form-reader: Exported functions
Function, lambda-list-variable-names: Internal functions
Function, let-wrap: Internal functions
Function, lexenv-cursor: Exported functions
Function, list-locfuncs: Exported functions
Function, list-locvars: Exported functions
Function, macroexpand-all: Exported functions
Function, macrolet-code-wrap: Internal functions
Function, macrolet-wrap: Internal functions
Function, metaenv-ensure-name-from-environment: Exported functions
Function, metaenv-ensure-names-from-environment: Exported functions
Function, metaenv-irrelevant-for-macroexpand: Internal functions
Function, metaenv-macro-walker-turn-to-quoted: Internal functions
Function, metaenv-macroexpand: Internal functions
Function, metaenv-map-macroexpand-all: Internal functions
Function, metaenv-map-macroexpand-all-after-declarations: Internal functions
Function, metaenv-wrap-form: Internal functions
Function, pry: Exported functions
Function, separate-declarations: Internal functions
Function, symbol-macrolet-wrap: Internal functions
Function, walk-form: Exported functions
Function, with-metaenv-built-env: Internal functions
Function, wrap-block-env: Internal functions
Function, wrap-every-form-reader: Exported functions
Function, wrap-function-like-env: Internal functions
Function, wrap-tag-env: Internal functions
Function, wrap-variable-like-env: Internal functions

G
Generic Function, (setf metaenv-blocks): Exported generic functions
Generic Function, (setf metaenv-create-macro): Internal generic functions
Generic Function, (setf metaenv-fallback-env): Internal generic functions
Generic Function, (setf metaenv-function-like-entries): Exported generic functions
Generic Function, (setf metaenv-never-pass-fallback-env): Internal generic functions
Generic Function, (setf metaenv-on-every-atom): Internal generic functions
Generic Function, (setf metaenv-on-every-form): Internal generic functions
Generic Function, (setf metaenv-on-every-form-pre): Internal generic functions
Generic Function, (setf metaenv-on-function-form): Internal generic functions
Generic Function, (setf metaenv-on-function-form-pre): Internal generic functions
Generic Function, (setf metaenv-on-macro-walker-create-macro): Internal generic functions
Generic Function, (setf metaenv-on-macroexpanded-form): Internal generic functions
Generic Function, (setf metaenv-on-special-form): Internal generic functions
Generic Function, (setf metaenv-on-special-form-pre): Internal generic functions
Generic Function, (setf metaenv-recursive-label): Internal generic functions
Generic Function, (setf metaenv-tags): Exported generic functions
Generic Function, (setf metaenv-variable-like-entries): Exported generic functions
Generic Function, metaenv-add-block: Internal generic functions
Generic Function, metaenv-add-function-like-entry: Internal generic functions
Generic Function, metaenv-add-tag: Internal generic functions
Generic Function, metaenv-add-variable-like-entry: Internal generic functions
Generic Function, metaenv-blocks: Exported generic functions
Generic Function, metaenv-clone: Internal generic functions
Generic Function, metaenv-clone-args: Internal generic functions
Generic Function, metaenv-create-macro: Internal generic functions
Generic Function, metaenv-expand-lambda-expression: Internal generic functions
Generic Function, metaenv-fallback-env: Internal generic functions
Generic Function, metaenv-function-like-entries: Exported generic functions
Generic Function, metaenv-macroexpand-1: Internal generic functions
Generic Function, metaenv-macroexpand-all: Exported generic functions
Generic Function, metaenv-macroexpand-all-special-form: Internal generic functions
Generic Function, metaenv-macroexpand-all-special-form-defun: Internal generic functions
Generic Function, metaenv-macroexpand-all-special-form-flet: Internal generic functions
Generic Function, metaenv-macroexpand-all-special-form-function: Internal generic functions
Generic Function, metaenv-macroexpand-all-special-form-let: Internal generic functions
Generic Function, metaenv-macroexpand-all-special-form-macrolet: Internal generic functions
Generic Function, metaenv-macroexpand-all-special-form-progn: Internal generic functions
Generic Function, metaenv-macroexpand-all-special-form-the: Internal generic functions
Generic Function, metaenv-macroexpand-lambdalist: Internal generic functions
Generic Function, metaenv-never-pass-fallback-env: Internal generic functions
Generic Function, metaenv-on-every-atom: Internal generic functions
Generic Function, metaenv-on-every-form: Internal generic functions
Generic Function, metaenv-on-every-form-pre: Internal generic functions
Generic Function, metaenv-on-function-form: Internal generic functions
Generic Function, metaenv-on-function-form-pre: Internal generic functions
Generic Function, metaenv-on-macro-walker-create-macro: Internal generic functions
Generic Function, metaenv-on-macroexpanded-form: Internal generic functions
Generic Function, metaenv-on-special-form: Internal generic functions
Generic Function, metaenv-on-special-form-pre: Internal generic functions
Generic Function, metaenv-recursive-label: Internal generic functions
Generic Function, metaenv-tags: Exported generic functions
Generic Function, metaenv-variable-like-entries: Exported generic functions
go-tag-p: Internal functions

I
install-wrap-every-form-reader: Exported functions

L
lambda-list-variable-names: Internal functions
let-wrap: Internal functions
lexenv-cursor: Exported functions
list-locfuncs: Exported functions
list-locvars: Exported functions
locfunc: Exported macros
locvar: Exported macros

M
Macro, define-handle-nfunction: Internal macros
Macro, eval-with-current-environment: Internal macros
Macro, locfunc: Exported macros
Macro, locvar: Exported macros
Macro, macro-macroexpand-all: Exported macros
Macro, macro-walk-form: Exported macros
Macro, metaenv-macro-macroexpand-all: Internal macros
Macro, metaenv-macro-macroexpand-all-wrapper: Internal macros
Macro, with-saved-lexenvs: Exported macros
Macro, with-wrap-every-form-reader: Exported macros
Macro, wrap-rest-of-input: Exported macros
macro-macroexpand-all: Exported macros
macro-walk-form: Exported macros
macroexpand-all: Exported functions
macrolet-code-wrap: Internal functions
macrolet-wrap: Internal functions
metaenv-add-block: Internal generic functions
metaenv-add-block: Internal generic functions
metaenv-add-block: Internal generic functions
metaenv-add-function-like-entry: Internal generic functions
metaenv-add-function-like-entry: Internal generic functions
metaenv-add-function-like-entry: Internal generic functions
metaenv-add-tag: Internal generic functions
metaenv-add-tag: Internal generic functions
metaenv-add-tag: Internal generic functions
metaenv-add-variable-like-entry: Internal generic functions
metaenv-add-variable-like-entry: Internal generic functions
metaenv-add-variable-like-entry: Internal generic functions
metaenv-blocks: Exported generic functions
metaenv-blocks: Exported generic functions
metaenv-blocks: Exported generic functions
metaenv-clone: Internal generic functions
metaenv-clone: Internal generic functions
metaenv-clone: Internal generic functions
metaenv-clone: Internal generic functions
metaenv-clone-args: Internal generic functions
metaenv-clone-args: Internal generic functions
metaenv-clone-args: Internal generic functions
metaenv-clone-args: Internal generic functions
metaenv-create-macro: Internal generic functions
metaenv-create-macro: Internal generic functions
metaenv-ensure-name-from-environment: Exported functions
metaenv-ensure-names-from-environment: Exported functions
metaenv-expand-lambda-expression: Internal generic functions
metaenv-expand-lambda-expression: Internal generic functions
metaenv-fallback-env: Internal generic functions
metaenv-fallback-env: Internal generic functions
metaenv-fallback-env: Internal generic functions
metaenv-function-like-entries: Exported generic functions
metaenv-function-like-entries: Exported generic functions
metaenv-function-like-entries: Exported generic functions
metaenv-irrelevant-for-macroexpand: Internal functions
metaenv-macro-macroexpand-all: Internal macros
metaenv-macro-macroexpand-all-wrapper: Internal macros
metaenv-macro-walker-turn-to-quoted: Internal functions
metaenv-macroexpand: Internal functions
metaenv-macroexpand-1: Internal generic functions
metaenv-macroexpand-1: Internal generic functions
metaenv-macroexpand-1: Internal generic functions
metaenv-macroexpand-all: Exported generic functions
metaenv-macroexpand-all: Exported generic functions
metaenv-macroexpand-all: Exported generic functions
metaenv-macroexpand-all: Exported generic functions
metaenv-macroexpand-all: Exported generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form: Internal generic functions
metaenv-macroexpand-all-special-form-defun: Internal generic functions
metaenv-macroexpand-all-special-form-defun: Internal generic functions
metaenv-macroexpand-all-special-form-flet: Internal generic functions
metaenv-macroexpand-all-special-form-flet: Internal generic functions
metaenv-macroexpand-all-special-form-function: Internal generic functions
metaenv-macroexpand-all-special-form-function: Internal generic functions
metaenv-macroexpand-all-special-form-let: Internal generic functions
metaenv-macroexpand-all-special-form-let: Internal generic functions
metaenv-macroexpand-all-special-form-macrolet: Internal generic functions
metaenv-macroexpand-all-special-form-macrolet: Internal generic functions
metaenv-macroexpand-all-special-form-progn: Internal generic functions
metaenv-macroexpand-all-special-form-progn: Internal generic functions
metaenv-macroexpand-all-special-form-the: Internal generic functions
metaenv-macroexpand-all-special-form-the: Internal generic functions
metaenv-macroexpand-lambdalist: Internal generic functions
metaenv-macroexpand-lambdalist: Internal generic functions
metaenv-map-macroexpand-all: Internal functions
metaenv-map-macroexpand-all-after-declarations: Internal functions
metaenv-never-pass-fallback-env: Internal generic functions
metaenv-never-pass-fallback-env: Internal generic functions
metaenv-never-pass-fallback-env: Internal generic functions
metaenv-on-every-atom: Internal generic functions
metaenv-on-every-atom: Internal generic functions
metaenv-on-every-form: Internal generic functions
metaenv-on-every-form: Internal generic functions
metaenv-on-every-form-pre: Internal generic functions
metaenv-on-every-form-pre: Internal generic functions
metaenv-on-function-form: Internal generic functions
metaenv-on-function-form: Internal generic functions
metaenv-on-function-form-pre: Internal generic functions
metaenv-on-function-form-pre: Internal generic functions
metaenv-on-macro-walker-create-macro: Internal generic functions
metaenv-on-macro-walker-create-macro: Internal generic functions
metaenv-on-macroexpanded-form: Internal generic functions
metaenv-on-macroexpanded-form: Internal generic functions
metaenv-on-special-form: Internal generic functions
metaenv-on-special-form: Internal generic functions
metaenv-on-special-form-pre: Internal generic functions
metaenv-on-special-form-pre: Internal generic functions
metaenv-recursive-label: Internal generic functions
metaenv-recursive-label: Internal generic functions
metaenv-recursive-label: Internal generic functions
metaenv-tags: Exported generic functions
metaenv-tags: Exported generic functions
metaenv-tags: Exported generic functions
metaenv-variable-like-entries: Exported generic functions
metaenv-variable-like-entries: Exported generic functions
metaenv-variable-like-entries: Exported generic functions
metaenv-wrap-form: Internal functions
Method, (setf metaenv-blocks): Exported generic functions
Method, (setf metaenv-create-macro): Internal generic functions
Method, (setf metaenv-fallback-env): Internal generic functions
Method, (setf metaenv-function-like-entries): Exported generic functions
Method, (setf metaenv-never-pass-fallback-env): Internal generic functions
Method, (setf metaenv-on-every-atom): Internal generic functions
Method, (setf metaenv-on-every-form): Internal generic functions
Method, (setf metaenv-on-every-form-pre): Internal generic functions
Method, (setf metaenv-on-function-form): Internal generic functions
Method, (setf metaenv-on-function-form-pre): Internal generic functions
Method, (setf metaenv-on-macro-walker-create-macro): Internal generic functions
Method, (setf metaenv-on-macroexpanded-form): Internal generic functions
Method, (setf metaenv-on-special-form): Internal generic functions
Method, (setf metaenv-on-special-form-pre): Internal generic functions
Method, (setf metaenv-recursive-label): Internal generic functions
Method, (setf metaenv-tags): Exported generic functions
Method, (setf metaenv-variable-like-entries): Exported generic functions
Method, metaenv-add-block: Internal generic functions
Method, metaenv-add-block: Internal generic functions
Method, metaenv-add-function-like-entry: Internal generic functions
Method, metaenv-add-function-like-entry: Internal generic functions
Method, metaenv-add-tag: Internal generic functions
Method, metaenv-add-tag: Internal generic functions
Method, metaenv-add-variable-like-entry: Internal generic functions
Method, metaenv-add-variable-like-entry: Internal generic functions
Method, metaenv-blocks: Exported generic functions
Method, metaenv-blocks: Exported generic functions
Method, metaenv-clone: Internal generic functions
Method, metaenv-clone: Internal generic functions
Method, metaenv-clone: Internal generic functions
Method, metaenv-clone-args: Internal generic functions
Method, metaenv-clone-args: Internal generic functions
Method, metaenv-clone-args: Internal generic functions
Method, metaenv-create-macro: Internal generic functions
Method, metaenv-expand-lambda-expression: Internal generic functions
Method, metaenv-fallback-env: Internal generic functions
Method, metaenv-fallback-env: Internal generic functions
Method, metaenv-function-like-entries: Exported generic functions
Method, metaenv-function-like-entries: Exported generic functions
Method, metaenv-macroexpand-1: Internal generic functions
Method, metaenv-macroexpand-1: Internal generic functions
Method, metaenv-macroexpand-all: Exported generic functions
Method, metaenv-macroexpand-all: Exported generic functions
Method, metaenv-macroexpand-all: Exported generic functions
Method, metaenv-macroexpand-all: Exported generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form: Internal generic functions
Method, metaenv-macroexpand-all-special-form-defun: Internal generic functions
Method, metaenv-macroexpand-all-special-form-flet: Internal generic functions
Method, metaenv-macroexpand-all-special-form-function: Internal generic functions
Method, metaenv-macroexpand-all-special-form-let: Internal generic functions
Method, metaenv-macroexpand-all-special-form-macrolet: Internal generic functions
Method, metaenv-macroexpand-all-special-form-progn: Internal generic functions
Method, metaenv-macroexpand-all-special-form-the: Internal generic functions
Method, metaenv-macroexpand-lambdalist: Internal generic functions
Method, metaenv-never-pass-fallback-env: Internal generic functions
Method, metaenv-never-pass-fallback-env: Internal generic functions
Method, metaenv-on-every-atom: Internal generic functions
Method, metaenv-on-every-form: Internal generic functions
Method, metaenv-on-every-form-pre: Internal generic functions
Method, metaenv-on-function-form: Internal generic functions
Method, metaenv-on-function-form-pre: Internal generic functions
Method, metaenv-on-macro-walker-create-macro: Internal generic functions
Method, metaenv-on-macroexpanded-form: Internal generic functions
Method, metaenv-on-special-form: Internal generic functions
Method, metaenv-on-special-form-pre: Internal generic functions
Method, metaenv-recursive-label: Internal generic functions
Method, metaenv-recursive-label: Internal generic functions
Method, metaenv-tags: Exported generic functions
Method, metaenv-tags: Exported generic functions
Method, metaenv-variable-like-entries: Exported generic functions
Method, metaenv-variable-like-entries: Exported generic functions

P
pry: Exported functions

S
separate-declarations: Internal functions
symbol-macrolet-wrap: Internal functions

W
walk-form: Exported functions
with-metaenv-built-env: Internal functions
with-saved-lexenvs: Exported macros
with-wrap-every-form-reader: Exported macros
wrap-block-env: Internal functions
wrap-every-form-reader: Exported functions
wrap-function-like-env: Internal functions
wrap-rest-of-input: Exported macros
wrap-tag-env: Internal functions
wrap-variable-like-env: Internal functions

Jump to:   (  
D   E   F   G   I   L   M   P   S   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *  
B   C   F   N   O   R   S   T   V  
Index Entry  Section

*
*hardwired-operators*: Internal special variables
*saved-lexenv-cursor*: Internal special variables
*saved-lexenvs*: Internal special variables

B
blocks: Exported classes

C
create-macro: Exported classes

F
fallback-env: Exported classes
function-like: Exported classes

N
never-pass-fallback-env: Exported classes

O
on-every-atom: Exported classes
on-every-form: Exported classes
on-every-form-pre: Exported classes
on-function-form: Exported classes
on-function-form-pre: Exported classes
on-macro-walker-create-macro: Exported classes
on-macroexpanded-form: Exported classes
on-special-form: Exported classes
on-special-form-pre: Exported classes

R
recursive-label: Exported classes

S
Slot, blocks: Exported classes
Slot, create-macro: Exported classes
Slot, fallback-env: Exported classes
Slot, function-like: Exported classes
Slot, never-pass-fallback-env: Exported classes
Slot, on-every-atom: Exported classes
Slot, on-every-form: Exported classes
Slot, on-every-form-pre: Exported classes
Slot, on-function-form: Exported classes
Slot, on-function-form-pre: Exported classes
Slot, on-macro-walker-create-macro: Exported classes
Slot, on-macroexpanded-form: Exported classes
Slot, on-special-form: Exported classes
Slot, on-special-form-pre: Exported classes
Slot, recursive-label: Exported classes
Slot, tags: Exported classes
Slot, variable-like: Exported classes
Special Variable, *hardwired-operators*: Internal special variables
Special Variable, *saved-lexenv-cursor*: Internal special variables
Special Variable, *saved-lexenvs*: Internal special variables

T
tags: Exported classes

V
variable-like: Exported classes

Jump to:   *  
B   C   F   N   O   R   S   T   V  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   A   C   M   P   S   W  
Index Entry  Section

A
agnostic-lizard: The agnostic-lizard system
agnostic-lizard: The agnostic-lizard package
agnostic-lizard-lexenv-wrapper: The agnostic-lizard-lexenv-wrapper package

C
Class, macro-walker-metaenv: Exported classes
Class, metaenv: Exported classes
Class, walker-metaenv: Exported classes

M
macro-walker-metaenv: Exported classes
metaenv: Exported classes

P
Package, agnostic-lizard: The agnostic-lizard package
Package, agnostic-lizard-lexenv-wrapper: The agnostic-lizard-lexenv-wrapper package

S
System, agnostic-lizard: The agnostic-lizard system

W
walker-metaenv: Exported classes

Jump to:   A   C   M   P   S   W