Fortifying Macros. Ryan Culpepper, Matthias Felleisen, ICFP 2010.
Existing macro systems force programmers to make a choice between clarity of specification and robustness. If they choose clarity, they must forgo validating significant parts of the specification and thus produce low-quality language extensions. If they choose robustness, they must write in a style that mingles the implementation with the specification and therefore obscures the latter. This paper introduces a new language for writing macros. With the new macro system, programmers naturally write robust language extensions using easy-to-understand specifications. The system translates these specifications into validators that detect misuses—including violations of context-sensitive constraints—and automatically synthesize appropriate feedback, eliminating the need for ad hoc validation code.
Presents syntax-parse, which seems like a truly great advancement over existing macro writing facilities.
Recent comments
15 min 34 sec ago
1 hour 18 min ago
2 hours 36 min ago
4 hours 48 min ago
5 hours 10 min ago
5 hours 23 min ago
6 hours 19 min ago
6 hours 30 min ago
7 hours 46 min ago
10 hours 4 min ago