[racket] Another Canonical Use of Macros?

From: Konrad Hinsen (konrad.hinsen at fastmail.net)
Date: Sat Nov 23 01:58:13 EST 2013

John Clements writes:

 > categorizing them in terms of the "three canonical categories" that
 > Matthias described--apologies if I'm misrepresenting him/you:
 > - changing evaluation order,
 > - implementing a data sublanguage, and
 > - creating new binding forms.
 > 
 > Some of the Rust macros seem to fall into a fourth category, which arises from the fact that certain things are not expressions:
 > 
 > - abstracting over things that are not expressions.

This looks like a generalization of "creating new binding forms". In
the Lisp family, binding forms are the major category of
non-expression forms.

Konrad.


Posted on the users mailing list.