The binfix Reference Manual

This is the binfix Reference Manual, version 0.50, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 14:43:19 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 binfix

BINFIX – A powerful binary infix syntax for Common LISP.

Author

Viktor Cerovski

License

GNU GPLv2

Version

0.50

Source

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

Source

binfix.asd.

Parent Component

binfix (system).

ASDF Systems

binfix.


3.1.2 binfix/package.lisp

Source

binfix.asd.

Parent Component

binfix (system).

Packages

binfix.


3.1.3 binfix/proto.lisp

Dependency

package.lisp (file).

Source

binfix.asd.

Parent Component

binfix (system).

Internals

3.1.4 binfix/proto1.lisp

Dependency

proto.lisp (file).

Source

binfix.asd.

Parent Component

binfix (system).

Internals

3.1.5 binfix/binfix.lisp

Dependency

proto1.lisp (file).

Source

binfix.asd.

Parent Component

binfix (system).

Public Interface

binfix (function).

Internals

3.1.6 binfix/interface.lisp

Dependency

binfix.lisp (file).

Source

binfix.asd.

Parent Component

binfix (system).

Public Interface
Internals

3.2 Static


3.2.1 binfix/README.md

Dependency

interface.lisp (file).

Source

binfix.asd.

Parent Component

binfix (system).


3.2.2 binfix/doc/index.html

Dependency

readme.md (file).

Source

binfix.asd.

Parent Component

binfix (system).


3.2.3 binfix/doc/markdown.css

Dependency

doc/index.html (file).

Source

binfix.asd.

Parent Component

binfix (system).


3.2.4 binfix/doc/syntax-term.png

Dependency

doc/markdown.css (file).

Source

binfix.asd.

Parent Component

binfix (system).


3.2.5 binfix/doc/syntax-gui.png

Dependency

doc/syntax-term.png (file).

Source

binfix.asd.

Parent Component

binfix (system).


4 Packages

Packages are listed by definition order.


4.1 binfix

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 Macros

Macro: def-bop (bop &optional lisp-op p &rest prop)

DEFBINFIX bop [lisp-op [priority op [property]*]] Defines new or redefines existing Bop BOP.

Package

binfix.

Source

interface.lisp.

Macro: keep-bops (&rest bops)

Keep only Bops represented by symbols in argument(s) BOPS. Without arguments restores all binfix Bops. Handles also implicit dependence of := :== and :- on progn Bop. Returns nil.

Package

binfix.

Source

interface.lisp.

Macro: rem-bops (&rest bops)

Macro that removes Bops represented by symbols in BOPS. Returns nil.

Package

binfix.

Source

interface.lisp.

Macro: set-bop (op lisp-op &rest props)

Set already defined binfix OP to represent lisp LISP-OP, with the same properties unless properties PROPS are non-nil.

Package

binfix.

Source

interface.lisp.


5.1.2 Ordinary functions

Function: binfix (e &optional max-priority)
Package

binfix.

Source

binfix.lisp.

Function: list-bops (&optional s)
Package

binfix.

Source

interface.lisp.


5.2 Internals


5.2.1 Special variables

Special Variable: *binfix*
Package

binfix.

Source

proto.lisp.

Special Variable: *decls*
Package

binfix.

Source

binfix.lisp.

Special Variable: *def-symbol*
Package

binfix.

Source

binfix.lisp.

Special Variable: *init-binfix*
Package

binfix.

Source

binfix.lisp.

Special Variable: *no-of-bops*
Package

binfix.

Source

binfix.lisp.

Special Variable: *timing*
Package

binfix.

Source

proto.lisp.


5.2.2 Macros

Macro: &lambdap (s)
Package

binfix.

Source

binfix.lisp.

Macro: binfix-reader ()
Package

binfix.

Source

proto.lisp.

Macro: declare* (decl* &optional decl)
Package

binfix.

Source

binfix.lisp.

Macro: def (what args body)
Package

binfix.

Source

proto1.lisp.

Macro: def-lambda (args body)
Package

binfix.

Source

proto1.lisp.

Macro: def-sbind* (binds)
Package

binfix.

Source

binfix.lisp.

Macro: defs-macro (&rest defs)
Package

binfix.

Source

binfix.lisp.

Macro: flet= (flet lhs body)
Package

binfix.

Source

proto1.lisp.

Macro: hashget (table key &rest opt)
Package

binfix.

Source

binfix.lisp.

Macro: infix (op lhs rhs)
Package

binfix.

Source

proto.lisp.

Macro: init-binfix ()
Package

binfix.

Source

binfix.lisp.

Macro: let= (let lhs body)
Package

binfix.

Source

proto1.lisp.

Macro: semicolon-in (e)
Package

binfix.

Source

binfix.lisp.

Macro: unreduc (op op-lisp lhs rhs)
Package

binfix.

Source

proto1.lisp.

Macro: var-bind (op lhs rhs)
Package

binfix.

Source

proto1.lisp.


5.2.3 Ordinary functions

Function: assign-properties ()
Package

binfix.

Source

binfix.lisp.

Function: bop-p (s)
Package

binfix.

Source

binfix.lisp.

Function: collect-&parts (l &optional arg types)
Package

binfix.

Source

binfix.lisp.

Function: dbind (e &optional llist)
Package

binfix.

Source

binfix.lisp.

Function: decls (e &optional decls doc)
Package

binfix.

Source

binfix.lisp.

Function: def-class (b &optional slot slots class-opts)
Package

binfix.

Source

binfix.lisp.

Function: def-generic (b &optional params entries)
Package

binfix.

Source

binfix.lisp.

Function: defs (x &optional defs types)
Package

binfix.

Source

binfix.lisp.

Function: doc-decls (e &optional decls)
Package

binfix.

Source

binfix.lisp.

Function: dstruct (x &optional defs types name opts slots doc)
Package

binfix.

Source

binfix.lisp.

Function: fbinds (e def)
Package

binfix.

Source

binfix.lisp.

Function: find-bop (s &key terms)
Package

binfix.

Source

binfix.lisp.

Function: find-bop-in (e &optional p last-bop o.r)
Package

binfix.

Source

binfix.lisp.

Function: implicit-progn (e)
Package

binfix.

Source

binfix.lisp.

Function: indexing (s ch)
Package

binfix.

Source

proto.lisp.

Function: keyword-type-spec (k)
Package

binfix.

Source

binfix.lisp.

Function: lambda-list (l &optional arg types)
Package

binfix.

Source

binfix.lisp.

Function: lbinds (e)
Package

binfix.

Source

binfix.lisp.

Function: mbind (n ll d b)
Package

binfix.

Source

binfix.lisp.

Function: method-lambda-list (l &optional args)
Package

binfix.

Source

binfix.lisp.

Function: mvbind (e &optional syms decls)
Package

binfix.

Source

binfix.lisp.

Function: op-position (op)

Returns index of the first element of *binfix* that contains op, or nil otherwise.

Package

binfix.

Source

interface.lisp.

Function: progn-monad (form1 &optional form2)
Package

binfix.

Source

binfix.lisp.

Function: rmbop (op)

Removes binfix operation OP. Returns nil.

Package

binfix.

Source

interface.lisp.

Function: save-binfix ()
Package

binfix.

Source

binfix.lisp.

Function: sbind* (e &optional binds s current decls)
Package

binfix.

Source

binfix.lisp.

Function: semicolon (s ch)
Package

binfix.

Source

proto.lisp.

Function: singleton (x)
Package

binfix.

Source

binfix.lisp.

Function: slots (e)
Package

binfix.

Source

binfix.lisp.

Function: slots+ (e &optional slots decls)
Package

binfix.

Source

binfix.lisp.

Function: split (e op &optional args arg)
Package

binfix.

Source

binfix.lisp.

Function: sym-eql (s1 s2)
Package

binfix.

Source

binfix.lisp.

Function: type-keyword-type (s ktype)
Package

binfix.

Source

binfix.lisp.

Function: unreduce-rhs (op e &optional cdr-p form0 forms)
Package

binfix.

Source

binfix.lisp.

Function: vbinds (e &optional vars decls)
Package

binfix.

Source

binfix.lisp.


5.2.4 Types

Type: priority ()
Package

binfix.

Source

interface.lisp.

Type: property ()
Package

binfix.

Source

interface.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   &  
A   B   C   D   F   H   I   K   L   M   O   P   R   S   T   U   V  
Index Entry  Section

&
&lambdap: Private macros

A
assign-properties: Private ordinary functions

B
binfix: Public ordinary functions
binfix-reader: Private macros
bop-p: Private ordinary functions

C
collect-&parts: Private ordinary functions

D
dbind: Private ordinary functions
declare*: Private macros
decls: Private ordinary functions
def: Private macros
def-bop: Public macros
def-class: Private ordinary functions
def-generic: Private ordinary functions
def-lambda: Private macros
def-sbind*: Private macros
defs: Private ordinary functions
defs-macro: Private macros
doc-decls: Private ordinary functions
dstruct: Private ordinary functions

F
fbinds: Private ordinary functions
find-bop: Private ordinary functions
find-bop-in: Private ordinary functions
flet=: Private macros
Function, assign-properties: Private ordinary functions
Function, binfix: Public ordinary functions
Function, bop-p: Private ordinary functions
Function, collect-&parts: Private ordinary functions
Function, dbind: Private ordinary functions
Function, decls: Private ordinary functions
Function, def-class: Private ordinary functions
Function, def-generic: Private ordinary functions
Function, defs: Private ordinary functions
Function, doc-decls: Private ordinary functions
Function, dstruct: Private ordinary functions
Function, fbinds: Private ordinary functions
Function, find-bop: Private ordinary functions
Function, find-bop-in: Private ordinary functions
Function, implicit-progn: Private ordinary functions
Function, indexing: Private ordinary functions
Function, keyword-type-spec: Private ordinary functions
Function, lambda-list: Private ordinary functions
Function, lbinds: Private ordinary functions
Function, list-bops: Public ordinary functions
Function, mbind: Private ordinary functions
Function, method-lambda-list: Private ordinary functions
Function, mvbind: Private ordinary functions
Function, op-position: Private ordinary functions
Function, progn-monad: Private ordinary functions
Function, rmbop: Private ordinary functions
Function, save-binfix: Private ordinary functions
Function, sbind*: Private ordinary functions
Function, semicolon: Private ordinary functions
Function, singleton: Private ordinary functions
Function, slots: Private ordinary functions
Function, slots+: Private ordinary functions
Function, split: Private ordinary functions
Function, sym-eql: Private ordinary functions
Function, type-keyword-type: Private ordinary functions
Function, unreduce-rhs: Private ordinary functions
Function, vbinds: Private ordinary functions

H
hashget: Private macros

I
implicit-progn: Private ordinary functions
indexing: Private ordinary functions
infix: Private macros
init-binfix: Private macros

K
keep-bops: Public macros
keyword-type-spec: Private ordinary functions

L
lambda-list: Private ordinary functions
lbinds: Private ordinary functions
let=: Private macros
list-bops: Public ordinary functions

M
Macro, &lambdap: Private macros
Macro, binfix-reader: Private macros
Macro, declare*: Private macros
Macro, def: Private macros
Macro, def-bop: Public macros
Macro, def-lambda: Private macros
Macro, def-sbind*: Private macros
Macro, defs-macro: Private macros
Macro, flet=: Private macros
Macro, hashget: Private macros
Macro, infix: Private macros
Macro, init-binfix: Private macros
Macro, keep-bops: Public macros
Macro, let=: Private macros
Macro, rem-bops: Public macros
Macro, semicolon-in: Private macros
Macro, set-bop: Public macros
Macro, unreduc: Private macros
Macro, var-bind: Private macros
mbind: Private ordinary functions
method-lambda-list: Private ordinary functions
mvbind: Private ordinary functions

O
op-position: Private ordinary functions

P
progn-monad: Private ordinary functions

R
rem-bops: Public macros
rmbop: Private ordinary functions

S
save-binfix: Private ordinary functions
sbind*: Private ordinary functions
semicolon: Private ordinary functions
semicolon-in: Private macros
set-bop: Public macros
singleton: Private ordinary functions
slots: Private ordinary functions
slots+: Private ordinary functions
split: Private ordinary functions
sym-eql: Private ordinary functions

T
type-keyword-type: Private ordinary functions

U
unreduc: Private macros
unreduce-rhs: Private ordinary functions

V
var-bind: Private macros
vbinds: Private ordinary functions


A.4 Data types

Jump to:   B   D   F   I   P   R   S   T  
Index Entry  Section

B
binfix: The binfix system
binfix: The binfix package
binfix.asd: The binfix/binfix․asd file
binfix.lisp: The binfix/binfix․lisp file

D
doc/index.html: The binfix/doc/index․html file
doc/markdown.css: The binfix/doc/markdown․css file
doc/syntax-gui.png: The binfix/doc/syntax-gui․png file
doc/syntax-term.png: The binfix/doc/syntax-term․png file

F
File, binfix.asd: The binfix/binfix․asd file
File, binfix.lisp: The binfix/binfix․lisp file
File, doc/index.html: The binfix/doc/index․html file
File, doc/markdown.css: The binfix/doc/markdown․css file
File, doc/syntax-gui.png: The binfix/doc/syntax-gui․png file
File, doc/syntax-term.png: The binfix/doc/syntax-term․png file
File, interface.lisp: The binfix/interface․lisp file
File, package.lisp: The binfix/package․lisp file
File, proto.lisp: The binfix/proto․lisp file
File, proto1.lisp: The binfix/proto1․lisp file
File, readme.md: The binfix/readme․md file

I
interface.lisp: The binfix/interface․lisp file

P
Package, binfix: The binfix package
package.lisp: The binfix/package․lisp file
priority: Private types
property: Private types
proto.lisp: The binfix/proto․lisp file
proto1.lisp: The binfix/proto1․lisp file

R
readme.md: The binfix/readme․md file

S
System, binfix: The binfix system

T
Type, priority: Private types
Type, property: Private types