Procedures, parameters, and abstraction: Separate concerns (Q1113659): Difference between revisions
From MaRDI portal
m rollbackEdits.php mass rollback Tag: Rollback |
Set OpenAlex properties. |
||
Property / full work available at URL | |||
Property / full work available at URL: https://doi.org/10.1016/0167-6423(88)90062-7 / rank | |||
Normal rank | |||
Property / OpenAlex ID | |||
Property / OpenAlex ID: W1999659898 / rank | |||
Normal rank |
Latest revision as of 08:36, 20 March 2024
scientific article
Language | Label | Description | Also known as |
---|---|---|---|
English | Procedures, parameters, and abstraction: Separate concerns |
scientific article |
Statements
Procedures, parameters, and abstraction: Separate concerns (English)
0 references
1988
0 references
The paper argues that the notions of procedure, parametrization, and abstraction can be separated and that the result could be of practical use. The separation relies essentially on the embedding of procedural abstractions (specifications) within programs. The copy rule of ALGOL 60 gives significance to the procedure calls which are not yet executable code but only the specification, the specification itself being the text to copy. Using the standard axiomatic framework of Hoare and Dijkstra, the author proves that ``substitution'' by value, by result and by value/result are monotonic with respect to the (order) relation of refinement defined over the programs. The ``substitution'' by name cannot be treated, but one difficulty is located: aliasing is shown to be a non- monotonic construction. The aim of the paper is to give an orthogonal set of rules for the axiomatic treatment of procedures, parametrization, and abstraction. The independence of rules seems to both open up new possibilities and introduce new limitations for the considered notions.
0 references
parameter passing
0 references
ALGOL's copy rule
0 references
weakest pre-condition
0 references
post- condition
0 references
axiomatic semantics
0 references
specifications
0 references
procedure calls
0 references