|
ABSTRACT
We propose that the phenomenon of local state may be understood in terms of Strachey's concept of parametric (i.e., uniform) polymorphism. The intuitive basis for our proposal is the following analogy: a non-local procedure is independent of locally-declared variables in the same way that a parametrically polymorphic function is independent of types to which it is instantiated.A connection between parametricity and representational abstraction was first suggested by J.C. Reynolds. Reynolds used logical relations to formalize this connection in languages with type variables and user-defined types. We use relational parametricity to construct a model for an Algol-like language in which interactions between local and non-local entities satisfy certain relational criteria. Reasoning about local variables essentially involved proving properties of polymorphic functions. The new model supports straightforward validations of all the test equivalences that have been proposed in the literature for local-variable semantics, and encompasses standard methods of reasoning about data representations. It is not known whether our techniques yield fully abstract semantics. A model based on partial equivalence relations on the natural numbers is also briefly examined.
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
|
|
| |
2
|
|
| |
3
|
|
| |
4
|
|
| |
5
|
FREYD, P. J., MULRY, P., ROSOLINI, G., AND Scorn, D. S. 1990. Extensional PERs. In Proceedings of the 5th Annual IEEE Symposium on Logic in Computer Sczence (Philadelphia, Pa.). IEEE Computer Society Press, Los Alamitos, Calif., pp. 346-354.
|
| |
6
|
FREYD, P. J., ROBINSON, E. P., AND ROSOLINL G. 1992a. Dinaturality for free. In Appkcuttons of Categories in Computer Science, M. P. Fourman, P. T. Johnstone, and A. M. Phts, eds. London Mathematical Society Lecture Note Series, vol. 177. Cambridge Univershy Press, Cambridge, England, pp. 107-118.
|
| |
7
|
FREYD, P. J., ROBINSON, E. P., AND ROSOLINI, G. 1992b. Functorial parametricity. In Proceedings of the 7th Annual IEEE Symposium on Logic in Computer Sclellce (Santa Cruz, Calif). IEEE Computer Society Press, Los Alamitos, Calif., pp. 444-452.
|
| |
8
|
|
| |
9
|
HOARE, C. A. R. 1972/ 1978. Proof of correctness of data representations. Acts Inf 1,271-281. (Reprinted in D. Gries, ed. programming Methodology, A Collection of Articles by IFIP WG2.3. Springer-Verlag, New York, 1978.)
|
| |
10
|
|
| |
11
|
HYLAND, J. M. E. 1988. A small complete category. Ann. Pure Appl. Logic 40, 135-165.
|
| |
12
|
|
| |
13
|
JOHNSTONE, P. T. 1989. Affine categories and naturally Malcev categories. J. Pare Appl. A/g. 61, 251-256.
|
| |
14
|
KELLY, G. M., AND STREET, R. H. 1974. Review of the basic elements of 2-categories. In Categoty Seminar: Proceedings of the Sydney Category Theory Seminar, 1972/1973, Lecture Notes in Mathematics, vol. 420, Springer-Verlag, Berlin, pp. 75-103.
|
| |
15
|
|
| |
16
|
LAWVERE, F. W. 1989. Qualitative distinctions between some toposes of generalized graphs. In Categories in Computer Science and Logic, vol. 92 of Contemporary Mathematics, J. W. Gray and A. Scedrov, eds. Providence, R. I., pp. 261-300.
|
| |
17
|
LONGO, G., AND MOGGI, E. 1991. Constructive natural deduction and its "o-set" interpretation. Math. Struct. in Comput. Scl. 1, 2.
|
| |
18
|
|
| |
19
|
MAC LANE, S. 1971. Categories for the Working Mathematiclun. Springer-Verlag, New York.
|
| |
20
|
MASON, I. A., AND TALCOTT, C. L. 1992. References, local variables, and operational reasoning. In Proceedings of the 7th Annual IEEE Symposium on Logic in Computer Science (Santa Cruz, Calif). IEEE Computer Society Press, Los Alamitos, Calif., pp. 186-197.
|
 |
21
|
|
 |
22
|
|
| |
23
|
|
| |
24
|
|
| |
25
|
MOGGI, E. 1988. The maximum consistent theory of the second-order bn lambda calculus. Unpublished note.
|
 |
26
|
J. W. Backus , F. L. Bauer , J. Green , C. Katz , J. McCarthy , A. J. Perlis , H. Rutishauser , K. Samelson , B. Vauquois , J. H. Wegstein , A. van Wijngaarden , M. Woodger , P. Naur, Revised report on the algorithm language ALGOL 60, Communications of the ACM, v.6 n.1, p.1-17, Jan. 1963
[doi> 10.1145/366193.366201]
|
| |
27
|
O'HEARN, P. W., AND REDDY, U. S. 1995. Objects, interference, and the Yoneda embedding. Proceedings of the 22th Conference on Math Foundations of Program Semantics. Electronic Notes in Computer Science, vol. 1 Elsewer Science B. V., to appear.
|
| |
28
|
O'HEARN, P. W., AND TTENNET, R. D. 1992. Semantics of local variables. In Applications of Categories in Computer Science. M. P. Fourman, P. T. Johnstone, and A. M. Pitts, eds. London Mathematical Society Lecture Notes Series, vol. 177, Cambridge University Press, Cambridge, England, pp. 217-238.
|
 |
29
|
|
| |
30
|
|
| |
31
|
|
| |
32
|
|
| |
33
|
PHOA, W. 1990. Effective domams and mtrmslc structure. In Proceedings of the 5th Annual IEEE Symposium on Logic in Computer Science (Philadelphia, Pa.). IEEE Computer Society Press, Los Alamitos, Calif., pp. 366-377.
|
| |
34
|
|
| |
35
|
PITTS, A. M. 1993. Relational properties of recursively defmed domains. In Proceedings of the 8th Annual IEEE Symposium on Logic in Computer Science (Montreal, Canada). IEEE Computer Society Press, Los Alamitos, Calif., pp. 86-97.
|
| |
36
|
|
| |
37
|
|
| |
38
|
PLOTKIN, G. D. 1980. Lambda-definabdity in the full type hierarchy. In To H. B. Cuny: Essays in Combination Logic, Lambda Calculus and Formalism, J. P. Seldin and J. R. Hindley, eds. Academic Press, Orlando, Fla., pp. 363-373.
|
| |
39
|
|
| |
40
|
REDDY, U. S. 1993. Global state considered unnecessary: semantics of interference-free imperative programming. In ACM SIGPLAN Workshop on State in Programming Languages (Copenhagen, Denmark, June 12). ACM, New York, and Technical report YALEU/DCS/RR- 968, Department of Computer Science, Yale University, New Haven, Conn., pp. 120-135.
|
| |
41
|
REDDY, U. S. 1994. Passivity and independence. In Proceedings of the 9th Annual IEEE Symposium on Logic in Computer Science (Paris, France). IEEE Computer Society Press, Los Alamitos, Calif., pp. 342-352.
|
| |
42
|
REDDY, U. S. 1995. Global state considered unnecessaqu Object-based semantics of interference-free imperative programs. Lisp Symb. Computation (special issue on State in Programming Languages), to appear.
|
| |
43
|
|
| |
44
|
REYNOLDS, J. C. 1978a. User-defined types and procedural data structures as complementary approaches to data abstraction. In D. Gries, ed. Programming Methodology, A Collection of Articles by IFIP WG 2.3. Springer-Verlag, New York, 1978., pp. 309-317.
|
 |
45
|
|
| |
46
|
|
| |
47
|
REYNOLDS, J. C. 1981b. The essence of Algol. In Algotithmic Languages, J. W. de Bakker, and J. C. van Vliet, eds. North-Holland, AmstercIam, pp. 345-372.
|
| |
48
|
REYNOLDS, J. C. 1983. Types, abstraction and parametric polymorphism. In Information Processing 83, R. E. A. Mason, ed. North-Holland, Amsterdam, pp. 513-523.
|
| |
49
|
|
| |
50
|
|
| |
51
|
ROBINSON, E. P., AND ROSOLINI, G. 1994. Reflexive graphs and parametric polymorphism. In Proceedings of the 9th Annual IEEE Symposium on Logic in Computer Science (Paris, France). IEEE Computer Society Press, Los Alamltos, Calif.
|
 |
52
|
|
| |
53
|
SIEBER, K. 1992. Reasoning about sequential functions via logical relations. In Applications of Categories in Computer Science, M. P. Fourman, P. T. Johnstone, and A. M. Pitts, eds. London Mathematical Society Lecture Note Series, vol. 177. Cambridge University Press, Cambridge, England, pp. 258-269.
|
| |
54
|
SIEBER, K. 1993. New steps towards full abstraction for local variables. In ACM SIGPLAN Workshop on State in Programming Languages (Copenhagen, Denmark, June 12). ACM, New York, and Technical report YALEU/DCS/RR-968, Department of Computer Science, Yale University, New Haven, Comp., pp. 88-100.
|
| |
55
|
SIEBER, K, 1994. Full abstraction for the second order subset of an Algol-like language (preliminary report). Technischer Bericht A 01/94, Universitaet des Saarlandes, Feb.
|
| |
56
|
STRACHEY, C. 1967. Fundamental Concepty in Programming Languages. Unpublished lecture notes, International Summer School in Computer Programming, Copenhagen.
|
| |
57
|
|
| |
58
|
|
| |
59
|
TENNENT, R. D. 1991. Semantics of Programming Languages. Prentice-Hall International, London, England.
|
 |
60
|
|
REVIEW
"Ann E. Kelley Sobel : Reviewer"
A relational-parametricity model for reasoning about the semantics
of local variables is proposed. This model is based on the observation
that a nonlocal procedure is independent of locally declared variables
in the same manner that a parametr
more...
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE conference on Design automation
Gwo-Dong Chen
, Daniel D. Gajski
|