This page is part of the web mail archives of SRFI 72 from before July 7th, 2015. The new archives for SRFI 72 contain all messages, not just those from before July 7th, 2015.
On Mon, 22 Aug 2005, Matthias Neubauer wrote:
How about specifying an interface for scheme syntax instead. Something like ... make-syntax-lambda-expression make-syntax-procedure-call make-syntax-conditional ...
I don't see anything wrong with this, but it would be a different paradigm. The hygiene algorithm is in fact designed to automate this, and indeed it uses the equivalent of your suggested constructors internally, as opposed to traditional Lisp expanders that do not interpret the result of macro-expansion.
Also keep in mind that the reader cannot interpret the s-expressions it reads, since the meaning of these s-expressions can become known only during macro-expansion. The input to macro-expansion therefore can only be some structure that is homomorphic to an s-expression.