====== ALisp Data Types ====== [[ALisp:About | 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:About | ALisp]] interpreter. Additional data types are defined by the [[FSpace:About | FrontierSpace engine]]. These are: - Components - Component settings - Component commands - Commodities - Long range sensor contacts ====== Example Uses of Datatypes ======