Table of Contents

ALisp Data Types

ALisp has several core data types.

Core Datatypes

Datatype Description
Integers Represented as a literal number.
Numbers Represented as a literal number.
Symbols Represented as any string of characters other than the following: single-quote, double-quote, left parenthesis, or right parenthesis. Additionally, symbols must not begin with a pound sign.
Pairs Represented as a parenthesis-enclosed pair of two items, separated by a dot `.'. The first item is called the car and the second item is called the cdr.
Lists Represented as a parenthesis-enclosed list of whitespace-separated objects. An improper list can be represented the same way as a list, except that it has a dot between its last two items.
Strings Represented as a double-quote-enclosed string of any characters except for a double-quote.
Vectors Represented as a proper list preceded immediately by a pound sign.
Procedures
Macros
Closures
User-defined macros
Special objects These include the boolean true and false values (`#t' and `#f', respectively), and the end-of-list value (`()').

Other Datatypes

Some other data types are used only internally by the ALisp interpreter.

Additional data types are defined by the FrontierSpace engine. These are:

  1. Components
  2. Component settings
  3. Component commands
  4. Commodities
  5. Long range sensor contacts

Example Uses of Datatypes