Hi Thomas IIUC you get an error with your original syntax-rules version because syntax-rules (and syntax-case and syntax-parse) is hygienic by default. In this case think of table-author etc. being renamed inside the macro to avoid clashing with variables defined in the calling code. Hence the undefined error in the calling code.
You *want* and expect it to be defined by the macro, but the default behavior says otherwise, and needs to be explicitly over-ridden. Dan
____________________ Racket Users list: http://lists.racket-lang.org/users