27Oct00
Procedural Macros for Java
Bachrach and Playford
CodeQuote
•Like Lisp’s quasiquote (QQ)
•WYSIWYG / concrete representation of code within #{}’s
–#{ if (isOn()) turnOff(); }
•Evaluation of codeQuote yields skeleton form representation of code
•Quoting is turned off with ? (like QQ’s comma)
–Variables: ?x
–Expressions: ?(f(x))
•
System translates #{ } into code that generates Fragments