/usr/share/axiom-20170501/src/algebra/LIB.spad is in axiom-source 20170501-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | )abbrev domain LIB Library
++ Author: Stephen M. Watt
++ Date Created: 1985
++ Date Last Updated: June 4, 1991
++ Description:
++ This domain provides a simple way to save values in files.
Library() : SIG == CODE where
SIG ==> TableAggregate(String, Any) with
library : FileName -> %
++ library(ln) creates a new library file.
pack_! : % -> %
++ pack!(f) reorganizes the file f on disk to recover
++ unused space.
elt : (%, Symbol) -> Any
++ elt(lib,k) or lib.k extracts the value corresponding to
++ the key \spad{k} from the library \spad{lib}.
setelt : (%, Symbol, Any) -> Any
++ \spad{lib.k := v} saves the value \spad{v} in the library
++ \spad{lib}. It can later be extracted using the key \spad{k}.
close_! : % -> %
++ close!(f) returns the library f closed to input and output.
CODE ==> KeyedAccessFile(Any) add
Rep := KeyedAccessFile(Any)
library f == open f
elt(f:%,v:Symbol) == elt(f, string v)
setelt(f:%, v:Symbol, val:Any) == setelt(f, string v, val)
|