The positional-lambda Reference Manual

This is the positional-lambda Reference Manual, version 2.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:35:50 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 positional-lambda

positional-lambda is a concise, intuitive and flexible syntax (macro) for trivial lambdas that eschews explicit (and often contextually-redundant) naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical "gaps" are left in the positional references. Further convenience features are provided.

Author

Jean-Philippe Paradis <>

License

Public Domain

Version

2.0

Dependency

map-bind (system).

Source

positional-lambda.asd.

Child Components

3 Files

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


3.1 Lisp


3.1.1 positional-lambda/positional-lambda.asd

Source

positional-lambda.asd.

Parent Component

positional-lambda (system).

ASDF Systems

positional-lambda.


3.1.2 positional-lambda/package.lisp

Source

positional-lambda.asd.

Parent Component

positional-lambda (system).

Packages

positional-lambda.


3.1.3 positional-lambda/main.lisp

Dependency

package.lisp (file).

Source

positional-lambda.asd.

Parent Component

positional-lambda (system).

Public Interface

plambda (macro).

Internals

4 Packages

Packages are listed by definition order.


4.1 positional-lambda

Source

package.lisp.

Nickname

plambda

Use List

common-lisp.

Public Interface

plambda (macro).

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: plambda (&body body)
Package

positional-lambda.

Source

main.lisp.


5.2 Internals


5.2.1 Macros

Macro: multiple-value-&bind (lambda-list values-form &body body)
Package

positional-lambda.

Source

main.lisp.


5.2.2 Ordinary functions

Function: %assemble (body &key let-bindings lambda-list ignored-vars &allow-other-keys)
Package

positional-lambda.

Source

main.lisp.

Function: %compute-lambda-list (used-required-vars min-length rest-usage rest-var)
Package

positional-lambda.

Source

main.lisp.

Function: %gensym-generator (&optional default-base)
Package

positional-lambda.

Source

main.lisp.

Function: %make-bindings-accumulator ()
Package

positional-lambda.

Source

main.lisp.

Function: %make-lambda-list-accumulator ()
Package

positional-lambda.

Source

main.lisp.

Function: %make-positional-gaps-filler (callback &key start min-end)
Package

positional-lambda.

Source

main.lisp.

Function: %make-positional-vars-accumulator (var-function)
Package

positional-lambda.

Source

main.lisp.

Function: %make-walking-state-closures (&key min-length-indicator accept-rest-p &allow-other-keys)
Package

positional-lambda.

Source

main.lisp.

Function: %parse-body (body)
Package

positional-lambda.

Source

main.lisp.

Function: %positional-ref-p (object)
Package

positional-lambda.

Source

main.lisp.

Function: %processing-local-special-forms (local-special-forms-alist else)
Package

positional-lambda.

Source

main.lisp.

Function: %standard-expansion-process (parse-body make-walking-state make-local-special-forms assemble)
Package

positional-lambda.

Source

main.lisp.

Function: %standard-local-special-forms (&key add-let-binding &allow-other-keys)
Package

positional-lambda.

Source

main.lisp.

Function: %walk (body process-possible-terminal)
Package

positional-lambda.

Source

main.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %  
F   M   P  
Index Entry  Section

%
%assemble: Private ordinary functions
%compute-lambda-list: Private ordinary functions
%gensym-generator: Private ordinary functions
%make-bindings-accumulator: Private ordinary functions
%make-lambda-list-accumulator: Private ordinary functions
%make-positional-gaps-filler: Private ordinary functions
%make-positional-vars-accumulator: Private ordinary functions
%make-walking-state-closures: Private ordinary functions
%parse-body: Private ordinary functions
%positional-ref-p: Private ordinary functions
%processing-local-special-forms: Private ordinary functions
%standard-expansion-process: Private ordinary functions
%standard-local-special-forms: Private ordinary functions
%walk: Private ordinary functions

F
Function, %assemble: Private ordinary functions
Function, %compute-lambda-list: Private ordinary functions
Function, %gensym-generator: Private ordinary functions
Function, %make-bindings-accumulator: Private ordinary functions
Function, %make-lambda-list-accumulator: Private ordinary functions
Function, %make-positional-gaps-filler: Private ordinary functions
Function, %make-positional-vars-accumulator: Private ordinary functions
Function, %make-walking-state-closures: Private ordinary functions
Function, %parse-body: Private ordinary functions
Function, %positional-ref-p: Private ordinary functions
Function, %processing-local-special-forms: Private ordinary functions
Function, %standard-expansion-process: Private ordinary functions
Function, %standard-local-special-forms: Private ordinary functions
Function, %walk: Private ordinary functions

M
Macro, multiple-value-&bind: Private macros
Macro, plambda: Public macros
multiple-value-&bind: Private macros

P
plambda: Public macros


A.3 Variables