This is the vernacular Reference Manual, version 0.8.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Fri Sep 15 06:57:30 2023 GMT+0.
vernacular
vernacular/all
vernacular/module
vernacular/well-known
vernacular/simple-module
vernacular/shadows
vernacular/types
vernacular/parsers
vernacular/hash-lang-syntax
vernacular/importing
vernacular/import-set
vernacular/specials
vernacular/lang
vernacular/compile-to-file
vernacular/file-package
vernacular/file-local
vernacular/hash-table-module
vernacular/include
vernacular/vernacular.asd
vernacular/all/file-type.lisp
vernacular/module/file-type.lisp
vernacular/well-known/file-type.lisp
vernacular/simple-module/file-type.lisp
vernacular/shadows/file-type.lisp
vernacular/types/file-type.lisp
vernacular/parsers/file-type.lisp
vernacular/hash-lang-syntax/file-type.lisp
vernacular/importing/file-type.lisp
vernacular/import-set/file-type.lisp
vernacular/specials/file-type.lisp
vernacular/lang/file-type.lisp
vernacular/compile-to-file/file-type.lisp
vernacular/file-package/file-type.lisp
vernacular/file-local/file-type.lisp
vernacular/hash-table-module/file-type.lisp
vernacular/include/file-type.lisp
vernacular/include
vernacular/import-set
vernacular/parsers
vernacular/lang
vernacular/well-known
vernacular/importing
vernacular/all
vernacular/types
vernacular/file-package
vernacular/file-local
vernacular/simple-module
vernacular/specials
vernacular/hash-table-module
vernacular/compile-to-file
vernacular/hash-lang-syntax
vernacular/module
vernacular/simple-module-user
vernacular/shadows
The main system appears first, followed by any subsystem dependency.
vernacular
vernacular/all
vernacular/module
vernacular/well-known
vernacular/simple-module
vernacular/shadows
vernacular/types
vernacular/parsers
vernacular/hash-lang-syntax
vernacular/importing
vernacular/import-set
vernacular/specials
vernacular/lang
vernacular/compile-to-file
vernacular/file-package
vernacular/file-local
vernacular/hash-table-module
vernacular/include
vernacular
Module system for language embeddings.
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
0.8.0
vernacular/all
(system).
vernacular/all
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
overlord
(system).
overlord/target-protocol
(system).
vernacular/module
(system).
vernacular/simple-module
(system).
vernacular/hash-table-module
(system).
vernacular/file-package
(system).
vernacular/specials
(system).
vernacular/well-known
(system).
vernacular/lang
(system).
vernacular/import-set
(system).
vernacular/importing
(system).
vernacular/parsers
(system).
vernacular/include
(system).
vernacular/module
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
overlord/types
(system).
trivial-garbage
(system).
vernacular/well-known
(system).
vernacular/simple-module
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
serapeum
(system).
alexandria
(system).
vernacular/shadows
(system).
vernacular/types
(system).
trivia
(system).
vernacular/module
(system).
vernacular/parsers
(system).
vernacular/importing
(system).
vernacular/shadows
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
trivia
(system).
serapeum
(system).
vernacular/types
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
overlord/types
(system).
trivia
(system).
vernacular/parsers
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
named-readtables
(system).
vernacular/hash-lang-syntax
(system).
vernacular/hash-lang-syntax
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
vernacular/types
(system).
vernacular/importing
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
overlord/util
(system).
overlord/redo
(system).
overlord/global-state
(system).
overlord/base
(system).
overlord/target
(system).
vernacular/module
(system).
vernacular/import-set
(system).
vernacular/types
(system).
vernacular/specials
(system).
vernacular/lang
(system).
trivia
(system).
overlord/freeze
(system).
vernacular/well-known
(system).
vernacular/shadows
(system).
vernacular/import-set
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
vernacular/types
(system).
trivia
(system).
vernacular/specials
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
overlord/types
(system).
serapeum
(system).
overlord/specials
(system).
vernacular/lang
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
local-time
(system).
overlord/types
(system).
overlord/util
(system).
overlord/cache
(system).
overlord/stamp
(system).
overlord/asdf
(system).
overlord/base
(system).
overlord/global-state
(system).
overlord/target
(system).
vernacular/types
(system).
vernacular/hash-lang-syntax
(system).
vernacular/module
(system).
vernacular/compile-to-file
(system).
trivia
(system).
overlord/freeze
(system).
overlord/specials
(system).
vernacular/well-known
(system).
vernacular/specials
(system).
vernacular/parsers
(system).
vernacular/file-local
(system).
vernacular/compile-to-file
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
vernacular/specials
(system).
overlord/asdf
(system).
vernacular/file-package
(system).
trivial-macroexpand-all
(system).
vernacular/file-package
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
overlord/types
(system).
vernacular/specials
(system).
overlord/asdf
(system).
vernacular/file-local
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
vernacular/hash-table-module
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
vernacular/types
(system).
vernacular/module
(system).
vernacular/include
Paul M. Rodriguez <pmr@ruricolit.com>
MIT
alexandria
(system).
serapeum
(system).
overlord
(system).
vernacular/lang
(system).
vernacular/specials
(system).
Files are sorted by type and then listed depth-first from the systems components trees.
vernacular/vernacular.asd
vernacular/all/file-type.lisp
vernacular/module/file-type.lisp
vernacular/well-known/file-type.lisp
vernacular/simple-module/file-type.lisp
vernacular/shadows/file-type.lisp
vernacular/types/file-type.lisp
vernacular/parsers/file-type.lisp
vernacular/hash-lang-syntax/file-type.lisp
vernacular/importing/file-type.lisp
vernacular/import-set/file-type.lisp
vernacular/specials/file-type.lisp
vernacular/lang/file-type.lisp
vernacular/compile-to-file/file-type.lisp
vernacular/file-package/file-type.lisp
vernacular/file-local/file-type.lisp
vernacular/hash-table-module/file-type.lisp
vernacular/include/file-type.lisp
vernacular/vernacular.asd
vernacular
(system).
vernacular
.
vernacular/all
.
vernacular/module
.
vernacular/well-known
.
vernacular/simple-module
.
vernacular/shadows
.
vernacular/types
.
vernacular/parsers
.
vernacular/hash-lang-syntax
.
vernacular/importing
.
vernacular/import-set
.
vernacular/specials
.
vernacular/lang
.
vernacular/compile-to-file
.
vernacular/file-package
.
vernacular/file-local
.
vernacular/hash-table-module
.
vernacular/include
.
vernacular/module/file-type.lisp
vernacular/module
(system).
basic-module
(structure).
clear-inline-caches
(function).
default-export-module
(function).
default-export-module
(structure).
make-basic-module
(function).
make-load-form
(method).
module-error
(condition).
module-error-module
(reader method).
module-exports
(generic function).
module-exports*
(function).
module-ref
(generic function).
module-ref*
(function).
module-ref-ns
(generic function).
module-ref/inline-cache
(macro).
module-static-exports
(generic function).
no-such-export
(condition).
not-a-module
(condition).
print-object
(method).
validate-module
(generic function).
%constructor=
(method).
*module-inline-cache-pointers*
(special variable).
+storage-for-deflex-var-battleshort+
(constant).
+storage-for-deflex-var-default-export-module-exports+
(constant).
+storage-for-deflex-var-default-key+
(constant).
+storage-for-deflex-var-flank-speed+
(constant).
+storage-for-deflex-var-unbound+
(constant).
basic-module-exports
(reader).
basic-module-exports-table
(reader).
basic-module-p
(function).
battleshort
(symbol macro).
default-export-module-default
(reader).
default-export-module-exports
(symbol macro).
default-export-module-p
(function).
default-export-table
(function).
default-key
(symbol macro).
empty-exports-table
(function).
fill-inline-cache
(function).
flank-speed
(symbol macro).
invalid-module
(condition).
read-only-struct-slot-names
(method).
read-only-struct-slot-names
(method).
register-inline-cache
(function).
unbound
(symbol macro).
unbound
(structure).
vernacular/well-known/file-type.lisp
vernacular/well-known
(system).
vernacular/simple-module/file-type.lisp
vernacular/simple-module
(system).
module-exports
(method).
module-progn
(macro).
module-ref-ns
(method).
module-ref-ns
(method).
read-module
(function).
simple-module
(macro).
simple-module
(structure).
static-exports
(function).
export-expr
(function).
make-simple-module
(function).
mlet
(macro).
no-macros-please
(condition).
not-exported
(function).
not-exported
(condition).
ns-error
(condition).
read-only-struct-slot-names
(method).
simple-module-error
(condition).
simple-module-exports
(reader).
simple-module-exports-table
(reader).
simple-module-p
(function).
vernacular/shadows/file-type.lisp
vernacular/shadows
(system).
apply
(function).
caar
(function).
cadr
(function).
(setf car)
(setf expander).
car
(function).
case
(macro).
ccase
(macro).
cdar
(function).
cddr
(function).
(setf cdr)
(setf expander).
cdr
(function).
cond
(macro).
cons
(function).
cons
(type).
ctypecase
(macro).
def
(macro).
defalias
(macro).
defconst
(macro).
defconstant
(macro).
define-constant
(macro).
define-symbol-macro
(macro).
define-values
(macro).
defmacro
(macro).
defsubst
(macro).
deftype
(macro).
defun
(macro).
ecase
(macro).
etypecase
(macro).
eval
(function).
(setf first)
(setf expander).
first
(function).
flet
(macro).
funcall
(function).
import
(function).
labels
(macro).
lambda
(macro).
let
(macro).
let*
(macro).
list
(function).
list
(type).
list*
(function).
locally
(macro).
macrolet
(macro).
make
(function).
pop
(macro).
progn
(macro).
push
(macro).
(setf rest)
(setf expander).
rest
(function).
symbol-macrolet
(macro).
t
(symbol macro).
typecase
(macro).
define-cxr
(macro).
handle-default-keys
(function).
(setf name)
(setf expander).
set-car!
(function).
set-cdr!
(function).
shadow-case
(macro).
shadow-cases
(macro).
vernacular/types/file-type.lisp
vernacular/types
(system).
bindable-symbol
(type).
non-keyword
(type).
ns
(type).
private-name
(function).
private-ns
(function).
private-side
(function).
public-name
(function).
public-ns
(function).
public-side
(function).
vernacular-error
(compiler macro).
vernacular-error
(function).
vernacular-error
(condition).
+storage-for-deflex-var-cl-constants+
(constant).
cl-constants
(symbol macro).
ns+name
(function).
vernacular/parsers/file-type.lisp
vernacular/parsers
(system).
slurp-file
(function).
slurp-stream
(function).
+storage-for-deflex-var-eof+
(constant).
eof
(symbol macro).
vernacular/hash-lang-syntax/file-type.lisp
vernacular/hash-lang-syntax
(system).
file-hash-lang
(function).
read-lang-name
(function).
skip-hash-lang
(function).
stream-hash-lang
(function).
valid-lang-name?
(function).
advance-stream
(function).
invalid-lang-name
(condition).
lang-char?
(function).
next-char
(function).
skip-comment
(function).
skip-comments-and-whitespace
(function).
skip-to-end-of-line
(function).
skip-whitespace
(function).
stream-take-while
(function).
vernacular/importing/file-type.lisp
vernacular/importing
(system).
import
(macro).
import-as-package
(macro).
import-as-subpackage
(macro).
import-default
(macro).
import/local
(macro).
with-import-default
(macro).
with-imports
(macro).
*claimed-module-names*
(special variable).
apply-prefix
(function).
binding-export-mismatch
(condition).
check-exports
(function).
check-static-bindings
(function).
check-static-bindings-1
(function).
check-static-bindings-now
(macro).
claim-module-name
(function).
clear-claimed-module-names
(function).
declaim-module
(macro).
duplicated-bindings
(condition).
expand-binding-spec
(function).
expand-bindings
(function).
function-wrapper
(macro).
import->defpackage
(macro).
import-as-package-aux
(macro).
import-binding
(macro).
import-bindings
(macro).
import-function
(macro).
import-module
(macro).
import-task
(macro).
importing-error
(condition).
lang+source
(function).
not-enough-info
(condition).
private+public+ref
(function).
private-keyword
(function).
private-ref
(function).
resolve-import-spec
(function).
subpackage-full-name
(function).
update-value-bindings
(macro).
vernacular/import-set/file-type.lisp
vernacular/import-set
(system).
expand-import-set
(function).
import-set=
(function).
alias
(function).
drop-prefix
(function).
except
(function).
find-id
(function).
frob-name
(function).
import-set-condition
(condition).
import-set-error
(condition).
invalid-import-set
(condition).
mass-rename
(function).
missing-id
(condition).
only
(function).
prefix
(function).
rename
(function).
rename-alias-common
(function).
rename-import
(function).
same-binding?
(function).
vernacular/specials/file-type.lisp
vernacular/specials
(system).
*default-lang*
(special variable).
*language*
(special variable).
*module*
(special variable).
*program*
(special variable).
*program-preamble*
(special variable).
*source*
(special variable).
vernacular/lang/file-type.lisp
vernacular/lang
(system).
*file-local-variables*
(special variable).
compiled-module-target
(function).
define-loader-language
(macro).
dynamic-require
(function).
dynamic-require-as
(function).
dynamic-require-default
(function).
dynamic-require-once
(function).
dynamic-unrequire
(function).
ensure-lang-exists
(function).
expand-module
(function).
expand-module-for-emacs
(function).
faslize
(function).
find-module
(compiler macro).
find-module
(function).
guess-lang
(function).
guess-source
(function).
hash-lang-name
(type).
initialize-instance
(method).
lang
(type).
lang-name
(function).
lang-name
(type).
load-module
(function).
load-same-name-system
(function).
loaded-modules-alist
(function).
merge-input-defaults
(method).
merge-output-defaults
(method).
module
(function).
module-dynamic-exports
(function).
module-meta
(compiler macro).
(setf module-meta)
(compiler macro).
module-meta
(function).
(setf module-meta)
(function).
module-progn-in
(macro).
module-static-exports
(method).
monitor
(reader method).
package-expander
(function).
package-reader
(function).
pattern-build
(method).
print-object
(method).
reintern
(function).
reinterning
(macro).
require-as
(macro).
require-default
(macro).
require-for-emacs
(function).
require-once
(macro).
resolve-lang
(function).
source-lang
(function).
vernacular-version
(function).
with-meta-language
(macro).
*module-cells*
(special variable).
call/load-same-name-system-restart
(function).
call/meta-language
(function).
cl-read-module
(function).
clear-module-cells
(function).
compile-top-level-string
(symbol macro).
define-loader-language-1
(macro).
ensure-module-cell-loaded
(function).
ensure-module-loaded
(compiler macro).
ensure-module-loaded
(function).
expand-in-package
(function).
fasl-dir
(function).
fasl-lang-pattern
(class).
fasl?
(function).
file-emacs-mode-lang
(function).
guess-lang+pos
(function).
hash-lang-name?
(function).
intern-module-cell
(function).
lang-deps
(generic function).
language-oracle
(function).
list-module-cells
(function).
load-compiled-module
(function).
load-module-into-cell
(function).
loader-language-exports
(symbol macro).
loader-language-exports
(function).
lookup-hash-lang
(function).
maybe-find-asdf-system
(generic function).
module-cell
(compiler macro).
module-cell
(function).
module-cell
(class).
module-cell-meta
(function).
(setf module-cell-meta)
(function).
module-cell.meta
(reader method).
(setf module-cell.meta)
(writer method).
module-cell.module
(reader method).
(setf module-cell.module)
(writer method).
module-cell.source
(reader method).
(setf module-cell.source)
(writer method).
module-cell.timestamp
(reader method).
(setf module-cell.timestamp)
(writer method).
no-such-lang
(condition).
no-such-lang.lang
(reader method).
package-compile-top-level?
(function).
package-expander-string
(symbol macro).
package-reader-string
(symbol macro).
resolve-lang-package
(function).
source-lang-for-oracle
(function).
source-without-lang
(condition).
suffix-package
(function).
unload-module
(function).
unload-module-cell
(function).
unrequire
(macro).
user-package
(function).
with-input-from-source
(macro).
with-load-same-name-system-restart
(macro).
vernacular/compile-to-file/file-type.lisp
vernacular/compile-to-file
(system).
compile-to-file
(function).
fasl-ext
(symbol macro).
load-as-module
(function).
module
(type).
+storage-for-deflex-var-fasl-ext+
(constant).
+storage-for-deflex-var-no-module+
(constant).
define-file-package
(macro).
module?
(function).
no-module
(symbol macro).
universal-file
(symbol macro).
vernacular/file-package/file-type.lisp
vernacular/file-package
(system).
abbreviate-file-name
(function).
find-file-package
(function).
intern-file-package
(function).
reset-file-package
(function).
+storage-for-deflex-var-tmp-mnt+
(constant).
class-name?
(function).
enough-unix-namestring
(function).
file-package-name
(function).
home-parent
(symbol macro).
make-file-package
(function).
package-own-symbols
(function).
reset-package
(function).
reset-package/delete-and-recreate
(function).
reset-package/undefine
(function).
reset-package/unintern-all
(function).
symbol-macro?
(function).
symbol-status
(function).
symbol-status
(type).
tmp-mnt
(symbol macro).
unintern-from-home-package
(function).
vernacular/file-local/file-type.lisp
vernacular/file-local
(system).
file-emacs-mode
(function).
file-locals-alist
(function).
+storage-for-deflex-var-mode-frob+
(constant).
alist-keys-to-keywords
(function).
hairy?
(function).
isolate-substring
(function).
mode-frob
(symbol macro).
parse-hairy
(function).
parse-line
(function).
parse-simple
(function).
skip-first-line?
(function).
skip-prefixes
(symbol macro).
split
(function).
split-into-pairs
(function).
split-pair
(function).
vernacular/hash-table-module/file-type.lisp
vernacular/hash-table-module
(system).
hash-table-module
(function).
module-exports
(method).
module-ref
(method).
vernacular/include/file-type.lisp
vernacular/include
(system).
Packages are listed by definition order.
vernacular/include
vernacular/import-set
vernacular/parsers
vernacular/lang
vernacular/well-known
vernacular/importing
vernacular/all
vernacular/types
vernacular/file-package
vernacular/file-local
vernacular/simple-module
vernacular/specials
vernacular/hash-table-module
vernacular/compile-to-file
vernacular/hash-lang-syntax
vernacular/module
vernacular/simple-module-user
vernacular/shadows
vernacular/include
alexandria
.
common-lisp
.
serapeum
.
vernacular/import-set
Syntax for import sets.
Influenced by, but not identical with, the R6RS syntax.
alexandria
.
common-lisp
.
serapeum
.
vernacular/types
.
expand-import-set
(function).
import-set=
(function).
alias
(function).
drop-prefix
(function).
except
(function).
find-id
(function).
frob-name
(function).
import-set-condition
(condition).
import-set-error
(condition).
invalid-import-set
(condition).
mass-rename
(function).
missing-id
(condition).
only
(function).
prefix
(function).
rename
(function).
rename-alias-common
(function).
rename-import
(function).
same-binding?
(function).
vernacular/parsers
Trivial parsers.
alexandria
.
common-lisp
.
serapeum
.
slurp-file
(function).
slurp-stream
(function).
+storage-for-deflex-var-eof+
(constant).
eof
(symbol macro).
vernacular/lang
The core of Vernacular: handles parsing, compiling, and loading modules.
alexandria
.
common-lisp
.
local-time
.
overlord/asdf
.
overlord/base
.
overlord/cache
.
overlord/global-state
.
overlord/stamp
.
overlord/target
.
overlord/types
.
overlord/util
.
serapeum
.
uiop/filesystem
.
uiop/pathname
.
vernacular/hash-lang-syntax
.
vernacular/module
.
vernacular/types
.
*file-local-variables*
(special variable).
compiled-module-target
(function).
define-loader-language
(macro).
dynamic-require
(function).
dynamic-require-as
(function).
dynamic-require-default
(function).
dynamic-require-once
(function).
dynamic-unrequire
(function).
ensure-lang-exists
(function).
expand-module
(function).
expand-module-for-emacs
(function).
faslize
(function).
find-module
(compiler macro).
find-module
(function).
guess-lang
(function).
guess-source
(function).
hash-lang-name
(type).
lang
(type).
lang
(slot).
lang-name
(function).
lang-name
(type).
load-module
(function).
load-same-name-system
(function).
loaded-modules-alist
(function).
module
(function).
module-dynamic-exports
(function).
module-meta
(compiler macro).
(setf module-meta)
(compiler macro).
module-meta
(function).
(setf module-meta)
(function).
module-progn-in
(macro).
package-expander
(function).
package-reader
(function).
reintern
(function).
reinterning
(macro).
require-as
(macro).
require-default
(macro).
require-for-emacs
(function).
require-once
(macro).
resolve-lang
(function).
source-lang
(function).
vernacular-version
(function).
with-meta-language
(macro).
*module-cells*
(special variable).
call/load-same-name-system-restart
(function).
call/meta-language
(function).
cl-read-module
(function).
clear-module-cells
(function).
compile-top-level-string
(symbol macro).
define-loader-language-1
(macro).
ensure-module-cell-loaded
(function).
ensure-module-loaded
(compiler macro).
ensure-module-loaded
(function).
expand-in-package
(function).
fasl-dir
(function).
fasl-lang-pattern
(class).
fasl?
(function).
file-emacs-mode-lang
(function).
guess-lang+pos
(function).
hash-lang-name?
(function).
intern-module-cell
(function).
lang-deps
(generic function).
language-oracle
(function).
list-module-cells
(function).
load-compiled-module
(function).
load-module-into-cell
(function).
loader-language-exports
(symbol macro).
loader-language-exports
(function).
lookup-hash-lang
(function).
maybe-find-asdf-system
(generic function).
module-cell
(compiler macro).
module-cell
(function).
module-cell
(class).
module-cell-meta
(function).
(setf module-cell-meta)
(function).
module-cell.meta
(generic reader).
(setf module-cell.meta)
(generic writer).
module-cell.module
(generic reader).
(setf module-cell.module)
(generic writer).
module-cell.source
(generic reader).
(setf module-cell.source)
(generic writer).
module-cell.timestamp
(generic reader).
(setf module-cell.timestamp)
(generic writer).
no-such-lang
(condition).
no-such-lang.lang
(generic reader).
package-compile-top-level?
(function).
package-expander-string
(symbol macro).
package-reader-string
(symbol macro).
resolve-lang-package
(function).
source-lang-for-oracle
(function).
source-without-lang
(condition).
suffix-package
(function).
unload-module
(function).
unload-module-cell
(function).
unrequire
(macro).
user-package
(function).
with-input-from-source
(macro).
with-load-same-name-system-restart
(macro).
vernacular/well-known
Symbols from this package are used in a keyword-like manner.
default
(slot).
vernacular/importing
Macros that handle importing from modules.
alexandria
.
common-lisp
.
overlord/base
.
overlord/global-state
.
overlord/redo
.
overlord/target
.
overlord/util
.
serapeum
.
uiop/filesystem
.
uiop/pathname
.
vernacular/import-set
.
vernacular/lang
.
vernacular/module
.
vernacular/specials
.
vernacular/types
.
import
(macro).
import-as-package
(macro).
import-as-subpackage
(macro).
import-default
(macro).
import/local
(macro).
with-import-default
(macro).
with-imports
(macro).
*claimed-module-names*
(special variable).
apply-prefix
(function).
binding-export-mismatch
(condition).
check-exports
(function).
check-static-bindings
(function).
check-static-bindings-1
(function).
check-static-bindings-now
(macro).
claim-module-name
(function).
clear-claimed-module-names
(function).
declaim-module
(macro).
duplicated-bindings
(condition).
expand-binding-spec
(function).
expand-bindings
(function).
function-wrapper
(macro).
import->defpackage
(macro).
import-as-package-aux
(macro).
import-binding
(macro).
import-bindings
(macro).
import-function
(macro).
import-module
(macro).
import-task
(macro).
importing-error
(condition).
lang+source
(function).
not-enough-info
(condition).
private+public+ref
(function).
private-keyword
(function).
private-ref
(function).
resolve-import-spec
(function).
subpackage-full-name
(function).
update-value-bindings
(macro).
vernacular/all
vernacular
overlord/target-protocol
.
vernacular/import-set
.
vernacular/importing
.
vernacular/include
.
vernacular/lang
.
vernacular/parsers
.
vernacular/well-known
.
vernacular/types
Types used throughout.
alexandria
.
common-lisp
.
overlord/types
.
serapeum
.
bindable-symbol
(type).
non-keyword
(type).
ns
(type).
ns
(slot).
private-name
(function).
private-ns
(function).
private-side
(function).
public-name
(function).
public-ns
(function).
public-side
(function).
vernacular-error
(compiler macro).
vernacular-error
(function).
vernacular-error
(condition).
+storage-for-deflex-var-cl-constants+
(constant).
cl-constants
(symbol macro).
ns+name
(function).
vernacular/file-package
Generate a unique per-file package.
alexandria
.
common-lisp
.
overlord/types
.
serapeum
.
uiop/pathname
.
abbreviate-file-name
(function).
find-file-package
(function).
intern-file-package
(function).
reset-file-package
(function).
+storage-for-deflex-var-tmp-mnt+
(constant).
class-name?
(function).
enough-unix-namestring
(function).
file-package-name
(function).
home-parent
(symbol macro).
make-file-package
(function).
package-own-symbols
(function).
reset-package
(function).
reset-package/delete-and-recreate
(function).
reset-package/undefine
(function).
reset-package/unintern-all
(function).
symbol-macro?
(function).
symbol-status
(function).
symbol-status
(type).
tmp-mnt
(symbol macro).
unintern-from-home-package
(function).
vernacular/file-local
Parse Emacs-style file-local variables.
alexandria
.
common-lisp
.
serapeum
.
file-emacs-mode
(function).
file-locals-alist
(function).
+storage-for-deflex-var-mode-frob+
(constant).
alist-keys-to-keywords
(function).
hairy?
(function).
isolate-substring
(function).
mode-frob
(symbol macro).
parse-hairy
(function).
parse-line
(function).
parse-simple
(function).
skip-first-line?
(function).
skip-prefixes
(symbol macro).
split
(function).
split-into-pairs
(function).
split-pair
(function).
vernacular/simple-module
Reference implementation of a module.
Most languages will expand into ‘simple-module’ forms.
alexandria
.
serapeum
.
vernacular/shadows
.
vernacular/types
.
module-progn
(macro).
read-module
(function).
simple-module
(macro).
simple-module
(structure).
static-exports
(function).
export-expr
(function).
make-simple-module
(function).
mlet
(macro).
no-macros-please
(condition).
not-exported
(function).
not-exported
(condition).
ns-error
(condition).
simple-module-error
(condition).
simple-module-exports
(reader).
simple-module-exports-table
(reader).
simple-module-p
(function).
vernacular/specials
Special variables used throughout.
common-lisp
.
overlord/types
.
*default-lang*
(special variable).
*language*
(special variable).
*module*
(special variable).
*program*
(special variable).
*program-preamble*
(special variable).
*source*
(special variable).
vernacular/hash-table-module
Support hash tables as modules.
alexandria
.
common-lisp
.
serapeum
.
hash-table-module
(function).
vernacular/compile-to-file
Compile a Lisp form into a fasl.
alexandria
.
common-lisp
.
serapeum
.
vernacular/specials
.
compile-to-file
(function).
fasl-ext
(symbol macro).
load-as-module
(function).
module
(type).
+storage-for-deflex-var-fasl-ext+
(constant).
+storage-for-deflex-var-no-module+
(constant).
define-file-package
(macro).
module?
(function).
no-module
(symbol macro).
universal-file
(symbol macro).
vernacular/hash-lang-syntax
Parse the #lang line in a module file.
alexandria
.
common-lisp
.
serapeum
.
vernacular/types
.
file-hash-lang
(function).
read-lang-name
(function).
skip-hash-lang
(function).
stream-hash-lang
(function).
valid-lang-name?
(function).
advance-stream
(function).
invalid-lang-name
(condition).
lang-char?
(function).
next-char
(function).
skip-comment
(function).
skip-comments-and-whitespace
(function).
skip-to-end-of-line
(function).
skip-whitespace
(function).
stream-take-while
(function).
vernacular/module
The API for lexical modules.
alexandria
.
common-lisp
.
serapeum
.
basic-module
(structure).
clear-inline-caches
(function).
default-export-module
(function).
default-export-module
(structure).
make-basic-module
(function).
module-error
(condition).
module-error-module
(generic reader).
module-exports
(generic function).
module-exports*
(function).
module-ref
(generic function).
module-ref*
(function).
module-ref-ns
(generic function).
module-ref/inline-cache
(macro).
module-static-exports
(generic function).
no-such-export
(condition).
not-a-module
(condition).
validate-module
(generic function).
*module-inline-cache-pointers*
(special variable).
+storage-for-deflex-var-battleshort+
(constant).
+storage-for-deflex-var-default-export-module-exports+
(constant).
+storage-for-deflex-var-default-key+
(constant).
+storage-for-deflex-var-flank-speed+
(constant).
+storage-for-deflex-var-unbound+
(constant).
basic-module-exports
(reader).
basic-module-exports-table
(reader).
basic-module-p
(function).
battleshort
(symbol macro).
default-export-module-default
(reader).
default-export-module-exports
(symbol macro).
default-export-module-p
(function).
default-export-table
(function).
default-key
(symbol macro).
empty-exports-table
(function).
fill-inline-cache
(function).
flank-speed
(symbol macro).
invalid-module
(condition).
register-inline-cache
(function).
unbound
(symbol macro).
unbound
(structure).
vernacular/shadows
Just like CL, except that some forms are shadowed so they can be rebound.
vernacular/cl
common-lisp
.
apply
(function).
caar
(function).
cadr
(function).
(setf car)
(setf expander).
car
(function).
case
(macro).
ccase
(macro).
cdar
(function).
cddr
(function).
(setf cdr)
(setf expander).
cdr
(function).
cond
(macro).
cons
(function).
cons
(type).
ctypecase
(macro).
def
(macro).
defalias
(macro).
defconst
(macro).
defconstant
(macro).
define-constant
(macro).
define-symbol-macro
(macro).
define-values
(macro).
defmacro
(macro).
defsubst
(macro).
deftype
(macro).
defun
(macro).
ecase
(macro).
etypecase
(macro).
eval
(function).
(setf first)
(setf expander).
first
(function).
flet
(macro).
funcall
(function).
import
(function).
labels
(macro).
lambda
(macro).
let
(macro).
let*
(macro).
list
(function).
list
(type).
list*
(function).
locally
(macro).
macrolet
(macro).
make
(function).
pop
(macro).
progn
(macro).
push
(macro).
(setf rest)
(setf expander).
rest
(function).
symbol-macrolet
(macro).
t
(symbol macro).
typecase
(macro).
define-cxr
(macro).
handle-default-keys
(function).
(setf name)
(setf expander).
set-car!
(function).
set-cdr!
(function).
shadow-case
(macro).
shadow-cases
(macro).
Definitions are sorted by export status, category, package, and then by lexicographic order.
The name (symbol) of the language to use if the module file does not specify a language.
Variables that should be given fresh rebindings while reading in a
module.
This should be a superset of the variables bound by CL during calls to ‘cl:load’.
The name (symbol) of the current language.
The module being returned.
The program to be compiled.
A preamble to the program to be compiled.
This would be something like a package declaration, that the reader has to see before the other forms.
Source file being compiled.
Define PACKAGE-NAME as a package implementing a very simple language.
When loading SOURCE, with the language package bound as the current
package, the value returned by READER is used as the module.
E.g. a language that just loaded a text file as a string:
(define-loader-language :text-file (source)
(alexandria:read-file-into-string source))
Does some sanity checking on PACKAGE-NAME to make sure an existing package is not overwritten.
Syntax for importing from modules.
Like ‘import’, but instead of creating bindings in the current package, create a new package named PACKAGE-NAME which exports all of the symbols bound in the body of the import form.
Read the module file at PATH using the current language (package),
inlining the resulting forms as if they had been written in the
current file (without a ‘module-progn’).
Adds a build dependency on PATH.
Resolve a package’s expander at macro-expansion time.
Also, ensure that PACKAGE is the current package when BODY is
macro-expanded.
If PACKAGE does not export an expander, ‘progn’ is used instead.
Embed an inline cache (using ‘load-time-value’) and use it to cache lookups of KEY in MODULE.
Run BODY with each symbol in NAMES bound to the symbol of the same name in the current package.
Load a module, resolving the base at macro-expansion time.
A single arg is treated as the source, with the language being inferred.
Two args is treated as the language and the source.
Require (as with ‘require-as’) but only if the module is not already loaded.
Read the module file at PATH using the syntax of its own language,
and inline the resulting forms as if they had been written in the
current file.
Adds a build dependency on PATH.
A version of ‘import’ with local scope.
Expose the call to module-cell.
Expand the call to module-cell at compile time so it can be resolved at load time.
Look up the inline caches pointing into MODULE and make them all
unbound again.
This should be used before a module is reloaded, to make sure the inline caches will point into the new module.
Compile PROGRAM to a fasl.
Ensure that the module at SOURCE is loaded.
Passing FORCE will reload the module even if it is already loaded.
Ensure that the module at SOURCE is loaded, defaulting its language to LANG. Passing FORCE will reload the module even if it is already loaded.
Unload the module at SOURCE.
Expand IMPORT-SET, an R6RS-style import set, into a list of imports. Imports are aliased to ensure that they are accessible in the current package (or PACKAGE, if specified.)
Parse SOURCE into a module form suitable for compilation using the reader and expander exported by PACKAGE.
Like ‘expand-module’, but first resolving LANG.
Intended to be called from Emacs to view the current module’s
expansion.
Get the path to the fasl for PATHNAME.
The fasl will have whatever the current Lisp’s default extension is
for fasls (‘fasl-ext‘).
The existing extension of PATHNAME is preserved as suffix to the name.
Return two values: the name of the lang (as a string) and the position to start reading from.
Return an alist of file-local variables in FILE.
If SOURCE has been loaded, return its module. Otherwise return nil.
Wrap HASH-TABLE as a module.
Load FILE and return whatever it assigns to ‘*module*’.
Resolve SOURCE and load it as a module.
Invoke the ‘load-same-name-system’ restart.
Return an alist of (path . module-object) for all loaded modules.
Entry point for calling ‘module-exports’ from internal code. Inlinable, and skips generic dispatch for some common types.
Entry point for calling ‘module-ref’ from internal code. Inlinable, and skips generic dispatch for some common types.
Resolve the module expander exported by PACKAGE.
Resolve the reader exported by PACKAGE.
Intern the symbol name of S in package P.
Like ‘dynamic-require-as’, but with looser restrictions for easy interoperation with Emacs.
module-error
)) ¶A list of names exported by MODULE.
hash-table
)) ¶simple-module
)) ¶default-export-module
)) ¶basic-module
)) ¶package
)) ¶Get the value of NAME in MODULE.
hash-table
) name) ¶default-export-module
) key) ¶default-export-module
) (key (eql vernacular/well-known:default)
)) ¶basic-module
) key) ¶Get the value of NAME in MODULE, using namespace NS.
If MODULE does not use namespaces, this is the same as MODULE-REF.
simple-module
) name ns) ¶simple-module
) name (ns (eql macro-function)
)) ¶list
) (ns (eql function)
)) ¶package
) name (ns null
)) ¶package
) name (ns (eql macro-function)
)) ¶package
) name (ns (eql function)
)) ¶package
) name (ns (eql setf)
)) ¶Get static exports from LANG and SOURCE.
Returns two values: a list of static exports, and a second value that is T if the exports could be statically determined.
Validate that MODULE can be used as a module. If the module is valid, return it.
module-cell
) &key) ¶fasl-lang-pattern
) (sources sequence
)) ¶overlord/target
.
fasl-lang-pattern
) (sources sequence
)) ¶overlord/target
.
module-cell
)) ¶A recursive lock.
serapeum
.
lock
.
fasl-lang-pattern
) sources outputs) ¶overlord/target
.
module-cell
) stream) ¶overlord-error
.
:module
This slot is read-only.
:key
overlord-error
.
A minimal module, with a list of exports and a function that wraps exports.
A module with a single export named ’vernacular:default.
%read-only-struct
.
(alexandria:required-argument (quote vernacular/well-known:default))
This slot is read-only.
%read-only-struct
.
vernacular/shadows:list
This slot is read-only.
function
(vernacular/shadows:lambda (vernacular/simple-module::module vernacular/simple-module::key vernacular/types:ns) (error (quote vernacular/simple-module::not-exported) :module vernacular/simple-module::module :ns vernacular/types:ns :name vernacular/simple-module::key))
This slot is read-only.
To a rough approximation, a symbol that can/should be bound.
You’d better know what you’re doing.
The extension of a fasl in this Lisp.
Go as fast as you safely can.
Table to track claimed modules, so we can warn if they are redefined.
The global table of all module cells.
Table of modules and inline caches.
Maps a module object to a list of weak pointers to inline cache
objects (boxes).
Why use weak pointers? To avoid accumulating pointers into old versions of code that has been recompiled.
Wrapper around check-static-bindings to force evaluation at compile time. Can’t use eval-when because it has to work for local bindings.
Auxiliary macro for ‘define-loader-language’.
The part that can only be expanded once PACKAGE-NAME exists as a package.
Global definition for possible shadowing.
When ONCE is non-nil, the module will only be rebuilt if it has not yet been loaded.
Wrap ‘dynamic-unrequire’, capturing the compile-time base.
Read from SOURCE, skipping any #lang declaration.
Expose the call to module-cell.
Try to rewrite ‘module-cell’ to do the lookup once at load time.
Make sure the bindings are a subset of the exports.
Check that BINDINGS is free of duplicates. Also, using ‘module-static-exports’, check that all of the symbols being bound are actually exported by the module specified by LANG and SOURCE.
Warn if SOURCE is already bound to a different MODULE.
Delete information not needed at runtime from module cells.
Return an export table with a single binding, ‘vernacular:default’, mapped to DEFAULT.
An export table that always signals an error.
Ensure CELL’s module has been loaded.
Load SOURCE unless it is already loaded.
Return the directory to output the fasl for FILE to. This directory contains the directories of FILE as a suffix.
Does PATHNAME use the extension for a fasl?
Register INLINE-CACHE as an inline cache for MODULE and store MODULE’s value for KEY in the cache.
If FILE has a #lang line (or, failing that, a -*- mode: -*- line), return the lang and the position at which the #lang declaration ends.
Does S contain pairs of variables? (As opposed to a single value, which is implicitly interpreted as the mode).
Get the module cell for PATH, creating and interning one if it does not exist.
Return the part of STRING between mode frobs.
Load the compiled version of SOURCE (already resolved) as a module, providing a restart to compile it if necessary.
Load (or reload) its module into CELL.
Resolve PATH and intern a module cell pointing to it.
Lookup KEY in the metadata for module cell CELL.
Does the language specified by PACKAGE need its forms to be compiled at the top level?
Parse a string containing pairs of variables.
Parse an alist of file-local-variables from a string.
Parse a string that contains only the name of the mode.
Parse CLAUSE into three terms:
1. A (possibly qualified) private name.
2. A (possibly qualified) public name.
3. A form to look up the private name of CLAUSE in MODULE.
Add BOX to the table of inline caches for MODULE.
This is important so the inline caches can be reset if MODULE is
reloaded.
Assuming LINE is the first line of the file, should we skip it?
Split SEQ on DELIM, discarding empty subseqs.
Split STRING on semicolons.
Split STRING in two on a colon and cons the halves together.
Like ‘resolve-package’ but, if a package exists with the same name, but ending in SUFFIX, and inheriting from that package, return that instead.
Unload the module defined by SOURCE.
Restore CELL to a state where its module is unloaded.
Like ‘resolve-package’ but, if a package exists with the same name, but ending in ‘-user’, and inheriting from that package, return that instead.
Return the ASDF system named LANG, or nil if there is no such system.
no-such-lang
)) ¶module-cell
)) ¶module-cell
)) ¶Metadata about the module. This persists even when the module is reloaded.
meta
.
module-cell
)) ¶module-cell
)) ¶The actual module.
module-cell
)) ¶module-cell
)) ¶Absolute pathname of the module’s source file.
module-cell
)) ¶module-cell
)) ¶Timestamp when the module was last updated, for debugging purposes.
no-such-lang
)) ¶lang
.
simple-module
)) ¶serapeum
.
basic-module
)) ¶serapeum
.
default-export-module
)) ¶serapeum
.
:bindings
condition
.
import-set-condition
.
simple-error
.
:import-set
:token
overlord-error
.
:lang
This slot is read-only.
:name
:ns
:module
:source
Distinguished value for something unbound.
%unit
.
pattern
.
Storage for a module.
Each source file gets its own module cell with its own unique
identity.
The module itself may be reloaded, but the module cell is interned forever.
Timestamp when the module was last updated, for debugging purposes.
local-time
.
overlord/stamp:target-timestamp
overlord/stamp:never
Absolute pathname of the module’s source file.
(and serapeum:file-pathname overlord/types:tame-pathname)
:source
Metadata about the module. This persists even when the module is reloaded.
overlord/types:plist
The actual module.
Jump to: | %
(
A B C D E F G H I L M N O P R S T U V W |
---|
Jump to: | %
(
A B C D E F G H I L M N O P R S T U V W |
---|
Jump to: | *
+
B C D E F H I K L M N P S T U |
---|
Jump to: | *
+
B C D E F H I K L M N P S T U |
---|
Jump to: | B C D F H I L M N P S T U V |
---|
Jump to: | B C D F H I L M N P S T U V |
---|