|
ABSTRACT
If x and y are integer variables or any other variables of a “simple” type, then the meaning of the assignment x:&equil;y is quite similar in different programming languages. The value of y is copied (into a register) and then stored into x so that a fresh copy of the value of y becomes the current value of x. On the other hand if x and y are compound objects the the situation is quite different: some languages don't allow assignments at all, and other languages call for a conditional copying depending on the form of the right hand side. This paper argues for a unified view on assignment with semantics, that can be described in terms independent of the complexity of the type of the variables involved. We also present some alternatives to assignments and discuss their consequences for programming with complex data types.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Dahl O.J., Myhrhaug D., Nygard K., Common Base Language, NCC Publ S-22, 1970
|
| |
2
|
|
| |
3
|
Hoare C. A. R., Procedures and Parameters: an Axiomatic Approach, in: Semantics of Algorithmic Languages, Springer Lecture Notes in Mathematics, vol. 188
|
| |
4
|
Hoare C. A. R., Recursive Data Structures, Stanford Report, STAN-73-400, C.Sc. dept., Stanford University, California
|
| |
5
|
Hoare C.A.R., Proof of Correctness of Data Representation, Acta Informatica 1, 271-281, 1972
|
| |
6
|
Ingargiola G., Basic Features of CALEX, Inf Sc Rep nr 9, June 1974, Calif Inst of Teach, Pasadena, California
|
| |
7
|
Kieburtz R., Four Principles of Programming Languages, internal memo, Dept of C.Sc. SUNY at Stony Brook
|
 |
8
|
|
| |
9
|
Schwartz J. T., Optimization of Very High Level Languages, Computer Languages. Vol. 1, pp 161-194, 1975
|
| |
10
|
Scott D., Mathematical Concepts in Programming Language Semantics, Proc. AFIPS SJCC, vol. 40, 1972
|
| |
11
|
Wirth N., The Programming Language Pascal (Revised report), Eidg Technische Hochschule, Zürich, 1972
|
|