106 lines
13 KiB
Plaintext
106 lines
13 KiB
Plaintext
Medley MULTI-ALIST
|
||
2
|
||
|
||
4
|
||
|
||
1
|
||
|
||
MULTI-ALIST
|
||
1
|
||
|
||
4
|
||
|
||
By Ron Kaplan
|
||
This document was last edited in August 2025.
|
||
Introduction
|
||
MULTI-ALIST provides a collection of macros and related functions that make it easy to store and retrieve items in a hierarchical, multi-level association list indexed by an arbitrary number of keys. For example, a new font descriptor FD can be added to the database that caches the in-memory fonts by the expression
|
||
(PUTMULTI \FONTSINCORE FAMILY SIZE FACE ROTATION DEVICE FD)
|
||
and FD can then be retrieved by the expression
|
||
(GETMULTI \FONTSINCORE FAMILY SIZE FACE ROTATION DEVICE).
|
||
As another example, the macro PUSHMULTI adds a new value to a list of indexed items and GETMULTI then returns the collection of items at that index. If the variable WINES is initialized to NIL and the following expressions are evaluated
|
||
(PUSHMULTI WINES 'RED 'DRY 'FRENCH 'CABERNET)ÿÿ |