The alexandria+ Reference Manual

Table of Contents

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

The alexandria+ Reference Manual

This is the alexandria+ Reference Manual, version 1.1, generated automatically by Declt version 3.0 "Montgomery Scott" on Sun May 15 03:15:19 2022 GMT+0.


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

1 Introduction

Contributors Forks Stargazers Issues MS-PL License LinkedIn

About the Project

We generally follow two of the three guiding principles of Alexandria:

Manpower does not permit testing on all Lisp implementations, so we target Genera, SBCL and CCL.

An additional guiding principal is that we only add functionality that is not already available in UIOP, OSICAT or alexandria, but required for multiple projects that we work on.

Other utilities libraries include:

Built With

Getting Started

To get a local copy up and running follow these steps:

Prerequisites

An ANSI Common Lisp implementation. Developed and tested with SBCL, Genera and CCL.

Github

To make the system accessible to ASDF (a build facility, similar to make in the C world), clone the repository in a directory it knows about. By default the common-lisp directory in your home directory is known. Create this if it doesn't already exist and then:

  1. Clone the repository
    cd ~/common-lisp/ &&
    git clone https://github.com/Symbolics/alexandria-plus.git
    
  2. Reset the ASDF source-registry to find the new system (from the REPL)
    (asdf:clear-source-registry)
    
  3. Load the system
    (asdf:load-system :alexandria+)
    

Usage

The alexandria+ source code is organised the same as the alexandria source. For example the alist and plist utilities are in lists.lisp in both alexandria and alexandria+. It is intended to be used alongside alexandria, e.g. (:use :alexandria :alexandria+)

For more examples, please refer to the Documentation.

Roadmap

See the open issues for a list of proposed features (and known issues).

Resources

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated. Please see CONTRIBUTING.md for details on the code of conduct, and the process for submitting pull requests.

License

Distributed under the MS-PL License. See LICENSE for more information.

Contact

Project Link: https://github.com/Symbolics/alexandria-plus


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 alexandria+

Author

Steven Nunez <steve@symbolics.tech>

Home Page

https://github.com/symbolics/alexandria+

License

MS-PL

Description

A conservative set of extensions to Alexandria utilities.

Long Description

Utilities not in Alexandria, UIOP or OSICAT.

Version

1.1

Dependency

alexandria

Source

alexandria+.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 alexandria+.asd

Location

alexandria+.asd

Systems

alexandria+ (system)


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

3.1.2 alexandria+/pkgdcl.lisp

Parent

alexandria+ (system)

Location

pkgdcl.lisp

Packages

alexandria+


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

3.1.3 alexandria+/lists.lisp

Parent

alexandria+ (system)

Location

lists.lisp

Exported Definitions
Internal Definitions

*assoc-test* (special variable)


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

3.1.4 alexandria+/types.lisp

Parent

alexandria+ (system)

Location

types.lisp

Exported Definitions

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

4 Packages

Packages are listed by definition order.


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

4.1 alexandria+

Source

pkgdcl.lisp (file)

Use List

common-lisp

Exported Definitions
Internal Definitions

*assoc-test* (special variable)


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


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

5.1.1 Macros

Macro: defprop SYMBOL VALUE INDICATOR

Gives SYMBOL an INDICATOR property of VALUE.
After this is done (CL:GET symbol indicator) returns VALUE

Package

alexandria+

Source

lists.lisp (file)


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

5.1.2 Functions

Function: alist-keys ALIST

Returns a list of the keys in ALIST.

Package

alexandria+

Source

lists.lisp (file)

Function: alist-values ALIST

Returns a list of the values in ALIST.

Package

alexandria+

Source

lists.lisp (file)

Function: alistp VALUE

Returns T if VALUE is an ALIST.

Package

alexandria+

Source

lists.lisp (file)

Function: cdr-assoc ITEM ALIST &key TEST

Return the value associated with ITEM in ALIST.

Package

alexandria+

Source

lists.lisp (file)

Function: plistp VALUE

Returns VALUE if it is a properly formed PLIST, NIL otherwise.

Package

alexandria+

Source

lists.lisp (file)


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

5.1.3 Types

Type: alist ()

Type designator for ALIST. Implemented as a SATISFIES type, hence not recommended for performance intensive use. Main usefullness as a type designator of the expected type in a TYPE-ERROR.

Package

alexandria+

Source

lists.lisp (file)

Type: percentage ()

A number between 0 and 100

Package

alexandria+

Source

types.lisp (file)

Type: plist ()

Type designator for PLIST. Implemented as a SATISFIES type, hence not recommended for performance intensive use. Main usefullness as a type designator of the expected type in a TYPE-ERROR.

Package

alexandria+

Source

lists.lisp (file)

Type: probability ()

A number between 0 and 1

Package

alexandria+

Source

types.lisp (file)


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

5.2 Internal definitions


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

5.2.1 Special variables

Special Variable: *assoc-test*

Global equality test for assoc

Package

alexandria+

Source

lists.lisp (file)


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

Appendix A Indexes


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

A.1 Concepts

Jump to:   A   F   L  
Index Entry  Section

A
alexandria+.asd: The alexandria+․asd file
alexandria+/lists.lisp: The alexandria+/lists․lisp file
alexandria+/pkgdcl.lisp: The alexandria+/pkgdcl․lisp file
alexandria+/types.lisp: The alexandria+/types․lisp file

F
File, Lisp, alexandria+.asd: The alexandria+․asd file
File, Lisp, alexandria+/lists.lisp: The alexandria+/lists․lisp file
File, Lisp, alexandria+/pkgdcl.lisp: The alexandria+/pkgdcl․lisp file
File, Lisp, alexandria+/types.lisp: The alexandria+/types․lisp file

L
Lisp File, alexandria+.asd: The alexandria+․asd file
Lisp File, alexandria+/lists.lisp: The alexandria+/lists․lisp file
Lisp File, alexandria+/pkgdcl.lisp: The alexandria+/pkgdcl․lisp file
Lisp File, alexandria+/types.lisp: The alexandria+/types․lisp file

Jump to:   A   F   L  

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

A.2 Functions

Jump to:   A   C   D   F   M   P  
Index Entry  Section

A
alist-keys: Exported functions
alist-values: Exported functions
alistp: Exported functions

C
cdr-assoc: Exported functions

D
defprop: Exported macros

F
Function, alist-keys: Exported functions
Function, alist-values: Exported functions
Function, alistp: Exported functions
Function, cdr-assoc: Exported functions
Function, plistp: Exported functions

M
Macro, defprop: Exported macros

P
plistp: Exported functions

Jump to:   A   C   D   F   M   P  

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

A.3 Variables

Jump to:   *  
S  
Index Entry  Section

*
*assoc-test*: Internal special variables

S
Special Variable, *assoc-test*: Internal special variables

Jump to:   *  
S  

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

A.4 Data types

Jump to:   A   P   S   T  
Index Entry  Section

A
alexandria+: The alexandria+ system
alexandria+: The alexandria+ package
alist: Exported types

P
Package, alexandria+: The alexandria+ package
percentage: Exported types
plist: Exported types
probability: Exported types

S
System, alexandria+: The alexandria+ system

T
Type, alist: Exported types
Type, percentage: Exported types
Type, plist: Exported types
Type, probability: Exported types

Jump to:   A   P   S   T