The fn Reference Manual

This is the fn Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Wed May 15 05:15:23 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 fn

Some macros for lambda brevity

Author

Chris Bagley (Baggers) <>

License

Public Domain

Dependency

named-readtables (system).

Source

fn.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 fn/fn.asd

Source

fn.asd.

Parent Component

fn (system).

ASDF Systems

fn.


3.1.2 fn/package.lisp

Source

fn.asd.

Parent Component

fn (system).

Packages

fn.


3.1.3 fn/mad.lisp

Dependency

package.lisp (file).

Source

fn.asd.

Parent Component

fn (system).

Internals

3.1.4 fn/fn.lisp

Dependency

mad.lisp (file).

Source

fn.asd.

Parent Component

fn (system).

Public Interface
  • fn+ (compiler macro).
  • fn+ (function).
  • fn~ (compiler macro).
  • fn~ (function).
  • fn~r (function).
Internals

4 Packages

Packages are listed by definition order.


4.1 fn

Source

package.lisp.

Use List

common-lisp.

Public Interface
  • fn+ (compiler macro).
  • fn+ (function).
  • fn~ (compiler macro).
  • fn~ (function).
  • fn~r (function).
Internals

5 Definitions

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


5.1 Public Interface


5.1.1 Compiler macros

Compiler Macro: fn+ (&rest functions)
Package

fn.

Source

fn.lisp.

Compiler Macro: fn~ (function &rest args)
Package

fn.

Source

fn.lisp.


5.1.2 Ordinary functions

Function: fn+ (function &rest more-functions)

Returns a function composed of FUNCTION and MORE-FUNCTIONS that applies its arguments to to each in turn, starting from the rightmost of MORE-FUNCTIONS, and then calling the next one with the primary value of the last.

Package

fn.

Source

fn.lisp.

Function: fn~ (function &rest args)

Partially apply args to function

Package

fn.

Source

fn.lisp.

Function: fn~r (function &rest args)

Partially apply args to function

Package

fn.

Source

fn.lisp.


5.2 Internals


5.2.1 Special variables

Special Variable: *env*
Package

fn.

Source

mad.lisp.

Special Variable: *form-handler*
Package

fn.

Source

mad.lisp.

Special Variable: *stop-on-symbols*
Package

fn.

Source

fn.lisp.


5.2.2 Macros

Macro: defhandler (symbol lambda-list &body body)
Package

fn.

Source

mad.lisp.

Macro: fn* (form)
Package

fn.

Source

fn.lisp.

Macro: m (form)
Package

fn.

Source

mad.lisp.

Macro: m-list (&body body)
Package

fn.

Source

mad.lisp.

Macro: macroexpand-dammit-as-macro (form)
Package

fn.

Source

mad.lisp.

Macro: with-imposed-bindings (&body body)
Package

fn.

Source

mad.lisp.

Macro: without-package-locking (&body body)
Package

fn.

Source

mad.lisp.


5.2.3 Ordinary functions

Function: binding-to-symbol (binding)
Package

fn.

Source

mad.lisp.

Function: clean-fbindings (bindings)

Return a set of bindings that always defaults to nil

Package

fn.

Source

mad.lisp.

Function: compiler-macroexpand-1 (form &optional *env*)
Package

fn.

Source

mad.lisp.

Function: declare-fbindings-ignorable (bindings)
Package

fn.

Source

mad.lisp.

Function: declare-lambda-list-ignorable (lambda-list)
Package

fn.

Source

mad.lisp.

Function: default-form-handler (first &rest rest)
Package

fn.

Source

mad.lisp.

Function: dump-fbinding (name lambda-list &rest body)
Package

fn.

Source

mad.lisp.

Function: dump-fbindings (bindings)
Package

fn.

Source

mad.lisp.

Function: e (form)
Package

fn.

Source

mad.lisp.

Function: e-list (list)
Package

fn.

Source

mad.lisp.

Function: filter-tree (tree predicate &optional stop-on)
Package

fn.

Source

fn.lisp.

Function: fn*-internals (form env)
Package

fn.

Source

fn.lisp.

Function: force-first (x)
Package

fn.

Source

mad.lisp.

Function: force-list (x)
Package

fn.

Source

mad.lisp.

Function: form-handler (first)
Package

fn.

Source

mad.lisp.

Function: function-name-p (name)
Package

fn.

Source

mad.lisp.

Function: hander-block (block name &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-catch (catch tag &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-declare (declare &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-defun (defun name lambda-list &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-eval-when (eval-when situation &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-flet (flet bindings &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-function (function name)
Package

fn.

Source

mad.lisp.

Function: hander-go (go tag)
Package

fn.

Source

mad.lisp.

Function: hander-labels (labels bindings &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-lambda (lambda lambda-list &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-let (let bindings &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-let* (let* bindings &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-load-time-value (load-time-value form &optional read-only-p)
Package

fn.

Source

mad.lisp.

Function: hander-macrolet (macrolet bindings &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-named-lambda (named-lambda name lambda-list &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-progn (progn &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-progv (progv symbols values &rest body)
Package

fn.

Source

mad.lisp.

Function: hander-quote (quote object)
Package

fn.

Source

mad.lisp.

Function: hander-return-from (return-from name &optional value)
Package

fn.

Source

mad.lisp.

Function: hander-setq (setq &rest pairs)
Package

fn.

Source

mad.lisp.

Function: hander-tagbody (tagbody &rest tags-and-forms)
Package

fn.

Source

mad.lisp.

Function: hander-the (the value-type form)
Package

fn.

Source

mad.lisp.

Function: hander-unwind-protect (unwind-protect protected-form &rest cleanup)
Package

fn.

Source

mad.lisp.

Function: lambda-reader (stream char)
Package

fn.

Source

fn.lisp.

Function: macroexpand-dammit (form &optional *env*)
Package

fn.

Source

mad.lisp.

Function: macroexpand-dammit-expansion (form &optional *env*)
Package

fn.

Source

mad.lisp.

Function: macroexpand-dammit-string (str)
Package

fn.

Source

mad.lisp.

Function: maybe-locally (forms)
Package

fn.

Source

mad.lisp.

Function: normalized-arg-count (x)
Package

fn.

Source

fn.lisp.

Function: runtime-symbol (name package-name)
Package

fn.

Source

mad.lisp.

Function: tagbody-restore-tags (list)
Package

fn.

Source

mad.lisp.

Function: valid-_-name (x)
Package

fn.

Source

fn.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   B   C   D   E   F   H   L   M   N   R   T   V   W  
Index Entry  Section

B
binding-to-symbol: Private ordinary functions

C
clean-fbindings: Private ordinary functions
Compiler Macro, fn+: Public compiler macros
Compiler Macro, fn~: Public compiler macros
compiler-macroexpand-1: Private ordinary functions

D
declare-fbindings-ignorable: Private ordinary functions
declare-lambda-list-ignorable: Private ordinary functions
default-form-handler: Private ordinary functions
defhandler: Private macros
dump-fbinding: Private ordinary functions
dump-fbindings: Private ordinary functions

E
e: Private ordinary functions
e-list: Private ordinary functions

F
filter-tree: Private ordinary functions
fn*: Private macros
fn*-internals: Private ordinary functions
fn+: Public compiler macros
fn+: Public ordinary functions
fn~: Public compiler macros
fn~: Public ordinary functions
fn~r: Public ordinary functions
force-first: Private ordinary functions
force-list: Private ordinary functions
form-handler: Private ordinary functions
Function, binding-to-symbol: Private ordinary functions
Function, clean-fbindings: Private ordinary functions
Function, compiler-macroexpand-1: Private ordinary functions
Function, declare-fbindings-ignorable: Private ordinary functions
Function, declare-lambda-list-ignorable: Private ordinary functions
Function, default-form-handler: Private ordinary functions
Function, dump-fbinding: Private ordinary functions
Function, dump-fbindings: Private ordinary functions
Function, e: Private ordinary functions
Function, e-list: Private ordinary functions
Function, filter-tree: Private ordinary functions
Function, fn*-internals: Private ordinary functions
Function, fn+: Public ordinary functions
Function, fn~: Public ordinary functions
Function, fn~r: Public ordinary functions
Function, force-first: Private ordinary functions
Function, force-list: Private ordinary functions
Function, form-handler: Private ordinary functions
Function, function-name-p: Private ordinary functions
Function, hander-block: Private ordinary functions
Function, hander-catch: Private ordinary functions
Function, hander-declare: Private ordinary functions
Function, hander-defun: Private ordinary functions
Function, hander-eval-when: Private ordinary functions
Function, hander-flet: Private ordinary functions
Function, hander-function: Private ordinary functions
Function, hander-go: Private ordinary functions
Function, hander-labels: Private ordinary functions
Function, hander-lambda: Private ordinary functions
Function, hander-let: Private ordinary functions
Function, hander-let*: Private ordinary functions
Function, hander-load-time-value: Private ordinary functions
Function, hander-macrolet: Private ordinary functions
Function, hander-named-lambda: Private ordinary functions
Function, hander-progn: Private ordinary functions
Function, hander-progv: Private ordinary functions
Function, hander-quote: Private ordinary functions
Function, hander-return-from: Private ordinary functions
Function, hander-setq: Private ordinary functions
Function, hander-tagbody: Private ordinary functions
Function, hander-the: Private ordinary functions
Function, hander-unwind-protect: Private ordinary functions
Function, lambda-reader: Private ordinary functions
Function, macroexpand-dammit: Private ordinary functions
Function, macroexpand-dammit-expansion: Private ordinary functions
Function, macroexpand-dammit-string: Private ordinary functions
Function, maybe-locally: Private ordinary functions
Function, normalized-arg-count: Private ordinary functions
Function, runtime-symbol: Private ordinary functions
Function, tagbody-restore-tags: Private ordinary functions
Function, valid-_-name: Private ordinary functions
function-name-p: Private ordinary functions

H
hander-block: Private ordinary functions
hander-catch: Private ordinary functions
hander-declare: Private ordinary functions
hander-defun: Private ordinary functions
hander-eval-when: Private ordinary functions
hander-flet: Private ordinary functions
hander-function: Private ordinary functions
hander-go: Private ordinary functions
hander-labels: Private ordinary functions
hander-lambda: Private ordinary functions
hander-let: Private ordinary functions
hander-let*: Private ordinary functions
hander-load-time-value: Private ordinary functions
hander-macrolet: Private ordinary functions
hander-named-lambda: Private ordinary functions
hander-progn: Private ordinary functions
hander-progv: Private ordinary functions
hander-quote: Private ordinary functions
hander-return-from: Private ordinary functions
hander-setq: Private ordinary functions
hander-tagbody: Private ordinary functions
hander-the: Private ordinary functions
hander-unwind-protect: Private ordinary functions

L
lambda-reader: Private ordinary functions

M
m: Private macros
m-list: Private macros
Macro, defhandler: Private macros
Macro, fn*: Private macros
Macro, m: Private macros
Macro, m-list: Private macros
Macro, macroexpand-dammit-as-macro: Private macros
Macro, with-imposed-bindings: Private macros
Macro, without-package-locking: Private macros
macroexpand-dammit: Private ordinary functions
macroexpand-dammit-as-macro: Private macros
macroexpand-dammit-expansion: Private ordinary functions
macroexpand-dammit-string: Private ordinary functions
maybe-locally: Private ordinary functions

N
normalized-arg-count: Private ordinary functions

R
runtime-symbol: Private ordinary functions

T
tagbody-restore-tags: Private ordinary functions

V
valid-_-name: Private ordinary functions

W
with-imposed-bindings: Private macros
without-package-locking: Private macros