ARS++ is an implementaion of A++ with a rich set of primitive abstractions providing the functionality of Scheme and more. (The primary name is ARS++ but because some search engines have problems with special characters in keywords, an alternate name ARSIP was chosen, standing for 'ars in progress'.) The implementation is built on ARSAPI for C and includes a Compiler and an Interpreter for the compiled code.
The Compiler ACOMP is written in Scheme and generates code for a virtual machine called AVIM, which is modelled after the SECD-Machine invented by J. Landin.
| LDCT: | Load a constant into the S register. | |
| LDVR: | Load a variable into the S register. | |
| LDVRI: | Indirect addressing of variable. | |
| LDFN: | Load the definition of a function into the S register. | |
| LOAD: | Load instructions from a code file into the C register. | |
| NIL: | Mark the beginning of a list of arguments or a list of declarations of variables. | |
| BIND: | Bind the topmost two entries as a 'name value' pair and insert the pair into the open symbol table on the stack. | |
| ARG: | Definition of an argument for a following function call. | |
| ADDF: | Add a symbol table to the current environment. | |
| DELF: | Remove the youngest symbol table from the current environment. | |
| DEF: | Definition or modification of a variable in the current environment. | |
| STVL: | Store a value from the S register into a variable of the current environment. | |
| POP: | Remove the topmost value in the S register. | |
| IF: | Open a conditional construct. | |
| ENDIF: | Close a conditional construct. | |
| EOX: | End of expression. | |
| CCALL: | Call a function passing the current continuation as argument. | |
| TCALL: | Tail recursive call of a function. | |
| ACALL: | Apply a function to its arguments. | |
| RTN: | Return from function to caller. | |
| HLT: | Terminate program. |
ARS++ is presented in detail in 'Programmierung pur'
|
Home
| Home of ARS-Based Programming
| Home of Lambda Bound Lambda Calculus | ARS/A++ | ARSAPI New Book on ARS | Demonstration Program | Links |