ACM Home Page
Please provide us with feedback. Feedback
Quasi-static typing
Full text PdfPdf (1.41 MB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
San Francisco, California, United States
Pages: 367 - 381  
Year of Publication: 1989
ISBN:0-89791-343-4
Author
Satish Thatte  Department of Mathematics and Computer Science, Clarkson University, Potsdam, NY
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 13,   Downloads (12 Months): 38,   Citation Count: 15
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/96709.96747
What is a DOI?

ABSTRACT

We present a new approach to dynamic typing in a static framework. Our main innovation is the use of structural subtyping for dynamic types based on the idea that possible dynamic typing as a property should be inherited by objects of all types. Two properties of our system set it apart from existing systems which combine static and dynamic typing: all tagging and checking takes place via implicit coercions, and the semantics of dynamic typing is representation independent. The latter property leads to a significant increase in expressive power—for instance it allows us to define a general call-by-value fixpoint operator. The resulting system—which we call quasi-static typing—is a seamless merger of static and dynamic typing. The system divides programs into three categories: well-typed, ill-typed and ambivalent programs. Ill-typed programs contain expressions that are guaranteed to go wrong. Run-time checking is limited to doubtful function applications in ambivalent programs. Conceptually, quasi-static typing takes place in an unusual two-phase process—a first phase infers types and coercions and a second plausibility checking phase identifies ill-typed programs. The typing rules allow minimal typing judgements and plausibility checking can be characterized as simplification via a canonical set of rewrite rules. The two phase process can therefore be implemented with a one pass algorithm.


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.

 
ABC+83
M.P. Atkinson, P.J. Bailey, K.J. Chisholm, P.W. Cockshott, and R. Morrison. An approach to persistent programming. The Computer Journal, 26(4):360-365, 1983.
ACPP89
 
BTCGS89
 
Car86
 
Car89
Luca Cardelli, January 1989. Personal Communication.
CDJ+89
CW85
Hue80
 
RT88
Edmund Robinson and Robert Tennent, October 1988. Note sent to "Types" E- mail forum.
 
Tha88
 
Tha89
Satish R. Thatte. Type inference and implicit scaling, 1989. To Appear.
 
Wad76
C. Wadsworth. The relation between computational and denotational properties for Scott's Do~ models of the )~-calculus. SIAM J. Camput., 5(3):488-520, 1976.

CITED BY  15