MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Syntactic type abstraction (2000) [38 citations — 1 self]

Download:
Download as a PDF | Download as a PS
by Dan Grossman, Greg Morrisett, Steve Zdancewic
ACM TOPLAS
http://www.cs.cornell.edu/zdance/syntactic_abs.ps
Add To MetaCart

Abstract:

Software developers often structure programs in such a way that dierent pieces of code constitute distinct principals. Types help dene the protocol by which these principals interact. In particular, abstract types allow a principal to make strong assumptions about how well-typed clients use the facilities that it provides. We show how the notions of principals and type abstraction can be formalized within a language. Dierent principals can know the implementation of dierent abstract types. We use additional syntax to track the ow of values with abstract types during the evaluation of a program and demonstrate how this framework supports syntactic proofs (in the style of subject reduction) for type-abstraction properties. Such properties have traditionally required semantic arguments; using syntax avoids the need to build a model for the language. We present various typed lambda calculi with principals, including versions that have mutable state and recursive types.

Citations

513 The Definition of Standard ML (Revised – Milner, Tofte, et al. - 1997
281 Abstract types have existential type – Mitchell, Plotkin - 1988
269 Proofs and Types – Girard, Lafont, et al. - 1989
248 Jflow: practical mostly-static information flow control – Myers - 1999
190 The SLam calculus: programming with secrecy and integrity – HEINTZE, RIECKE - 1998
109 Formal parametric polymorphism – Abadi, Cardelli, et al. - 1993
103 Compiling with Types – Morrisett - 1995
96 98: A non-strict, purely functional language. http://www.haskell.org – Jones, Hughes - 1999
69 Relational properties of domains – Pitts - 1996
66 Security properties of typed applets – Leroy, Rouaix - 1999
61 Parametric polymorphism and operational equivalence – Pitts - 2000
58 A note on: “A simplified account of polymorphic references – Harper
54 Types, abstraction, and parametric polymorphism, part 2 – Ma, Reynolds - 1991
48 Behavioral equivalence in the polymorphic picalculus – Pierce, Sangiorgi
46 dI-domains as a model of polymorphism – Coquand, Gunter, et al. - 1987
34 On the equivalence of data representations – Mitchell - 1991
33 Domain theoretic models of polymorphism – Coquand, Gunter, et al. - 1989
12 A simple proof technique for certain parametricity results – Crary - 1998
10 JFlow: Practical mostly-static information control – Myers - 1999
9 Parametric polymorphism and operational equivalence. Mathematical Structures in Computer Science 10, 321–359. Preliminary version appeared – Pitts - 1998
8 Two-Level Functional Languages. Number 34 – Nielson, Nielson - 1992
2 A PER model of polymorphism – Abadi, Plotkin - 1990
1 An ideal model for recursive polymorphism – MacQueen, Plotkin, et al. - 1986