Package Metabang.Utilities - internal and external symbols

Part of:

asdf-system asdf-install-tester, asdf-system defsystem-compatibility, asdf-system metatilities-base
See only external symbols
Package Metabang.Utilities uses the packages Cl-Fad, Common-Lisp, Metabang.Bind, Metabang.Cl-Containers and Metabang.Moptilities. It is also known as Metatilities. It has 1,084 total symbols and 386 external ones.

Condition

source/target-file-errorGeneral condition for file errors that have a source and target.
source/target-source-does-not-exist-errorThis error is signaled when the source file does not exist.
source/target-target-already-exists-errorThis error is signaled when the target pathname already exists.

Class

help-text-mixin
margins-mixin
view-requiring-cleanup-mixinA mixin for views that require clean-up *before* they
are destroyed. To use, inherit from this c...

Variable

%table-cell-string-stream
*a*-count*
*a*-limit*
*automatic-slot-accessors?*
*automatic-slot-initargs?*
*clos-slot-options*
*default-instrument*
*default-interface*
*defclass-copy-condition-function*
*defclass-generate-make-load-form*
*defcondition-options*Extra options to defcondition macro. Format is a list of sub-lists.
Each sublist should be of le...
*define-class-form*The name of the form used to define a class. Usually, this will be bound to 'defclass* but when w...
*development-mode*
*file-if-exists*Default behavior to use when opening files if they already exist.
*file-print-right-margin*Default print right margin to use in with-new-file
*filename-escape-characters*
*glu-blast-default-selector*
*glu-blast-pathname-defaults*
*newsym-counter*Counter used by NEWSYM for generating print names.
*parameter-dynamic-class-table*
*progress-bar-count*
*samep-test*Used by samep to determine if two things are 'the same'. Defaults to #'equal
*samep-tolerance*Used by samep to determine how close things need to be to be 'the same'.
*spy-debugging*
*spy-no-expand*
*spy-no-newline*
*spy-output*
*use-native-debugger*
+day-list+
+days-per-month+
+dow-output-list
+fluff-list+
+month-list+
+month-output-list+
+very-small-number+Someones idea of a very small number. Used in very-small-number-p.
+whitespace-characters+
time-interval-array
time-interval-unit-types

Constant

+longer-format-index+
+mac-os-filename-limit+
+minutes-per-hour+The number of minutes in one hour.
+seconds-per-hour+The number of seconds in one hour.
+seconds-per-minute+The number of seconds in one minute.
+shorter-format-index+
+usual-days-per-year+The number of days in an ordinary year.

Function

%table-cell-contents-string-new
add-class-if-necessaryAdds the superclass to the class-list unless it's already there.
add-classes-if-necessary
add-dynamic-class-for-parameters
add-parameter->dynamic-class
all-pairsReturns all pairs of elements in list LST.
array-rowReturns the row'th row of array. Array is assumed to be two dimensional and row
is assumed to be...
beam-searchSearch highest scoring states first until goal is reached,
but never consider more than beam-wi...
bestfn must be a predicate of two arguments; returns the element
which, according to the predicate, b...
best-first-searchSearch lowest cost states first until goal is reached.
binary-search
binding
breadth-first-searchSearch old states first until goal is reached.
build-call
build-compose
car-safeReturns the car of `x' if it's a cons, NIL otherwise.
cdr-safeReturns the cdr of `x' if it's a cons, NIL otherwise.
choose-directory-question
choose-file-question
choose-item-from-pupPresent an interface to allow a choice from a list. Can throw :cancel.
choose-item-from-pup-no-singletonsLike choose-item-from-pup, but just returns the datum if it
is an atom or a singleton list.
choose-item-question
choose-new-file-question
circular-listBuilds a circular list with `elements'.
class-copyable-p
class-redundant-p
cleanup-parsed-parameter
collect-garbageTell lisp that now is a good time to collect any accumulated garbage.
collect-to-char
collect-to-not
combinationsReturns all combinations of elements in LISTS, where first
element of each combination is from li...
compact-arrayDestructively compacts an array with fill-pointer. Works on type T
arrays and considers elements ...
composeReturn a function that is the composition of fn1 and fn2. I.e.,
(compose f1 f2)[x] == (f1 (f2 [x...
conjoinReturns the conjuction of the predicates given as arguments. As with ~
AND, evaluation stops ...
constant-expression-p
constant-function-p
convert-clauses-into-lists
convert-clauses-into-lists*
convert-newlines
convert-newlines-to-unix
copy-array
copy-fileCopies the file designated by the non-wild pathname designator FROM
to the file designated by the...
current-load-file
curryCurries fun on the fly
curry-afterSometimes we want to curry a function over some arguments
that appear at the end of the arg list ...
date-and-time-stringCurrent date and time returned as a string.
date-stringDate returned as a string, in the format `Wednesday, June 7, 1989'
date-string-briefReturns a string representing the `time` (which defaults to the current universal time). The stri...
day->stringReturns the name of `day-of-the-week`. The parameter should be a number between 0 and 6 where 0 r...
day-of-yearReturns the day of the year [1 to 366] of the specified date [which must be (CL) universal time f...
day-ok-p
days-in-monthReturns the number of days in the specified month. The month should be
between 1 and 12.
default-interfaceReturn the current default interface (this is setfable).
define-classDefine a class with all the bells and whistles on the fly... See
simple-define-class for the sim...
delete-if!Just like `delete-if' except that it returns two values: a list of the
deleted items, and the new...
depth-first-searchSearch new states first until goal is reached.
determine-dynamic-class
direct-superclasses-defclass*
disjoinReturns the disjunction of the predicates given as arguments. As with ~
OR, evaluation stops ...
dotted-pair-pReturns true if and only if `putative-pair` is a dotted-list. I.e., if `putative-pair` is a cons ...
dynamic-class-information
empty-add-parameter->dynamic-class
empty-all-add-parameter->dynamic-class
ensure-filename-safe-for-os
ensure-listIf `x` is a list then ensure-list returns it. If `x` is an atom, then this returns a singleton li...
ensure-wild-file-spec
eos-namestring-from-dateforms a namestring based on date and time, in the form of
<perfix>-09JUN03-010903 where 010903 is...
export-exported-symbolsMake the exported symbols in from-package be also exported from to-package.
extract-head-formGive back the thing that can appear as the head of a procedure
application.
file-newer-than-file-pCompares the write dates of `file1' and `file' and returns T if `file' is newer than
`file2' or i...
file-packageTries to determine the package of a file by reading it one form at a time and looking for in-pack...
file-to-listConvert a file into a list by opening it and calling read repeatedly.
filter-valuesFILTER as defined in _On_Lisp_. Given a list, collects all the non-nil
results of applying FN...
find-allFind all those elements of sequence that match item,
according to the keywords. Doesn't alter ...
find-all-ifReturn a copy of sequence with elements such that predicate(element)
is null removed
find-all-if-notReturn a copy of sequence with elements such that predicate(element)
is non-null removed
find-existing-subclassLook through all the sub-classes of superclass and see if any of them descend
from every class in...
find-or-create-classTry to find a class which is a subclass of root and all of the other `classes` as well. If no suc...
firstnReturns first 'n' elements of list.
fix-crlfs
flattenFlattens LIST. Does not handle circular lists but does handle dotted lists.
float->integerYou can't coerce a float to an integer, because they want to you decide
whether you want to use r...
form-keywordFinds or interns a symbol in the keyword package whose name is formed by concatenating the pretty...
form-symbolFinds or interns a symbol in the current package whose name is formed by concatenating the pretty...
form-symbol-in-packageFinds or interns a symbol in package whose name is formed by concatenating the pretty printed rep...
form-uninterned-symbolCreates and returns an uninterned symbol whose name is formed by concatenating the pretty printed...
format-dateFormats universal dates using the same format specifiers as NSDateFormatter. The format is:

%% -...
function-expression-p
gc-timeReturns the total amount of time that this Lisp session has spent in garbage collection.
gensym*
gensym0Ignores its argument and returns a gensym. Useful for mapping of a bunch of
arbitrary forms, sin...
glu-blastA tools for wiping out files en masse, according to a predicate. Use this guy ~
at your own r...
good-filename-char-pReturns T if CHAR is legal in a filename.
graph-searchFind a state that satisfies goal-p. Start with states,
and search according to successors and ...
groupReturn the elements of `list' grouped in sublists of length `n,' which should
be a positive integ...
index-offinds the index of an item in a list, or, in a list embedded in a list.
this allows the user to m...
init-time-interval-array
inspect-things
is-default-interface-available-p
iter-wide-searchSearch, increasing beam width from width to max.
Return the first solution found at any width.
iterate-over-indexesApply fn to lists of indexes generated from symbol counts. The counting is
done so that the first...
lambda-list->argsTakes a formal parameter list, possibly containing things like &optional or (key
default), and re...
leap-year-pReturns t if the specified year is a leap year. I.e. if the year
is divisible by four but not by ...
length-1-list-pIs x a list of length 1? Note that this is better than the naive (= (length x) 1) because we don'...
length-exactly-pReturns true if the lenght of `thing` is exactly `n`... no more, no less.
linearize-array
list->formatted-stringThis is a convenience function for when the intracacies of format are just too much. It takes a l...
list-choose-kReturn a list of lists of all possible ways of choosing
k-elements from the original list.
make-initialized-arrayCreates an array initialized from using `inits' which is a list of the form
((<index-1> <init-fo...
make-sorterReturns a sorter-predicate that returns true if it follows the KEYS-AND-PREDICATES
specification....
make-sorter-fnReturn a combiner function that sorts according to cost-fn.
make-ui-point
map->Really generalized mapping.
map-combinationsCall fn on all combinations of elements in LISTS, where first
element of each combination is from...
map-filesApply the function to all of the files in wildcarded-file-spec. Any
additional args are passed al...
map0-nReturns list resulting from applying fn to all numbers i in [0, n].
map1-nReturns list resulting from applying fn to all numbers i in [1, n].
mapa-bReturns list resulting from applying fn to all numbers i in [a, b].
mapappendA non-destructive mapcan.
maparray
maparray!
mapcan1Like MAPCAN, but for a single list. Doesn't cons, and is reasonably
well optimized.
mapcarsHas the some effect as (mapcar fn (apply #'append lsts)).
mappendA non-destructive mapcan.
match
maximum-filename-length
minimizeReturns the ``smallest'' element. Supports all the usual reduce keywords.
PRED sees the new val...
month->stringReturns the name (in English) of the month. Format can be :long or :short.
month-ok-p
mostfn is a scoring function of one argument; returns the element
with the highest score.
mostn
nearly-equal-pReturns true if x and y are within threshold of each other.
nearly-zero-pReturns true if `x` is within threshold of 0d0.
new-statesGenerate successor states that have not been seen before.
newsymCreate a new uninterned symbol whose print name begins with `prefix', which
may be a string or a ...
nicely-format-filenameWrite out a representation of file to stream. There are options to show or hide the type of the f...
nmerge-listDestructive merge of `list2' into `list1'. Both lists are may be changed.
This works best if the...
nth-elt-of-cross-productSuppose we created a multidimensional array, with as many dimensions as
we have sets, and in whic...
nth-elt-of-cross-product-as-multiple-valuesReturns list of values of `nth-elt-of-cross-product' as multiple values.
See it for documentation...
nth-ok-p
object->stringUses the Common Lisp `string' function to convert `object' into a string, but
also converts objec...
parameter->dynamic-class
parse-brief-slotReturns a verbose-style slot specification given a brief style, consisting of
a single symbol, th...
parse-date-and-timeConverts `spec' to a universal time. Spec can either be a number, in which
case this is a no-op,...
parse-date-and-time-stringParses strings expressing the day and/or time, such as 12/4/61 4:03:15.
The date part should look...
parse-interval-or-neverparse a string either describing a time interval or “never”.
for a time interval, the number of s...
parse-numberreturn a number parsed from the contents of string, or a part of it.
from and to specify the part...
parse-time
partitionPartitions SEQ based on FN. Returns twa values: (a) the list of all elements
of SEQ for which...
pathname-is-old-cvs-junk-p
pathname-name+typeReturns a new pathname consisting of only the name and type from a non-wild pathname.
percent-overlapReturns what percentage of elements in list-a are in list-b
(alternate definition: Returns what p...
permute
physical-pathname-directory-separatorReturns a string representing the separator used to delimit directories in a physical pathname. F...
power-setReturns the power set of SET. This of course uses exponential time and space.
prependPrepend y to start of x
pretty-namestring-from-dateReturns a representation of the date (which defaults to the current date and time) preceeded by a...
print-brief-time-intervalReturns a string that describes the time elapsed by `secs' in the format [[H]Hh][M]Mm. For exampl...
print-brief-utPrints only those aspects of `ut' that differ from `ref-time.' Both times
should be in universal-...
print-datePrints the information in the form `Wednesday, June 7, 1989'
print-date-verboseprint the date and time in verbose form on stream.
if stream is nil, construct and return a strin...
print-timePrints the information in the form `12:34 pm'
print-time-intervalPrints the time elapsed by `seconds.' For example, 125 prints ``2 minutes, 5
seconds'' If `print-...
print-time-with-no-colonsPrints the information in the form `12-34 pm'
print-universal-date-verboseprint the universal-time ut in verbose form on stream, decoding for timezone.
if stream is nil, c...
print-universal-timePrints a universal time to stream using `print-time`. The output can be normal or brief.
print-universal-time-with-no-colons
print-utPrints `ut' in the format [M]M/[D]D [H]H:MM or [M]M/[D]D [H]H:MM:SS if
`print-seconds?' is true. ...
query-user-for-integer
query-user-for-string
quit-lisp
rbuild
read-datestrips the date signature off of the front of string. can handle slash-delimited format:
[M]M/[D]...
read-timestrips the time signature off of the front of string. can handle the following format:
[H]H(:|.)M...
reduce-ifSee MINIMIZE. Primary difference: no non-standard keyword behavior.
remove-dead-versions
remove-illegal-filename-charactersRemoves illegal characters from the file name NAME.
remove-leading-quoteRemoves the first quote from a list if one is there.
remove-membersRemoves all members of BAD from the list FROM.
remove-redundant-classes
rename-file-if-presentRenames a file to a unique name based on its file-write-date. See unique-file-name-from-date.
same-length-pAn optimized version of the naive (= (length list-1) (length list-2)).
search-allFind all solutions to a search problem, using beam search.
set-equalReturns t if list1 and list2 are equal (as sets). If list1 and list2 are not
equal returns (as mu...
short-eos-namestring-from-date
simple-define-classDefine a class on the fly...
simple-define-class-name
sort-using-list-orderSorts the list `x' using the other list `list' as a index.
spy-do-form
spy-expand-form
spy-parse-arglist
spy-prin1
stop-notes
string->month
string->symbolReturns the string as a bare symbol, replacing any whitespace with dashes. ~
This is the (near...
string-afterReturns the part of string before the first appearance of CHAR.
(If FROM-END is T, we count fr...
string-beforeReturns the part of string before the first appearance of CHAR.
(If FROM-END is T, we count fr...
string-contains-pReturns t if string contains the string-to-find. Case insensitive unless specified, and you can a...
string-ends-with
string-starts-with
substring
superclasses-defclass*
symbol->stringReturns a symbol as a string, replacing any dashes with spaces. The inverse ~
of string->symbo...
table¶meter->dynamic-class
time-dateReturns the date part of the given time.
time-day-of-weekReturns the day-of-week part of the given time.
time-daylight-savings-time-pReturns the daylight-savings-time-p part of the given time.
time-hourReturns the hour part of the given time.
time-interval-to-secondsreturn a number of seconds parsed from string.
if the string cannot be parsed, the first value is...
time-minuteReturns the minute part of the given time.
time-monthReturns the month part of the given time.
time-secondReturns the second part of the given time.
time-stringTime returned as a string, in the format `12:34 pm'
time-string-with-no-colonsTime returned as a string, in the format `12-34 pm'
time-yearReturns the year part of the given time.
token-typeDetermines which reader to use for the next token.
tokenize-stringSplits a string at delimiter and returns a list of the parts.
total-bytes-allocatedReturns the total number of bytes that this Lisp session has allocated.
transpose
transpose2
tree-findFinds the atom ITEM within the arbitrarily-nested cons TREE.
tree-find-ifFinds first cons in TREE that satisfies TEST. This is guaranteed to be
inefficient.
tree-mapMaps FN over every atom in TREE.
tree-remove-ifRemoves all atoms from TREE that satisfy TEST.
tree-searchFind a state that satisfies goal-p. Start with states,
and search according to successors and ...
type->parameter-table
unique-file-name-from-dateReturns a namestring whose suffix is the `date` in the form YYMMMDDHHMMSS. The names prefix will ...
unixify-crlfs
unused-variablesReturns which of the variables defined by LAMBDA-LIST do not appear in form.
This works simply...
vars-in
varsym?
very-small-number-p
whitespacepReturns true if char is an element of +whitespace-characters+ and nil otherwise.
y-or-n-question
yearp

Generic-Function

argmaxReturns the item in items with the biggest (#'>) value of function. See best-item for a generaliz...
argminReturns the item in items with the smallest (#'<) value of function.
best-itemReturns the item in items with the 'best' value of function where
'best' is determined by test. Y...
choose-directory-question*
choose-file-question*
choose-item-from-pup*
choose-item-question*
choose-new-file-question*
close-progress-bar
collect-garbage*
defclass*-superclassesReturns the value of `defclass*-superclasses` for class-name
dialog-item-value
element
existing-subclass
gc-time*
gui-error
gui-error*
gui-warn
gui-warn*
help-spec
include-class-dependencies
inspect-thing
inspect-thing*
interface-beep
interface-beep*
is-interface-available-pReturns true is interface-name is available.
length-at-least-pReturns true if thing has no fewer than length elements in it.
length-at-most-pReturns true if thing has no more than length elements in it.
make-color*
make-color**
make-gray
make-gray*
make-progress-bar
make-scaled-color
make-scaled-color*
make-ui-point*
map-forms-in-fileReads file one form at a time (using read) and applies `function` to each one in turn.
map-lines-in-fileReads the file to which file-specifier resolves one line at a time (using read-line) and applies ...
name
nearly-samepCompares two things and returns true if they are the same
in the sense of being interchangable. T...
next-element
note-view-settings-changedDoes whatever makes sense to bring a view up-to-date
when its settings have changed (e.g., it's ...
process-parameters
process-parameters*
progress-bar-value
prompt-for
prompt-for*
put-item-on-clipboard
put-item-on-clipboard*
quit-lisp*Quits Lisp
reset
samepCompares two things and returns true if they are the same
in the sense of being interchangable. I...
select-instrument
select-instrument*
shell-command
shell-command*
shorten-filename-for-osReturns a file-name for file-specifier such that it is a valid name for the current underlying OS...
sizeReturns the number of items currently in the container.
sound-note
sound-note*
stop-notes*
total-bytes-allocated*
total-size
uniquify-file-nameReturns a file name that is not currently in use. The strategy used if there is a conflict is to ...
update-dialog-uiA generic place to hang dialog updating code.
view-scale
view-x/view-y->x/y
y-or-n-question*Asks a yes or no question spiffily.

Macro

aandAnaphoric AND: Binds the symbol `it' to the value of the preceding `arg.'
ablock
acondAnaphoric COND: Binds the symbol `it' to the value of the preceding `clause.'
acond2Needs to be documented. See Paul Graham's book.
aifAnaphoric IF: Binds the symbol `it' to the value of the `test.'
aif2Needs to be documented. See Paul Graham's book.
alambdaAnaphoric LAMBDA: Binds the symbol `self' to the function, so that it can
call itself recursively...
allf
aprog1Anaphoric prog1. This binds IT to the first form so that it can
be used in the rest of the forms....
assert*A variation on the `assert' macro in which the restart handler is bound
during the execution of t...
atypecaseAtypecase is anaphoric typecase. It is just like typecase except that it binds the thing being te...
awhenAnaphoric WHEN: Binds the symbol `it' to the value of the `test.'
awhen2Needs to be documented. See Paul Graham's book.
awhileAnaphoric WHILE loop: Executes `expr' and `body' as long as `expr' is true.
Binds the symbol `it'...
awhile2Needs to be documented. See Paul Graham's book.
concf
defclass*Like 'defclass-brief' but also provides the :MAKE-LOAD-FORM-P, :EXPORT-P,
:EXPORT-SLOTS, :NO-COP...
defclass-briefA macro with simpler syntax than `defclass' that allows some
briefer ways of expressing things. ...
defclass-propertyCreate getter and setter methods for 'property' on symbol's property lists.
defconditionDefcondition is a handy shortcut for defining Common Lisp conditions. It
supports all of #[H][def...
deletefSame as (setf list (apply #'delete item list delete-args)).
deprecatedWrap a function definition with `deprecated' to indicate that it should
no longer be used. If the...
doplistIterate over each key/value pair in a plist. Key and Value are
bound to successive pairs in Plis...
ensure-type
eval-alwaysExpands into an eval-when with all the fixings. It's nothing but a shorthand.
fnA general-purpose function-builder. EXPR should be of the
form (OPERATOR . ARGUMENTS). Will ...
funcall-if
generate-time-part-function
handle-errors
handle-token
handler-bind*Special handler-bind which allow two special control contructs
inside of the condition handlers. ...
handler-case-if
if-match
make-load-form*
make-obsolete
map-linesAn enpowered version of map-lines-in-file. This one is a macro
so that you can use (return) to st...
maxfSets `place' to max of its old value and `value'
minfSets `place' to min of its old value and `value'
multfSets `place' to (* delta place)
named-lambdaLike `lambda,' except that the lambda has a name, which can be very useful if
the function is exe...
nilf
nyiSignals an error saying that this function is not yet implemented. The args
are ignored, but by ...
once-onlyGenerate code that evaluates certain expressions only once.
This is used in macros, for computing...
push-endLike PUSH, except that the value goes on the end of the PLACE list.
If PLACE is (), then (value...
rebindingSimilar to ONCE-ONLY. Typical usage:

(defmacro square (x)
(rebinding (x)
`...
removefSame as (setf list (apply #'remove item list delete-args)).
some*An iterative version of the function `some'. Bind each element of list in
turn. If the body ret...
spyA debugging tool: wrapping this around a form causes both the form and its
values to be printed o...
spy*Like spy, but the first argument is a debugging tag and *spy-debugging* is implicitly
nil.
spyxA version of `spy' which expands the forms. See the documentation for `spy,'
particularly the :e...
tf
toggle!Switches the values of each place to its opposite as in
(setf x (not x)).
toggle-aux
with-array
with-atomic-execution
with-gensyms
with-matrix
with-new-file
with-process-message
with-progress-bar
with-slot-bindingsmakes this: (with-slot-bindings (((x x2) double-float) ((y y2) double-float)) location-2 body)
in...
with-standard-printingSimilar to WITH-STANDARD-IO-SYNTAX, but doesn't change packages.
with-struct
with-unique-namesBinds the symbols in VARS to gensyms. cf with-gensyms.
with-variablesUsing gensyms is necessary to prevent variables produced by macro expansions
from interfering wit...
\Similar to Haskell's \ operator. Typical usage:

(\\ x y = * x y)

is like

(lambd...