ACM Home Page
Please provide us with feedback. Feedback
Program transformation in the presence of errors
Full text PdfPdf (730 KB)
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: 210 - 217  
Year of Publication: 1989
ISBN:0-89791-343-4
Authors
Alexander Aiken  IBM Almaden Research Center, 650 Harry Rd., San Jose, CA
Edward L. Wimmers  IBM Almaden Research Center, 650 Harry Rd., San Jose, CA
John H. Williams  IBM Almaden Research Center, 650 Harry Rd., San Jose, CA
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): 4,   Downloads (12 Months): 15,   Citation Count: 3
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.96730
What is a DOI?

ABSTRACT

Language designers and implementors have avoided specifying and preserving the meaning of programs that produce errors. This is apparently because being forced to preserve error behavior severely limits the scope of program optimization, even for correct programs. However, preserving error behavior is desirable for debugging, and error behavior must be preserved in any language that permits user-generated exceptions. This paper presents a technique for preserving the power of general program transformations in the presence of a rich collection of distinguishable error values. This is accomplished by introducing an annotation, “Safe”, to mark occurrences of functions that cannot produce errors. Succinct and general algebraic laws can be expressed using Safe, giving program transformations in a language with many error values the same power and generality as program transformations in a language with only a single error value.


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.

 
ASU86
Bac78
 
BWW86
J. Backus, J. H. Williams, and E. L. Wimmers. The FL Language Man~tal. Technical Report 1LI 5339 (54809), IBM, 1986.
CF89
Hen81
 
HMT89
R. Harper, R. Milner, and M. ToRe. The Definition of Standard ML--Version 3. Technical Report ECFS-LFCS-89-81, Laboratory for Foundations of Computer Science, University of Edinburgh, 1989.
 
HWA*88
P. Hudak, P. Wadler, Arvind, B. Boutel, J. Fairbairn, J. Fasel, J. Hughes, T. Johnsson, D. Kicburtz, S. P. Jones, R. Nikhil, M. Reeve, D. Wise, and J. Young. Report on the Functiortal Programming Language Haskell. Technical Report DCS/RR-666, Yale University, December 1988.
 
Ste84
 
Tur85
 
WH87


Collaborative Colleagues:
Alexander Aiken: colleagues
Edward L. Wimmers: colleagues
John H. Williams: colleagues