PREFACE
The most common aggregate of information structure is the object, and a computer system can be viewed as manipulator of objects.
An object represents a dataset, and a computer can compare various datasets to see what they have in common by assigning these datasets to 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 datasets, make one resorts to the use of complex software or to write custom programs to compare aggregated datasets;
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 and provides a prompt
allowing the user to interact with his datasets for instantaneous data analysis, to visualize and to compare them.
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 the ASPL internals as the interpreter offers 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 name refers either
to a list of attributes or to 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 scrutinizing any changes in its elements and archiving its result for historical
data warehousing and comparison.
All of these complex algebraic set 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 datasets require a totally
different approach: data must be structured, objectified, accumulated, expressively matched, etc.
Therefore the implementation of a set calculator is completely different than the implementation of a typical calculator.
However, it was important to deliver a set calculator that resemble the classical calculator, and
the ASPL calculator shares some features found in the traditional one:
- mnemonics for symbolic operators that are easy to remember
- a stack to hold the last operations
- operators without any operands acts on the top of the stack
- a dash showing where the results are held
- a data objects accumulator
- an interative prompt for users interacting with the datasets
- a colorful display to visualize data and contrast the analyzed objects
In this book 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
This book is arranged for easy understanding of the functions and for full utilization of the ASPL interpreter in mining datasets.
This manual is composed of thirteen chapters and appendices.
- 1. What is ASPL
- 2. Using Your ASPL Calculator
- 3. ASPL Grouping Containment
- 4. ASPL Set Operators
- 5. Setness Comparison Operators
- 6. ASPL Similarity Operations
- 7. ASPL Sequence Alignment Operators
- 8. ASPL Checksum Set Operators
- 9. ASPL Fuzzy Set Operators
- 10. ASPL Shallow Set Operators
- 11. ASPL by Examples
- 12. ASPL Scripts by Examples
- 13. ASPL Basic Operators
- A. ASPL Synopsis
- B. Environment Variables
- C. ASPL envvar
- D. Technical Specifications
Chapter 1 should be read first to become familiar with the nomenclature concerning this appliance.
A language is as good as its documentation. This book explains the usage of ASPL while providing the essential documentation. It can
be used as a reference manual showing the exact specifications of the language, and as tutorial or an introductory manual.
At your fingertips is the premier calculator that provide operations on algebraic datasets.
To best understand a calculator is to use it.
Bassem W. Jamaleddine
June 2024
New York, NY
Contents