Common Lisp Package: LISA.UTILS

README:

FUNCTION

Public

FIND-AFTER (ITEM SEQUENCE &KEY (TEST #'EQL))

Returns that portion of SEQUENCE that occurs after ITEM, or NIL otherwise.

FIND-BEFORE (ITEM SEQUENCE &KEY (TEST #'EQL))

Returns both that portion of SEQUENCE that occurs before ITEM and the rest of SEQUENCE anchored at ITEM, or NIL otherwise.

LSTHASH (FUNC HT)

Applies FUNC to each entry in hashtable HT and, if FUNC so indicates, appends the object to a LIST. If NIL is an acceptable object, then FUNC should return two values; NIL and T.

STRING-TOKENS (STRING &KEY (START 0) MAX)

Read from STRING repeatedly, starting with START, up to MAX tokens. Return the list of objects read and the final index in STRING. Binds `*package*' to the keyword package, so that the bare symbols are read as keywords.

Undocumented

COLLECT (PREDICATE LIST)

FIND-IF-AFTER (PREDICATE SEQUENCE)

FLATTEN (X)

Private

EOF-P (STREAM)

Return T if the stream has no more data in it.

GC

Invoke the garbage collector.

REQUIRED-ARGUMENT

A useful default for required arguments and DEFSTRUCT slots.

Undocumented

QUIT (&OPTIONAL CODE)

MACRO

Public

COMPOSE (&REST FUNCTIONS)

Macro: compose functions or macros of 1 argument into a lambda. E.g., (compose abs (dl-val zz) 'key) ==> (lambda (yy) (abs (funcall (dl-val zz) (funcall key yy))))

MAP-IN (FN SEQ &REST SEQS)

`map-into' the first sequence, evaluating it once. (map-in F S) == (map-into S F S)

Private

DEFCONST (NAME TYPE INIT DOC)

Define a typed constant.

DEFCUSTOM (NAME TYPE INIT DOC)

Define a typed global variable.

DEFSUBST (NAME ARGLIST &BODY BODY)

Declare an inline defun.

MK-ARR (TYPE INIT &OPTIONAL LEN)

Make array with elements of TYPE, initializing.

WITH-GENSYMS (SYMS &BODY BODY)

Bind symbols to gensyms. First sym is a string - `gensym' prefix. Inspired by Paul Graham, <On Lisp>, p. 145.

GENERIC-FUNCTION

Private

Undocumented

CODE-ARGS (CONDITION)

CODE-MESG (CONDITION)

CODE-PROC (CONDITION)

VARIABLE

Private

+EOF+

*The end-of-file object. To be passed as the third arg to `read' and checked against using `eq'.

CONDITION

Private

CASE-ERROR

An error in a case statement. This carries the function name which makes the error message more useful.

CODE

An error in the user code.

NOT-IMPLEMENTED

Your implementation does not support this functionality.