The advanced-readtable Reference Manual

Table of Contents

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

The advanced-readtable Reference Manual

This is the advanced-readtable Reference Manual, version 1.0.1, generated automatically by Declt version 2.3 "Robert April" on Tue Feb 20 07:35:59 2018 GMT+0.


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

1 Introduction

advanced-readtable

Features

To start

Either use named-readtables and write

(in-readtable :advanced)

or simply add to advanced-readtable to current readtable

(advanced-readtable:!)

If you want also to substitute cl:defpackage, cl:in-package, cl:find-package and cl:find-symbol by there adbanced versions, use (advanced-readtable:!!) or (in-readtable :advanced) and (advanced-readtable:activate-cl-substitutes).

SLIME integration

Append contents of init.el to the end of your ~/.emacs file.

Then, when you start slime, advanced-readtable will be loaded and used by slime. So you will have all completions for hierarchy packages, local-nicknames, aliases, ...

Note: in REPL you will have advanced-readtable instead of the standard readtable.

Hierarchy packages

Advanced-readtable has fully functional built-in support of hierarchy-packages. .name means "subpackage name in current package", ..name -- "subpackage name in above package", ...name -- "subpackage in two-level-up package" and so on. In in-package you may use .. for above package, ... for two level up, and so on. Verbose documentation one may see at allegro CL.

CL-USER> (defpackage .test (:use cl)))
#<PACKAGE "COMMON-LISP-USER.TEST">
CL-USER> (in-package .test)
TEST> (in-package ..)
CL-USER> (defpackage .test.a (:use cl))
#<PACKAGE "COMMON-LISP-USER.TEST.A">
CL-USER> (in-package .test.a)
A> '...::car
CAR
A> (eq '...::car 'cl:car)
T
A> (in-package ...test)
TEST> (in-package ..)
CL-USER>

You may use local-nicknames in defpackage (syntax taken from SBCL)

CL-USER> (defpackage :foo (:use :cl) (:local-nicknames (:it :cl)))
CL-USER> (in-package :foo)
FOO> (it:car '(1 2 3))
1

API

push-import-prefix -- enables import prefix on package name

For example, you have packages com.clearly-useful.iterator-protocol, com.clearly-useful.reducers, ... You may use them as

(push-import-prefix :com.clearly-useful)
(iterator-protocol:do-iterator ...)
(reducers:r/map #'1+ data)

and so on. Package prefix is enabled per package so it is safe to use it in your package.

If there is package, which name coincides with shortcut, package name has priority.

So, if you make

(defpackage :reducers ...)

after that reducers:... will refer to new package, not com.clearly-useful.reducers.

push-local-nickname -- enables nickname for package in current package

Enables package nickname in CURRENT-PACKAGE. For example, you found COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LIST package and want to use it. But don't want to USE-PACKAGE them, because some exported symbols from it are clashing with yours.

You may do it right:

(push-local-nickname :com.informatimago.common-lisp.cesarum.list :ilist)
(ilist:circular-length l)

Local-nicknames are local, so you may use it freely.

If package A wants package LIB version 1, and package B wants package LIB version 2, one can simply rename LIB version 1 to LIB1 and LIB version 2 to LIB2 and make

(push-local-nickname :lib1 :lib :a)
(push-local-nickname :lib2 :lib :b)

This command also adds local subpackage alias. In the previous example a.lib and b.lib will be aliases to lib1 and lib2. If there is a real package with such name, alias will be shadowed, so don't worry too much about it.

push-local-package -- sets local-package for a symbol

Many macroses use there own clauses. For example, ITERATE uses FOR, COLLECT and so on. If you don't want to USE-PACKAGE iterate, this function will help.

(push-local-package 'iter:iter :iterate)
(iter:iter (for i from 1 to 10) (collect i))

Caution: this function enables package substitution in all cases, where SYMBOL is the car of a list. For example, this will be error:

(let (iter:iter for) (list iter:iter for))

, because first for is in ITERATE package, but second -- is not.

Be careful: this change is not local to your package.

set-macro-symbol symbol func -- sets FUNC to process the SYMBOL.

FUNC will get stream of reader and the symbol (see set-macro-character).

To prevent symbol from processing (for example in set-macro-symbol construction) you should enclose it in bars.

This construction will set 'foo as an alias to 'long-package-name:long-name:

(set-macro-symbol '|FOO|
  (lambda (stream symbol)
     (declare (ignore stream symbol))
        'long-package-name:long-name))

Another way to prevent symbol processing is setting advanced-readtable:*enable-symbol-readmacro* to nil. Remember, that symbol processing is done during reading the file, so, if you need to temporarily disable *enable-symbol-readmacro*, then enclose it in #.

Now you may make something like

html:[body [table (as-html sql:[select * from t1])]]

html:[ and sql:[ will have different handlers and you may mix them in one expression.

Moreover, you may alias variables from other packages and set them through alias. But be careful: this change is not local to your package. If you write qualified name of the symbol, you should enclose package-name in bars:

(set-macro-symbol '|OTHER-PACKAGE|:foo
  (lambda (stream symbol)
     (declare (ignore stream symbol))
        'long-package-name:long-name))

get-macro-symbol - syntax is like get-macro-character,

Returns function, assigned by set-macro-symbol

Low-level API

There are five lists:

They are all alists. Key denotes handler and should be uniq for the list. Value should have form (lambda (name package) ...) and return symbol for symbol-finders and extra-finders and return pacakge for package-finders.

You may freely change them to develop your own symbol or package schemes (for example, hierarchy-packages, conduits and so on).

Middle-level API

To simplify adding new handlers with keys there is macro set-handler

(set-handler (package-finders pack) '(:my handler1) #'handler-func)

will set handler for package pack, if there are no hanler with key (:my handler1). So you may set it in your file and not be afraid, that it will duplicate on reloading.

Restrictions

You must only ASCII characters for first letter of every part of package name and for first letter of symbols, that you want to use in set-macro-symbol

If you really need other characters you may set them by calling

(set-macro-character c #'advanced-readtable:read-token-with-colons t)

for every your character.

If you need to temporary disable macro-characted substitution, you may set advanced-readtable:*enable-symbol-readmacro* to nil. It could be useful, if you describe a lot of symbols and don't want to enclose every of them in || (and upcase, of course).


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 advanced-readtable

Author

Roman Klochkov <kalimehtar@mail.ru>

License

BSD

Description

Advanced customizable readtable

Version

1.0.1

Dependency

named-readtables

Source

advanced-readtable.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.


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

3.1 Lisp


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

3.1.1 advanced-readtable.asd

Location

advanced-readtable.asd

Systems

advanced-readtable (system)


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

3.1.2 advanced-readtable/package.lisp

Parent

advanced-readtable (system)

Location

package.lisp

Packages

advanced-readtable


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

3.1.3 advanced-readtable/finders.lisp

Dependency

package.lisp (file)

Parent

advanced-readtable (system)

Location

finders.lisp

Exported Definitions
Internal Definitions

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

3.1.4 advanced-readtable/api.lisp

Dependency

finders.lisp (file)

Parent

advanced-readtable (system)

Location

api.lisp

Exported Definitions
Internal Definitions

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

3.1.5 advanced-readtable/readtable.lisp

Dependency

api.lisp (file)

Parent

advanced-readtable (system)

Location

readtable.lisp

Packages

advanced-readtable.junk

Exported Definitions
Internal Definitions

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

3.1.6 advanced-readtable/hierarchy.lisp

Dependency

readtable.lisp (file)

Parent

advanced-readtable (system)

Location

hierarchy.lisp

Exported Definitions
Internal Definitions

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

4 Packages

Packages are listed by definition order.


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

4.1 advanced-readtable

Source

package.lisp (file)

Use List
Exported Definitions
Internal Definitions

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

4.2 advanced-readtable.junk

Source

readtable.lisp (file)


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 Special variables

Special Variable: *enable-symbol-readmacro*

Enables processing of symbol-readmacro.

Package

advanced-readtable

Source

readtable.lisp (file)

Special Variable: *extra-finders*

Hash symbol -> alist (key . symbol-handler)
Used for PUSH-LOCAL-PACKAGE. It will be searched before CL:FIND-SYMBOL. Will be checked inside list, where car of list eq SYMBOL.

Package

advanced-readtable

Source

finders.lisp (file)

Special Variable: *package-finders*

Alist (equal key . package-handler). Contains global handlers for FIND-PACKAGE.

Package

advanced-readtable

Source

finders.lisp (file)

Special Variable: *symbol-finders*

Alist (equal key . symbol-handler). Contains global handlers for FIND-SYMBOL.

Package

advanced-readtable

Source

finders.lisp (file)


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

5.1.2 Macros

Macro: defpackage PACKAGE &rest OPTIONS
Package

advanced-readtable

Source

hierarchy.lisp (file)

Macro: in-package DESIGNATOR
Package

advanced-readtable

Source

hierarchy.lisp (file)

Macro: set-handler HANDLER-LIST KEY FUNCTION

This is middle-level public API for changing handlers for
find-symbol and find-package. There are five lists:
*package-finders* – global for find-package
*symbol-finders* – global for find-symbol
(package-finders package) – per-package for find-package (symbol-finders package) – per-package for find-symbol
(extra-finders symbol) – per-symbol for (symbol ....) package substitution

Key should be uniq in the sense of EQUAL in the list. SET-HANDLER adds new handler if it is not already there.

Package

advanced-readtable

Source

finders.lisp (file)


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

5.1.3 Functions

Function: ! ()
Package

advanced-readtable

Source

readtable.lisp (file)

Function: !! ()
Package

advanced-readtable

Source

hierarchy.lisp (file)

Function: activate ()
Package

advanced-readtable

Source

readtable.lisp (file)

Function: activate-cl-substitutes ()
Package

advanced-readtable

Source

hierarchy.lisp (file)

Function: find-package NAME &optional CURRENT-PACKAGE

We try to find package.
1. By full name with CL:FIND-PACKAGE.
2. By per-package handlers. Here we wil try local-nicknames and so on. 3. By global handlers. Here we may use, for example, hierarchical packages.

Package

advanced-readtable

Source

finders.lisp (file)

Function: find-symbol NAME &optional DPACKAGE

We try to find symbol
1. In package set with car of list, for example, PUSH-LOCAL-PACKAGE 2. By CL:FIND-SYMBOL, when package explicitly given
3. By packages added with package:(...)
4. By per-package finders
5. By global finders
6. By CL:FIND-SYMBOL

Package

advanced-readtable

Source

finders.lisp (file)

Function: get-macro-symbol SYMBOL

Syntax is like get-macro-character. Returns function, assigned by set-macro-symbol

Package

advanced-readtable

Source

finders.lisp (file)

Function: package-finders &optional PACKAGE

Returns alist (key . package-handler) for package

Package

advanced-readtable

Source

finders.lisp (file)

Writer

(setf package-finders) (function)

Function: (setf package-finders) VALUE &optional PACKAGE

Sets alist (key . package-handler) for package

Package

advanced-readtable

Source

finders.lisp (file)

Reader

package-finders (function)

Function: push-import-prefix PREFIX &optional PACKAGE

Enables using package name omitting prefix.
For example, you have packages com.clearly-useful.iterator-protocol, com.clearly-useful.reducers, ... You may use them as
(push-import-prefix :com.clearly-useful)
(iterator-protocol:do-iterator ...)
(reducers:r/map #’1+ data)
and so on.
Package prefix is enabled per package so it is safe to use it in your package.

If there is package, which name coincides with shortcut, package name has priority.

So, if you make
(defpackage :reducers ...)

after that reducers:... will refer to new package, not com.clearly-useful.reducers.

Package

advanced-readtable

Source

api.lisp (file)

Function: push-local-nickname LONG-PACKAGE NICK &optional CURRENT-PACKAGE

Enables package nickname in CURRENT-PACKAGE.
For example, you found COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LIST package and want to use it. But don’t want to USE-PACKAGE them, because some exported symbols from it are clashing with yours.

You may do it right:
(push-local-nickname :com.informatimago.common-lisp.cesarum.list :ilist) (ilist:circular-length l)

Local-nicknames are local, so you may use it freely.

If package A wants package LIB version 1, and package B wants package
LIB version 2, one can simply rename LIB version 1 to LIB1 and rename LIB
version 2 to LIB2 and make
(push-local-nickname :lib1 :lib :a)
(push-local-nickname :lib2 :lib :b)

If enabled global-nicknames via enable-global-nicknames,
then also created alias in current package.

For example,
(push-local-nickname :lib1 :lib :a), states, that package A.LIB is eq to LIB1.

Package

advanced-readtable

Source

api.lisp (file)

Function: push-local-package SYMBOL LOCAL-PACKAGE

Sets local-package for a symbol. Many macroses use there own clauses. For example, ITERATE uses FOR, COLLECT and so on.
If you don’t want to USE-PACKAGE iterate, this function will help. (push-local-package ’iter:iter :iterate)
(iter:iter (for i from 1 to 10) (collect i))

Caution: this function enables package substitution in all cases, where SYMBOL is the car of a list.
For example, this will be error:
(let (iter:iter for) (list iter:iter for))
, because first for is in ITERATE package, but second – is not.

Package

advanced-readtable

Source

api.lisp (file)

Function: read-token-with-colons STREAM CHAR

Reads token, then analize package part if needed

Package

advanced-readtable

Source

readtable.lisp (file)

Function: set-macro-symbol SYMBOL FUNC

Syntax is like set-macro-character,
except that FUNC is binded to SYMBOL, not character

Package

advanced-readtable

Source

finders.lisp (file)

Function: symbol-finders &optional PACKAGE

Returns alist (key . symbol-handler) for package

Package

advanced-readtable

Source

finders.lisp (file)

Writer

(setf symbol-finders) (function)

Function: (setf symbol-finders) VALUE &optional PACKAGE

Sets alist (key . symbol-handler) for package

Package

advanced-readtable

Source

finders.lisp (file)

Reader

symbol-finders (function)


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

5.2 Internal definitions


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

5.2.1 Special variables

Special Variable: *car-list*

Boolean: iff reader in list and car is not read

Package

advanced-readtable

Source

readtable.lisp (file)

Special Variable: *colon-readtable*

Support readtable with colon as whitespace

Package

advanced-readtable

Source

readtable.lisp (file)

Special Variable: *current-extra-finders*

Alist (key . symbol-handler). Used in PUSH-LOCAL-PACKAGE processing

Package

advanced-readtable

Source

finders.lisp (file)

Special Variable: *global-nicknames*

Package aliases. Hash nickname: string -> package

Package

advanced-readtable

Source

api.lisp (file)

Special Variable: *local-package-finders*

Hash package -> alist (key . package-handler). Contains per-package handlers for FIND-PACKAGE.

Package

advanced-readtable

Source

finders.lisp (file)

Special Variable: *local-packages*

List of packages: for pack:( ... pack2:(...))

Package

advanced-readtable

Source

finders.lisp (file)

Special Variable: *local-symbol-finders*

Hash package -> alist (equal key . symbol-handler). Contains per-package handlers for FIND-SYMBOL.

Package

advanced-readtable

Source

finders.lisp (file)

Special Variable: *symbol-readmacros*

Hash symbol -> macro-symbol-handler Contans handlers for macro-symbols.

Package

advanced-readtable

Source

finders.lisp (file)

Special Variable: +additional-chars+

Fill this, if you need extra characters for packages to begin with

Package

advanced-readtable

Source

readtable.lisp (file)


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

5.2.2 Macros

Macro: %set-handler HANDLER-LIST KEY NAME &body HANDLER-BODY

Local macros for push-* functions. No gensyms intended.

Package

advanced-readtable

Source

api.lisp (file)

Macro: with-case CASE &body BODY
Package

advanced-readtable

Source

readtable.lisp (file)


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

5.2.3 Functions

Function: chars-to-process ()
Package

advanced-readtable

Source

readtable.lisp (file)

Function: collect-dots STREAM
Package

advanced-readtable

Source

readtable.lisp (file)

Function: correct-package DESIGNATOR
Package

advanced-readtable

Source

hierarchy.lisp (file)

Function: count-colons STREAM

DO: Reads colons from STREAM RETURN: number of the colons

Package

advanced-readtable

Source

readtable.lisp (file)

Function: does-not-terminate-token-p C
Package

advanced-readtable

Source

readtable.lisp (file)

Function: extra-finders SYMBOL

Returns alist (key . symbol-handler) for symbol

Package

advanced-readtable

Source

finders.lisp (file)

Writer

(setf extra-finders) (function)

Function: (setf extra-finders) VALUE SYMBOL

Sets alist (key . symbol-handler) for symbol

Package

advanced-readtable

Source

finders.lisp (file)

Reader

extra-finders (function)

Function: find-local-packages PACKAGES NAME
Package

advanced-readtable

Source

finders.lisp (file)

Function: funcall-first HANDLERS-LIST NAME PACKAGE

HANDLERS-LIST – alist (key . package-handler).
The function calls handlers until one of them returns not null. Then the result of last call is returned

Package

advanced-readtable

Source

finders.lisp (file)

Function: funcall-first-mv HANDLERS-LIST NAME PACKAGE

HANDLERS-LIST – alist (key . package-handler).
The function calls handlers until one of them returns not null. Then the result of last call is returned

Package

advanced-readtable

Source

finders.lisp (file)

Function: hierarchy-find-package NAME PACKAGE
Package

advanced-readtable

Source

hierarchy.lisp (file)

Function: macro-char-p C

If C is macro-char, return GET-MACRO-CHARACTER

Package

advanced-readtable

Source

readtable.lisp (file)

Function: multiple-escape-p C
Package

advanced-readtable

Source

readtable.lisp (file)

Function: normalize-package NAME

Returns nil if already normalized.
Replace first section of hierarchy with proper name

Package

advanced-readtable

Source

hierarchy.lisp (file)

Function: open-paren-reader STREAM CHAR
Package

advanced-readtable

Source

readtable.lisp (file)

Function: process-local-nicknames PACKAGE PAIRS
Package

advanced-readtable

Source

hierarchy.lisp (file)

Function: process-symbol-readmacro STREAM SYMBOL
Package

advanced-readtable

Source

readtable.lisp (file)

Function: read-after-colon STREAM MAYBE-PACKAGE COLONS

Read symbol package:sym or list package:(...)

Package

advanced-readtable

Source

readtable.lisp (file)

Function: read-token STREAM

DO: Reads from STREAM a symbol or number up to whitespace or colon RETURN: symbols name or numbers value

Package

advanced-readtable

Source

readtable.lisp (file)

Function: single-escape-p C
Package

advanced-readtable

Source

readtable.lisp (file)

Function: substitute-symbol STREAM SYMBOL
Package

advanced-readtable

Source

hierarchy.lisp (file)

Function: to-process C
Package

advanced-readtable

Source

readtable.lisp (file)

Function: whitespace-p C
Package

advanced-readtable

Source

readtable.lisp (file)


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

5.2.4 Types

Type: macro-symbol-handler ()

Handler for SET/GET-MACRO-SYMBOL

Package

advanced-readtable

Source

finders.lisp (file)

Type: package-designator ()

Argument of CL:FIND-PACKAGE

Package

advanced-readtable

Source

finders.lisp (file)

Type: package-handler ()

Type of handlers for package finding.
First arg is a name to find. Second – current package

Package

advanced-readtable

Source

finders.lisp (file)

Type: symbol-handler ()

Type of handlers for symbol finding
First arg is a name to find. Second – current package

Package

advanced-readtable

Source

finders.lisp (file)


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

Appendix A Indexes


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

A.1 Concepts

Jump to:   A   F   L  
Index Entry  Section

A
advanced-readtable.asd: The advanced-readtable<dot>asd file
advanced-readtable/api.lisp: The advanced-readtable/api<dot>lisp file
advanced-readtable/finders.lisp: The advanced-readtable/finders<dot>lisp file
advanced-readtable/hierarchy.lisp: The advanced-readtable/hierarchy<dot>lisp file
advanced-readtable/package.lisp: The advanced-readtable/package<dot>lisp file
advanced-readtable/readtable.lisp: The advanced-readtable/readtable<dot>lisp file

F
File, Lisp, advanced-readtable.asd: The advanced-readtable<dot>asd file
File, Lisp, advanced-readtable/api.lisp: The advanced-readtable/api<dot>lisp file
File, Lisp, advanced-readtable/finders.lisp: The advanced-readtable/finders<dot>lisp file
File, Lisp, advanced-readtable/hierarchy.lisp: The advanced-readtable/hierarchy<dot>lisp file
File, Lisp, advanced-readtable/package.lisp: The advanced-readtable/package<dot>lisp file
File, Lisp, advanced-readtable/readtable.lisp: The advanced-readtable/readtable<dot>lisp file

L
Lisp File, advanced-readtable.asd: The advanced-readtable<dot>asd file
Lisp File, advanced-readtable/api.lisp: The advanced-readtable/api<dot>lisp file
Lisp File, advanced-readtable/finders.lisp: The advanced-readtable/finders<dot>lisp file
Lisp File, advanced-readtable/hierarchy.lisp: The advanced-readtable/hierarchy<dot>lisp file
Lisp File, advanced-readtable/package.lisp: The advanced-readtable/package<dot>lisp file
Lisp File, advanced-readtable/readtable.lisp: The advanced-readtable/readtable<dot>lisp file

Jump to:   A   F   L  

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

A.2 Functions

Jump to:   !   %   (  
A   C   D   E   F   G   H   I   M   N   O   P   R   S   T   W  
Index Entry  Section

!
!: Exported functions
!!: Exported functions

%
%set-handler: Internal macros

(
(setf extra-finders): Internal functions
(setf package-finders): Exported functions
(setf symbol-finders): Exported functions

A
activate: Exported functions
activate-cl-substitutes: Exported functions

C
chars-to-process: Internal functions
collect-dots: Internal functions
correct-package: Internal functions
count-colons: Internal functions

D
defpackage: Exported macros
does-not-terminate-token-p: Internal functions

E
extra-finders: Internal functions

F
find-local-packages: Internal functions
find-package: Exported functions
find-symbol: Exported functions
funcall-first: Internal functions
funcall-first-mv: Internal functions
Function, !: Exported functions
Function, !!: Exported functions
Function, (setf extra-finders): Internal functions
Function, (setf package-finders): Exported functions
Function, (setf symbol-finders): Exported functions
Function, activate: Exported functions
Function, activate-cl-substitutes: Exported functions
Function, chars-to-process: Internal functions
Function, collect-dots: Internal functions
Function, correct-package: Internal functions
Function, count-colons: Internal functions
Function, does-not-terminate-token-p: Internal functions
Function, extra-finders: Internal functions
Function, find-local-packages: Internal functions
Function, find-package: Exported functions
Function, find-symbol: Exported functions
Function, funcall-first: Internal functions
Function, funcall-first-mv: Internal functions
Function, get-macro-symbol: Exported functions
Function, hierarchy-find-package: Internal functions
Function, macro-char-p: Internal functions
Function, multiple-escape-p: Internal functions
Function, normalize-package: Internal functions
Function, open-paren-reader: Internal functions
Function, package-finders: Exported functions
Function, process-local-nicknames: Internal functions
Function, process-symbol-readmacro: Internal functions
Function, push-import-prefix: Exported functions
Function, push-local-nickname: Exported functions
Function, push-local-package: Exported functions
Function, read-after-colon: Internal functions
Function, read-token: Internal functions
Function, read-token-with-colons: Exported functions
Function, set-macro-symbol: Exported functions
Function, single-escape-p: Internal functions
Function, substitute-symbol: Internal functions
Function, symbol-finders: Exported functions
Function, to-process: Internal functions
Function, whitespace-p: Internal functions

G
get-macro-symbol: Exported functions

H
hierarchy-find-package: Internal functions

I
in-package: Exported macros

M
Macro, %set-handler: Internal macros
Macro, defpackage: Exported macros
Macro, in-package: Exported macros
Macro, set-handler: Exported macros
Macro, with-case: Internal macros
macro-char-p: Internal functions
multiple-escape-p: Internal functions

N
normalize-package: Internal functions

O
open-paren-reader: Internal functions

P
package-finders: Exported functions
process-local-nicknames: Internal functions
process-symbol-readmacro: Internal functions
push-import-prefix: Exported functions
push-local-nickname: Exported functions
push-local-package: Exported functions

R
read-after-colon: Internal functions
read-token: Internal functions
read-token-with-colons: Exported functions

S
set-handler: Exported macros
set-macro-symbol: Exported functions
single-escape-p: Internal functions
substitute-symbol: Internal functions
symbol-finders: Exported functions

T
to-process: Internal functions

W
whitespace-p: Internal functions
with-case: Internal macros

Jump to:   !   %   (  
A   C   D   E   F   G   H   I   M   N   O   P   R   S   T   W  

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

A.3 Variables

Jump to:   *   +  
S  
Index Entry  Section

*
*car-list*: Internal special variables
*colon-readtable*: Internal special variables
*current-extra-finders*: Internal special variables
*enable-symbol-readmacro*: Exported special variables
*extra-finders*: Exported special variables
*global-nicknames*: Internal special variables
*local-package-finders*: Internal special variables
*local-packages*: Internal special variables
*local-symbol-finders*: Internal special variables
*package-finders*: Exported special variables
*symbol-finders*: Exported special variables
*symbol-readmacros*: Internal special variables

+
+additional-chars+: Internal special variables

S
Special Variable, *car-list*: Internal special variables
Special Variable, *colon-readtable*: Internal special variables
Special Variable, *current-extra-finders*: Internal special variables
Special Variable, *enable-symbol-readmacro*: Exported special variables
Special Variable, *extra-finders*: Exported special variables
Special Variable, *global-nicknames*: Internal special variables
Special Variable, *local-package-finders*: Internal special variables
Special Variable, *local-packages*: Internal special variables
Special Variable, *local-symbol-finders*: Internal special variables
Special Variable, *package-finders*: Exported special variables
Special Variable, *symbol-finders*: Exported special variables
Special Variable, *symbol-readmacros*: Internal special variables
Special Variable, +additional-chars+: Internal special variables

Jump to:   *   +  
S  

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

A.4 Data types

Jump to:   A   M   P   S   T  
Index Entry  Section

A
advanced-readtable: The advanced-readtable system
advanced-readtable: The advanced-readtable package
advanced-readtable.junk: The advanced-readtable<dot>junk package

M
macro-symbol-handler: Internal types

P
Package, advanced-readtable: The advanced-readtable package
Package, advanced-readtable.junk: The advanced-readtable<dot>junk package
package-designator: Internal types
package-handler: Internal types

S
symbol-handler: Internal types
System, advanced-readtable: The advanced-readtable system

T
Type, macro-symbol-handler: Internal types
Type, package-designator: Internal types
Type, package-handler: Internal types
Type, symbol-handler: Internal types

Jump to:   A   M   P   S   T