Glossary
Contents
- Glossary
Alist
Inside Lisp, a key-value association list, where the Keys are Atoms and the Values may be Atoms or Lists.
In other languages they are called dictionaries.
API
Application Programming Interface.
A means of communicating between different programming languages within an application.
Atom
An atomic thing. Examples include Numbers, Strings & Symbols.
CAD
Computer Aided Design: software for representing real world objects in a virtual environment.
Most CAD software provide various APIs for manipulating the objects in the model.
Class
A template for creating objects.
Also known as a Type.
CLI
Command-Line User Interface (UI) - where the user interacts with the program using command prompts and keyboard entry.
DIP
Stands for the Dependency Inversion Priciple and is the D in SOLID.
It describes the strategy of depending upon Abstractions (abstract classes) and not to depend upon concretions (actual classes).
DRY
Stands for the Don’t Repeat Yourself.
It describes the programming strategy of defining something once and using it many times.
Often used when defining functions and variables.
FP
Functional Programming.
A programming paradigm based upon processing functions.
Function
A function is a list of instructions or other functions for the computer to process in a programming language.
GUI
Graphical User Interface - where the user interacts with the program using dialog boxes.
ID
An Identifier used as the reference pointer to an Object.
In SOZ it is a string with a unique format.
ISP
Stands for the Interface Segregation Principle and is the I in SOLID.
It describes that many client specific interfaces are better than one general purpose interface.
Lisp
A programming language based around LISt Processing.
Provided as one of the APIs within some CAD software.
List
A list of values stored as one thing - opposite of an Atom.
Lisp has a number of functions specifically available to utilise this data type.
LIVE
A node based visual User Interface, written using SOZ, where objects are represented by nodes and links between nodes to display the flow of data.
With LIVE standing for Lisp Interactive Visual Environment.
LSP
Stands for Liskov Substitution Principle and is the L in SOLID.
It describes the requirement that all sub-types of x must be able to be used anywhere that types of x are required.
Method
A Function defined for a particular Class.
Object
A self contained thing - interacting with other Objects through methods.
An instance of a Class created at run-time.
Passed and referenced as an ID.
OCP
Stands for the Open Closed Principle and is the O in SOLID.
It describes the requirement that a module should be open for extension but closed for modification.
OOP
Object Oriented Programming.
A programming paradigm based upon working with Objects and Methods.
Runtime
The time during which the program is being executed.
SOLID
A set of five governing principles used to define proper programming.
Each of the letters stand for a different principle.
- SRP - Single Responsibility Principle
- OCP - Open Closed Principle
- LSP - Liskov Substitution Principle
- ISP - Interface Segregation Principle
- DIP - Dependency Inversion Priciple
SOZ
An extension of the Lisp programming language within CAD that provides a means of doing OOP using a FP language to create and manipulate objects.
The name SOZ is derived from Scripted ObjectZ, with the Z used to indicate the reflective nature of the language.
SRP
Stands for the Single Responsibility Principle and is the S in SOLID.
It describes the requirement that there should never be more than one reason for a class to change.
String
A human readable series of characters making words etc..
Structure
Inside SOZ, an Alist that uses a String as a Key.
Symbol
A computer readable series of characters used during processing programming code.
Type
Every Object belongs to a particular type or is a sub-type of something else.
Also know as a Class.
UI
User Interface - for users to interact with the program.
In SOZ there are three UIs - a CLI, a GUI and LIVE.
Date: 20251026.1955