|
Section
|
Topics
|
|
Introduction
|
|
purpose of the document
|
|
distinction between typed and symbolic programs
|
|
distinction between languages and implementations
|
|
|
Notation
|
|
Characters - building-blocks of typed code
|
|
Symbols - markings used to write symbolic programs
|
|
Symbolic Conventions - size and positioning of symbols
|
|
Tokens - indivisible elements
|
|
Elements - nodes in a tree-like representation of a program
|
|
|
Basic Concepts
|
|
Values - numbers, booleans, functions, etc.
|
|
Expressions - elements used to represent values
|
|
Evaluation - the act of calculating values
|
|
Execution - the act of producing side effects
|
|
|
Basic Elements
|
|
Literals - token expressions that indicate values
|
|
Variables - token expressions that conceal values
|
|
Assignments - elements that define variables
|
|
|
Structuring Elements
|
|
Programs - executable lists of statements
|
|
Subprograms - programs within programs
|
|
Selections - expressions that select expressions
|
|
|
Functions
|
|
Function Expressions - expressions that represent functions
|
|
Function Application - the application of functions
|
|
Vector Expressions - expressions that represent vectors
|
|
Recursion - repetition using recursive functions
|
|
|
Operations
|
|
Basic Operations - operations that yield extended numbers
|
|
Operations Expressions - expressions that describe operations
|
|
Composition - operations that yield functions
|
|
Reduction - prefix operations that reduce arrays
|
|