Abstract
We examine the problem of automatically extracting a static semantics from a languageās semantic definition. Traditional approaches require manual construction of static and dynamic semantics, followed by a proof that the two are consistent. As languages become more complex, the static analyses also become more complex, and consistency proofs have typically been challenging. We need to find techniques for automatically constructing static analyses that are provably correct. We study the issues of developing such techniques and propose avenues of research in this area. We find that significant advances are required before realizing the practical extraction of static semantics from language definitions.
This work is supported in part by NSF Award #CCR-9900918.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Barbuti, R. and A. Martelli, A structured approach to static semantics correctness, Science of Computer Programming 3 (1983), pp. 279ā311.
Cousineau, G., P.-L. Curien and M. Mauny, The categorical abstract machine, The Science of Programming 8 (1987), pp. 173ā202.
Doh, K.-G. and D. A. Schmidt, Extraction of strong typing laws from action semantics definitions, in: European Symposium on Programming, Lecture Notes in Computer Science 582 (1992), pp. 151ā166.
Hannan, J., Staging transformations for abstract machines, in: P. Hudak and N. Jones, editors, Proceedings of the ACM SIGPLAN Symposium on Partial Evaluation and Semantics Based Program Manipulation (1991), pp. 130ā141.
Hannan, J. and D. Miller, From operational semantics to abstract machines, Mathematical Structures in Computer Science 2 (1992), pp. 415ā459, appears in a special issue devoted to the 1990 ACM Conference on Lisp and Functional Programming.
Jones, N., Static semantics, types, and binding time analysis, Theoretical Computer Science 90 (1991), pp. 95ā118, also appeared in Images of Programming, eds. D. BjĆørner and V. Kotov, North-Holland.
Jones, N. D., C. K. Gomard and P. Sestoft, āPartial evaluation and automatic program generation,ā Prentice Hall,, 1993.
JĆørring, U. and W. Scherlis, Compilers and staging transformations, in: Thirteenth ACM Symposium on Principles of Programming Languages, 1986, pp. 86ā96.3
Landin, P. J., The mechanical evaluation of expressions, Computer Journal 6 (1964), pp. 308ā320.
Lee, P. and U. F. Pleban, A realistic compiler generator based on high-level semantics, in: Conference Record of the 14th ACM Symposium on the Principles of Programming Languages, 1987, pp. 284ā295.
Milner, R., M. Tofte, R. Harper and D. MacQueen, āThe Definition of Standard ML (Revised),ā MIT Press, 1997.
Montenyohl, M. and M. Wand, Correct flow analysis in continuation semantics, in: Conf. Rec. of the 15th ACM Symposium on Principles of Programming Languages, 1988, pp. 204ā218.
Mosses, P. D., Compiler generation using denotational semantics, in: Mathematical Foundations of Computer Science, number 45 in Lecture Notes in Computer Science (1976), pp. 436ā441.
Mosses, P. D., āAction Semantics,ā Tracts in Theoretical Computer Science, Cambridge University Press, 1992.
Nielson, F. and H. R. Nielson, Two-level semantics and code generation, Theoretical Computer Science 56 (1988), pp. 59ā133.
Palsberg, J., A provably correct compiler generator, in: Proceedings of the European Symposium on Programming, Lecture Notes in Computer Science 582 (1992), pp. 418ā434.
Pierce, B. C., āTypes and Programming Languages,ā MIT Press, 2002.
Tofte, M., āCompiler Generators,ā Springer-Verlag, 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
Ā© 2002 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Hannan, J. (2002). On Extracting Static Semantics. In: Mogensen, T.Ć., Schmidt, D.A., Sudborough, I.H. (eds) The Essence of Computation. Lecture Notes in Computer Science, vol 2566. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36377-7_8
Download citation
DOI: https://doi.org/10.1007/3-540-36377-7_8
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00326-7
Online ISBN: 978-3-540-36377-4
eBook Packages: Springer Book Archive