PREFACE
23 November 2025
The most common aggregate of information structure is the object, and a computer system can be viewed as a manipulator of objects.
As objects represent groups or datasets, one can use a computer to compare these datasets.
For instance, the datasets will be assigned to identifiers, called set variables, then processing these
variables to reveal their similarities and differences.
The importance of group operations, classification, sequence analysis, and similarity calculation are
emphasized in many disciplines.
But the lack of a calculator that can operate on algebraic structured groups, make one resorts to the use of complex
software or to write custom programs to compare aggregated grouped data;
however, this is costly, system resource consuming, results are delayed, lack homogeneity in dataset comparisons, and
lack the semantic interactivity aspects of users interaction with their datasets.
What is needed is a
set-calculator where the user can quickly interact with objects to compare datasets. A calculator
that can run on top of the UNIX system shell that is easy and convenient to use without exhausting the system resources.
A Set Programming Language, ASPL, is an interpreted language that runs on the UNIX system. It provides a prompt
allowing the users to interact with their datasets for instantaneous data analysis and visual comparison.
ASPL interpreter containments use the basic of the UNIX system resources and run on top of the standard Perl
interpreter virtual machine.
The user does not need to know about ASPL internals, as the interpreter provides simple statements to do
set operations transparently.
Creating, modifying, processing (such as merging, intersecting, differentiating, etc.), and storing and retrieving objects
are accomplished by invoking simple commands at the ASPL prompt.
ASPL is a software that restructures (or reshapes) data objects into shapes all of which have named labels, and
where each label refers to, either a list of attributes, or another object.
The interpreter has a rich operational characteristics to perform set operations, and to provide the users with real time
semantic interactivity with their datasets. It has abundant operators to do set operations,
sequence operations, similarity calculation, and density calculation. It can aggregate datasets based on predicates
and even interrogate the source of a dataset, hence scrutinizing any changes in its elements, and archiving its result
for historical data warehousing and comparison.
All of these complex algebraic group calculations are performed with simple commands.
Traditional calculators are programmed to do arithmetic operations and resolve formula: data is typically processed while being
transitioned between the processor registers and the stack memory. Doing operations on groups or datasets require a totally
different approach: data must be structured, shaped, accumulated as objects, expressively matched, etc.
Therefore the implementation of a
set-calculator is completely different than the implementation of a typical calculator.
It was important to deliver a
set-calculator that resembles the classical calculator; however,
the ASPL calculator shares some general features found in the traditional one:
- mnemonics for symbolic operators that are easy to remember
- an accumulator for data objects
- a stack to hold the last operations
- operators without any operands get their values from the top of the stack
- a prompt for users interacting with their datasets
- a customizable prompt, showing increment, date, time, and current working space
- a colorful display to visualize data and contrast the analyzed objects
- various display modes for the symbol table and answer stack
- a display line, called tattler-line, showing where the results are held
In this manual we refer to the UNIX shell prompt with hash as shown here
# aspl
The commands issued at the aspl prompt start with aspl> as shown here
aspl> sim a1 a2 a3
A series of commands can be numbered, for example:
① aspl> sim a1 a2 a3
② aspl> sim`c a1 a2 a3
③ aspl> sima123 = sim a1 a2 a3
The manuscript was produced with the author's private typesetter program,
ppages (programmer's pages),
a powerful formatting toolkit that runs on UNIX systems.
At your fingertips is the premier set calculator that provides symbolic group operations on algebraic datasets.
To best understand a calculator is to use it.
Bassem W. Jamaleddine
November 23 2025
New York, NY
Contents