I want to be able to represent a set of operations in sequential order such that they will represent what is traditionally called a "function" (which is not always the mathematical definition of a "function"). However, I'm trying to define more primitive terms:
- object - Anything that can be manipulated throughout the course of a program; that is, they can be read and set.
- place - A container that can hold value. (e.g. variables)
- value - A value. (e.g. 2+2 is a value but not a variable).
- procedure - A sequence of operations.
I want to be able to define procedure in more definite terms. Note that I will be starting without the definitions of operations, as I want to be able to define basic operations as procedures.
I know that I may want to introduce the sense of "time" and "space" for programs, time being necessary due to the definition of "sequence" that I put forth. Is there a better way to define it? Is there already work out there that explores this?
How would you formally define a procedure or operation at its most basic level?