Difference between revisions of "WG211/M3Veldhuizen"
(Created page with "Category:WG211 <HTML> <HEAD> <title>Todd Veldhuizen</title> </head> <body bgcolor="white"> Title: Tradeoffs in Metaprogramming <br>Speaker: Todd Veldhuizen <p> Slides: [[...") |
m (1 revision) |
(No difference)
|
Revision as of 11:06, 12 December 2011
Speaker: Todd Veldhuizen
Slides: [[http://pub.smart-generators.org/M3Schedule/tradeoffs.pdf .pdf]]
Abstract:
The design of metaprogramming languages requires appreciation
of the tradeoffs that exist between important language characteristics
such as safety properties, expressive power, and succinctness.
Unfortunately, such tradeoffs are little understood, a situation we
try to correct by embarking on
a study of metaprogramming language tradeoffs using tools from computability
theory. Safety properties of metaprograms are in general undecidable;
for example, the property that a metaprogram always halts and
produces a type-correct instance is [[File:9ee97d2bab9cce6f0b661e0a8782c1ef.png-complete.]] Although such
safety properties are undecidable, they may sometimes be captured
by a restricted language, a notion we adapt from complexity theory.
We give some sufficient conditions and negative results on when
languages capturing properties can exist: there can be no languages
capturing total correctness for metaprograms,
and no `functional' safety properties above [[File:276dc4422ef77a950a94008a4415754f.png]]
can be captured. We prove that translating a metaprogram from a
general-purpose to a restricted metaprogramming language capturing
a property is tantamount to proving that property for the
metaprogram. Surprisingly, when one shifts perspective from
programming to metaprogramming, the corresponding safety questions
do not become substantially harder
----
there is no `jump' of Turing
degree for typical safety properties.
This talk will be based in part on the paper:
Todd L. Veldhuizen. Tradeoffs in Metaprogramming. ACM SIGPLAN Workshop on Partial Evaluation and
Semantics-Based Program Manipulation (PEPM 2006), Charleston, South Carolina,
January 9-10 2006. [[[http://arxiv.org/pdf/cs.PL/0512065 PDF]]]