Static analysis for syntax objects

11 years 2 months ago
Static analysis for syntax objects
We describe an s-expression based syntax-extension framework much like Scheme macros, with a key additional facility: the ability to define static semantics, such as type systems or program analysis, for the new, user-defined forms or embedded languages, thus allowing us to construct "towers" of language levels. In addition, the static semantics of the languages at two adjacent levels in the tower can be connected, allowing improved reasoning power at a higher (and perhaps more restricted) level to be reflected down to the static semantics of the language level below. We demonstrate our system by designing macros for an assembly language, together with some example static analyses (termination analysis, type inference and control-flow analysis). Categories and Subject Descriptors D.3.2 [Programming Languages]: Language Classifications--extensible languages, macro and assembly languages; F.3.2 [Logics and Meanings of Programs]: Semantics of Programming Languages--program anal...
David Fisher, Olin Shivers
Added 13 Dec 2009
Updated 13 Dec 2009
Type Conference
Year 2006
Where ICFP
Authors David Fisher, Olin Shivers
Comments (0)