Define Syntax Vs Def Macro

One of the more vituperative parts if the LispVsScheme? debates is over the relative merits of traditional Lisp macro systems, as exemplified by Common Lisp's (defmacro) form and the (define-macro) systems of earlier Scheme revisions, and the R5RS (define-syntax) system of 'hygienic' macros (that preserve LexicalScoping). Defenders of (define-syntax) claim it is more stable, and easier for newcomers to use correctly; critics assert that it is too limiting, too complex, that it is poorly defined in the standard, and that there are several commonly used macro idioms that cannot be implemented easily (or at all) with (define-syntax). The few who argue that the two systems can be seen as complementary have, by and large, been dismissed by both sides.

Could this page be refactored to be more technical? With all due respect, this sounds like a news article about Russian vs. Chechnyan lispers. (Feel free to delete this comment after refactoring. In fact, maybe this comparison should be made part of a more general page on macros. -- TayssirJohnGabbour)


See LispMacro, DefineSyntax


EditText of this page (last edited September 12, 2014) or FindPage with title or text search