The cl-minifloats Reference Manual

This is the cl-minifloats Reference Manual, version 0.0.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Fri May 15 11:54:42 2026 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 cl-minifloats

Minifloats (minifloat < single-float) support for Common Lisp

Author

Artyom Bologov

Home Page

https://codeberg.org/aartaka/cl-minifloats

Source Control

(GIT https://codeberg.org/aartaka/cl-minifloats.git)

Bug Tracker

https://codeberg.org/aartaka/cl-minifloats/issues

License

BSD-2 Clause

Version

0.0.0

Dependency

float-features (system).

Source

cl-minifloats.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 cl-minifloats/cl-minifloats.asd

Source

cl-minifloats.asd.

Parent Component

cl-minifloats (system).

ASDF Systems

cl-minifloats.


3.1.2 cl-minifloats/package.lisp

Source

cl-minifloats.asd.

Parent Component

cl-minifloats (system).

Packages

cl-minifloats.


3.1.3 cl-minifloats/cl-minifloats.lisp

Dependency

package.lisp (file).

Source

cl-minifloats.asd.

Parent Component

cl-minifloats (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 cl-minifloats

‘cl-minifloats’ provides

- Float type definition (‘define-x->float’);
- Conversion to regular/single float (numerous X.X.X-to-float functions) and back (float-to-X.X.X); - Infinity (X.X.X-infinity-p) and NaN (X.X.X-nan-p) checking;
- most-positive-X.X.X and least-positive-X.X.X (same for negatives where applicable) constants; - And meaningfully defined infinity (X.X.X-positive/negative-infinity
for signed floats, X.X.X-infinity for unsigned) and NaN (X.X.X-nan)
constants.

Some minifloat types are provided for convenience.

Source

package.lisp.

Use List

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 Special variables

Special Variable: 0.1.1-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 0.1.1-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 0.2.1-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 0.2.1-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.1.1-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.1.1-negative-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.1.1-positive-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.2.1-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.2.1-negative-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.2.1-positive-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.3.2-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.3.2-negative-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.3.2-positive-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.3.4-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.3.4-negative-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.3.4-positive-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.4.3-2-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.4.3-2-negative-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.4.3-2-positive-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.4.3-nan
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.4.3-negative-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: 1.4.3-positive-infinity
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-negative-1.1.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-negative-1.2.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-negative-1.3.2
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-negative-1.3.4
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-negative-1.4.3
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-negative-1.4.3-2
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-0.1.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-0.2.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-1.1.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-1.2.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-1.3.2
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-1.3.4
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-1.4.3
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-1.4.3-2
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-negative-1.1.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-negative-1.2.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-negative-1.3.2
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-negative-1.3.4
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-negative-1.4.3
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-negative-1.4.3-2
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-0.1.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-0.2.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-1.1.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-1.2.1
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-1.3.2
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-1.3.4
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-1.4.3
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-1.4.3-2
Package

cl-minifloats.

Source

cl-minifloats.lisp.


5.1.2 Macros

Macro: define-x-float (sign exponent significand &optional bias)

Define a new minifloat type.
SIGN is the number of sign bits (1 or 0)
EXPONENT is the (positive) number of exponent bits. SIGNIFICAND is the number of mantissa/significand bits. BIAS is the exponent bias, defaults to 2^(EXPONENT-1)-1.

Package

cl-minifloats.

Source

cl-minifloats.lisp.


5.1.3 Ordinary functions

Function: 0.1.1-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 0.1.1-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 0.1.1-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 0.2.1-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 0.2.1-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 0.2.1-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.1.1-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.1.1-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.1.1-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.2.1-abnormal-to-float (minifloat)

SPECIAL 4-bit ML MINIFLOATs to single floats.

Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.2.1-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.2.1-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.2.1-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.3.2-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.3.2-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.3.2-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.3.4-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.3.4-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.3.4-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.4.3-2-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.4.3-2-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.4.3-2-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.4.3-infinity-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.4.3-nan-p (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: 1.4.3-to-float (minifloat)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-0.1.1 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-0.2.1 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-1.1.1 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-1.2.1 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-1.3.2 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-1.3.4 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-1.4.3 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Function: float-to-1.4.3-2 (float)
Package

cl-minifloats.

Source

cl-minifloats.lisp.


5.1.4 Types

Type: 0.1.1-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 0.2.1-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 1.1.1-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 1.2.1-abnormal-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 1.2.1-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 1.3.2-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 1.3.4-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 1.4.3-2-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Type: 1.4.3-float ()
Package

cl-minifloats.

Source

cl-minifloats.lisp.


5.2 Internals


5.2.1 Special variables

Special Variable: least-negative-1.2.1-abnormal
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: least-positive-1.2.1-abnormal
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-negative-1.2.1-abnormal
Package

cl-minifloats.

Source

cl-minifloats.lisp.

Special Variable: most-positive-1.2.1-abnormal
Package

cl-minifloats.

Source

cl-minifloats.lisp.


5.2.2 Macros

Macro: with-float-fields ((total-width (sign-var sign-width) (exponent-var exponent-width) (significand-var significand-width)) minifloat &body body)
Package

cl-minifloats.

Source

cl-minifloats.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   0   1  
D   F   M   W  
Index Entry  Section

0
0.1.1-infinity-p: Public ordinary functions
0.1.1-nan-p: Public ordinary functions
0.1.1-to-float: Public ordinary functions
0.2.1-infinity-p: Public ordinary functions
0.2.1-nan-p: Public ordinary functions
0.2.1-to-float: Public ordinary functions

1
1.1.1-infinity-p: Public ordinary functions
1.1.1-nan-p: Public ordinary functions
1.1.1-to-float: Public ordinary functions
1.2.1-abnormal-to-float: Public ordinary functions
1.2.1-infinity-p: Public ordinary functions
1.2.1-nan-p: Public ordinary functions
1.2.1-to-float: Public ordinary functions
1.3.2-infinity-p: Public ordinary functions
1.3.2-nan-p: Public ordinary functions
1.3.2-to-float: Public ordinary functions
1.3.4-infinity-p: Public ordinary functions
1.3.4-nan-p: Public ordinary functions
1.3.4-to-float: Public ordinary functions
1.4.3-2-infinity-p: Public ordinary functions
1.4.3-2-nan-p: Public ordinary functions
1.4.3-2-to-float: Public ordinary functions
1.4.3-infinity-p: Public ordinary functions
1.4.3-nan-p: Public ordinary functions
1.4.3-to-float: Public ordinary functions

D
define-x-float: Public macros

F
float-to-0.1.1: Public ordinary functions
float-to-0.2.1: Public ordinary functions
float-to-1.1.1: Public ordinary functions
float-to-1.2.1: Public ordinary functions
float-to-1.3.2: Public ordinary functions
float-to-1.3.4: Public ordinary functions
float-to-1.4.3: Public ordinary functions
float-to-1.4.3-2: Public ordinary functions
Function, 0.1.1-infinity-p: Public ordinary functions
Function, 0.1.1-nan-p: Public ordinary functions
Function, 0.1.1-to-float: Public ordinary functions
Function, 0.2.1-infinity-p: Public ordinary functions
Function, 0.2.1-nan-p: Public ordinary functions
Function, 0.2.1-to-float: Public ordinary functions
Function, 1.1.1-infinity-p: Public ordinary functions
Function, 1.1.1-nan-p: Public ordinary functions
Function, 1.1.1-to-float: Public ordinary functions
Function, 1.2.1-abnormal-to-float: Public ordinary functions
Function, 1.2.1-infinity-p: Public ordinary functions
Function, 1.2.1-nan-p: Public ordinary functions
Function, 1.2.1-to-float: Public ordinary functions
Function, 1.3.2-infinity-p: Public ordinary functions
Function, 1.3.2-nan-p: Public ordinary functions
Function, 1.3.2-to-float: Public ordinary functions
Function, 1.3.4-infinity-p: Public ordinary functions
Function, 1.3.4-nan-p: Public ordinary functions
Function, 1.3.4-to-float: Public ordinary functions
Function, 1.4.3-2-infinity-p: Public ordinary functions
Function, 1.4.3-2-nan-p: Public ordinary functions
Function, 1.4.3-2-to-float: Public ordinary functions
Function, 1.4.3-infinity-p: Public ordinary functions
Function, 1.4.3-nan-p: Public ordinary functions
Function, 1.4.3-to-float: Public ordinary functions
Function, float-to-0.1.1: Public ordinary functions
Function, float-to-0.2.1: Public ordinary functions
Function, float-to-1.1.1: Public ordinary functions
Function, float-to-1.2.1: Public ordinary functions
Function, float-to-1.3.2: Public ordinary functions
Function, float-to-1.3.4: Public ordinary functions
Function, float-to-1.4.3: Public ordinary functions
Function, float-to-1.4.3-2: Public ordinary functions

M
Macro, define-x-float: Public macros
Macro, with-float-fields: Private macros

W
with-float-fields: Private macros


A.3 Variables

Jump to:   0   1  
L   M   S  
Index Entry  Section

0
0.1.1-infinity: Public special variables
0.1.1-nan: Public special variables
0.2.1-infinity: Public special variables
0.2.1-nan: Public special variables

1
1.1.1-nan: Public special variables
1.1.1-negative-infinity: Public special variables
1.1.1-positive-infinity: Public special variables
1.2.1-nan: Public special variables
1.2.1-negative-infinity: Public special variables
1.2.1-positive-infinity: Public special variables
1.3.2-nan: Public special variables
1.3.2-negative-infinity: Public special variables
1.3.2-positive-infinity: Public special variables
1.3.4-nan: Public special variables
1.3.4-negative-infinity: Public special variables
1.3.4-positive-infinity: Public special variables
1.4.3-2-nan: Public special variables
1.4.3-2-negative-infinity: Public special variables
1.4.3-2-positive-infinity: Public special variables
1.4.3-nan: Public special variables
1.4.3-negative-infinity: Public special variables
1.4.3-positive-infinity: Public special variables

L
least-negative-1.1.1: Public special variables
least-negative-1.2.1: Public special variables
least-negative-1.2.1-abnormal: Private special variables
least-negative-1.3.2: Public special variables
least-negative-1.3.4: Public special variables
least-negative-1.4.3: Public special variables
least-negative-1.4.3-2: Public special variables
least-positive-0.1.1: Public special variables
least-positive-0.2.1: Public special variables
least-positive-1.1.1: Public special variables
least-positive-1.2.1: Public special variables
least-positive-1.2.1-abnormal: Private special variables
least-positive-1.3.2: Public special variables
least-positive-1.3.4: Public special variables
least-positive-1.4.3: Public special variables
least-positive-1.4.3-2: Public special variables

M
most-negative-1.1.1: Public special variables
most-negative-1.2.1: Public special variables
most-negative-1.2.1-abnormal: Private special variables
most-negative-1.3.2: Public special variables
most-negative-1.3.4: Public special variables
most-negative-1.4.3: Public special variables
most-negative-1.4.3-2: Public special variables
most-positive-0.1.1: Public special variables
most-positive-0.2.1: Public special variables
most-positive-1.1.1: Public special variables
most-positive-1.2.1: Public special variables
most-positive-1.2.1-abnormal: Private special variables
most-positive-1.3.2: Public special variables
most-positive-1.3.4: Public special variables
most-positive-1.4.3: Public special variables
most-positive-1.4.3-2: Public special variables

S
Special Variable, 0.1.1-infinity: Public special variables
Special Variable, 0.1.1-nan: Public special variables
Special Variable, 0.2.1-infinity: Public special variables
Special Variable, 0.2.1-nan: Public special variables
Special Variable, 1.1.1-nan: Public special variables
Special Variable, 1.1.1-negative-infinity: Public special variables
Special Variable, 1.1.1-positive-infinity: Public special variables
Special Variable, 1.2.1-nan: Public special variables
Special Variable, 1.2.1-negative-infinity: Public special variables
Special Variable, 1.2.1-positive-infinity: Public special variables
Special Variable, 1.3.2-nan: Public special variables
Special Variable, 1.3.2-negative-infinity: Public special variables
Special Variable, 1.3.2-positive-infinity: Public special variables
Special Variable, 1.3.4-nan: Public special variables
Special Variable, 1.3.4-negative-infinity: Public special variables
Special Variable, 1.3.4-positive-infinity: Public special variables
Special Variable, 1.4.3-2-nan: Public special variables
Special Variable, 1.4.3-2-negative-infinity: Public special variables
Special Variable, 1.4.3-2-positive-infinity: Public special variables
Special Variable, 1.4.3-nan: Public special variables
Special Variable, 1.4.3-negative-infinity: Public special variables
Special Variable, 1.4.3-positive-infinity: Public special variables
Special Variable, least-negative-1.1.1: Public special variables
Special Variable, least-negative-1.2.1: Public special variables
Special Variable, least-negative-1.2.1-abnormal: Private special variables
Special Variable, least-negative-1.3.2: Public special variables
Special Variable, least-negative-1.3.4: Public special variables
Special Variable, least-negative-1.4.3: Public special variables
Special Variable, least-negative-1.4.3-2: Public special variables
Special Variable, least-positive-0.1.1: Public special variables
Special Variable, least-positive-0.2.1: Public special variables
Special Variable, least-positive-1.1.1: Public special variables
Special Variable, least-positive-1.2.1: Public special variables
Special Variable, least-positive-1.2.1-abnormal: Private special variables
Special Variable, least-positive-1.3.2: Public special variables
Special Variable, least-positive-1.3.4: Public special variables
Special Variable, least-positive-1.4.3: Public special variables
Special Variable, least-positive-1.4.3-2: Public special variables
Special Variable, most-negative-1.1.1: Public special variables
Special Variable, most-negative-1.2.1: Public special variables
Special Variable, most-negative-1.2.1-abnormal: Private special variables
Special Variable, most-negative-1.3.2: Public special variables
Special Variable, most-negative-1.3.4: Public special variables
Special Variable, most-negative-1.4.3: Public special variables
Special Variable, most-negative-1.4.3-2: Public special variables
Special Variable, most-positive-0.1.1: Public special variables
Special Variable, most-positive-0.2.1: Public special variables
Special Variable, most-positive-1.1.1: Public special variables
Special Variable, most-positive-1.2.1: Public special variables
Special Variable, most-positive-1.2.1-abnormal: Private special variables
Special Variable, most-positive-1.3.2: Public special variables
Special Variable, most-positive-1.3.4: Public special variables
Special Variable, most-positive-1.4.3: Public special variables
Special Variable, most-positive-1.4.3-2: Public special variables