The named-closure Reference Manual

This is the named-closure Reference Manual, version 0.0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Tue Jul 15 06:03:49 2025 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 named-closure

Named closures

Maintainer

Qiantan Hong <>

Author

Qiantan Hong <>

License

MIT

Version

0.0.1

Dependencies
  • closer-mop (system).
  • alexandria (system).
  • serapeum (system).
  • iterate (system).
  • trivial-cltl2 (system).
Source

named-closure.asd.

Child Component

named-closure.lisp (file).


3 Files

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


3.1 Lisp


3.1.1 named-closure/named-closure.asd

Source

named-closure.asd.

Parent Component

named-closure (system).

ASDF Systems

named-closure.


3.1.2 named-closure/named-closure.lisp

Source

named-closure.asd.

Parent Component

named-closure (system).

Packages

named-closure.

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 named-closure

Source

named-closure.lisp.

Use List

closer-common-lisp.

Public Interface
Internals

5 Definitions

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


5.1 Public Interface


5.1.1 Macros

Macro: defnclo (name lambda-list-1 lambda-list-2 &body body)

Defines a named closure type.

Similar to
(defun make-NAME LAMBDA-LIST-1
(lambda LAMBDA-LIST-2 . BODY))

except that ‘make-NAME’ now returns a funcallable object with slots corresponding to variables declared in LAMBDA-LIST-1, has readable print syntax, and re-evaluating the DEFNCLO updates the function definition of all such funcallable objects. Closed variables with the same names are carried over across update.

Package

named-closure.

Source

named-closure.lisp.

Macro: nclo (name lambda-list &body body)

Similar to (lambda LAMBDA-LIST . BODY).

Returns a funcallable object with slots corresponding to free variable in BODY, has readable print syntax, and if ‘nclo’ with the same NAME is encountered (for example, if re-evaluated from REPL), the function definition of all such funcallable objects is updated. Closed variables with the same names are carried over across update.

Package

named-closure.

Source

named-closure.lisp.


5.1.2 Classes

Class: nclo
Package

named-closure.

Source

named-closure.lisp.

Direct superclasses

funcallable-standard-object.

Direct slots
Slot: code
Allocation

:class


5.2 Internals


5.2.1 Ordinary functions

Function: lambda-list-fvs (lambda-list)
Package

named-closure.

Source

named-closure.lisp.

Function: lambda-list-serialize-form (lambda-list)
Package

named-closure.

Source

named-closure.lisp.

Function: make-function-name (symbol)
Package

named-closure.

Source

named-closure.lisp.

Function: prevent-eval (form)
Package

named-closure.

Source

named-closure.lisp.

Function: walk-fvs (form env)
Package

named-closure.

Source

named-closure.lisp.


Appendix A Indexes


A.1 Concepts


A.3 Variables

Jump to:   C   S  
Index Entry  Section

C
code: Public classes

S
Slot, code: Public classes