---
# System prepended metadata

title: Untitled

---

Notes from Structure and Interpretation of Computer Programs

computational process
- A running program that is able to alter data it has access to. (Computational processes are abstract beings that inhabit computers and manipulate other abstractionsa as they grow.)

recursion equations
- Deals with the recurrance of a specific reference.  Something related to another event that has happened before, a cyclical behavior.

procedures
- A way to describe a process.

data
- Anything that can be manipulated by a process.

expression
- anything that returns a value. Can be single or compound.

evaluating
- computing an expression or term.

combinations
- an expression in Lisp that uses a primitive value inside of parentheses.  Contains operators and operands.

operator
- a primitive expression

operand
- data that is being evaluated

recursive
- In order to evaluate one expression, another expression must first be evaluated until a base case is reached, meaning the simplest form of that expression. One of the steps in the procedure is to refer to itself.

tree accumulation.
- Values percolate upwards during a process.

special forms
- Information must be gathered from the environment in order to process the expression properly.  These expressions go outside of the general evaluation rules.

procedure definitions
- A technique that allows the program to be more dynamic.  It takes a compound operation and gives it a name.

compound procedure
- A non-simple evaluation of an expression or operation by following a sequence of steps.  This allows it to be used as a building block in constructing further processes.

substitution model
- A model that searches for the meaning of an application or a procedure being used.

normal-order evaluation
- fully expand and then reduce in order to come to a conclusion.

applicative-order evaluation
- evalutate the arguments and then apply
 
case analysis
- A conditional deciding which flow of logic evaluates to true

predicate
- first condition in each pair, procedure that returns true or false

clauses
- pairs of expressions

consequent expression
- the return value of a certain conditional


















