The defrec Reference Manual

Table of Contents

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

The defrec Reference Manual

This is the defrec Reference Manual, generated automatically by Declt version 2.3 "Robert April" on Wed Mar 14 03:48:10 2018 GMT+0.


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

1 Introduction

                                DEFREC
                                ------

                           By Robert Smith


DEFREC is a library for defining "top-level" mutually recursive
functions.

Example:

(defrec
  (even (x)
    (declare (type unsigned-byte x))
    (if (zerop x) t (odd (1- x))))
  (odd (x) 
    (declare (type unsigned-byte x))
    (if (zerop x) nil (even (1- x)))))

Now we can call EVEN and ODD.


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 defrec

Author

Robert Smith <quad@symbo1ics.com>

License

BSD 3-clause

Description

A library for defining top-level mutually recursive functions.

Dependency

alexandria

Source

defrec.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 defrec.asd

Location

defrec.asd

Systems

defrec (system)


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

3.1.2 defrec/package.lisp

Parent

defrec (system)

Location

package.lisp

Packages

defrec


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

3.1.3 defrec/defrec.lisp

Dependency

package.lisp (file)

Parent

defrec (system)

Location

defrec.lisp

Exported Definitions

defrec (macro)

Internal Definitions

&-symbol (function)


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

4 Packages

Packages are listed by definition order.


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

4.1 defrec

Source

package.lisp (file)

Use List

common-lisp

Exported Definitions

defrec (macro)

Internal Definitions

&-symbol (function)


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


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

5.1.1 Macros

Macro: defrec &body DEFINITIONS

Define mutually recursive functions. Each definition of DEFINITIONS should be of the same form of FLET or LABELS:

(<function name> <lambda list>
<function body>).

Currently, lambda lists can only be lists of symbols. &REST, &OPTIONAL, and &KEY arguments are not supported.

Package

defrec

Source

defrec.lisp (file)


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

5.2 Internal definitions


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

5.2.1 Functions

Function: &-symbol SYMBOL
Package

defrec

Source

defrec.lisp (file)


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

Appendix A Indexes


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

A.1 Concepts

Jump to:   D   F   L  
Index Entry  Section

D
defrec.asd: The defrec<dot>asd file
defrec/defrec.lisp: The defrec/defrec<dot>lisp file
defrec/package.lisp: The defrec/package<dot>lisp file

F
File, Lisp, defrec.asd: The defrec<dot>asd file
File, Lisp, defrec/defrec.lisp: The defrec/defrec<dot>lisp file
File, Lisp, defrec/package.lisp: The defrec/package<dot>lisp file

L
Lisp File, defrec.asd: The defrec<dot>asd file
Lisp File, defrec/defrec.lisp: The defrec/defrec<dot>lisp file
Lisp File, defrec/package.lisp: The defrec/package<dot>lisp file

Jump to:   D   F   L  

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

A.2 Functions

Jump to:   &  
D   F   M  
Index Entry  Section

&
&-symbol: Internal functions

D
defrec: Exported macros

F
Function, &-symbol: Internal functions

M
Macro, defrec: Exported macros

Jump to:   &  
D   F   M  

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

A.3 Variables


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

A.4 Data types

Jump to:   D   P   S  
Index Entry  Section

D
defrec: The defrec system
defrec: The defrec package

P
Package, defrec: The defrec package

S
System, defrec: The defrec system

Jump to:   D   P   S