Marius Vollmer wrote: > Dorai Sitaram <[EMAIL PROTECTED]> writes: > > > ice-9/syncase.scm provides a procedure datum->syntax-object that > > insists that its first argument be a syntax-object that is an > > identifier. > > > > This is an unnecessary restriction, and removing this check makes > > writing low-level macros easier, because you can give a > > syntax-object directly as datum->syntax-object's first argument, > > instead of destructuring it to get an appropriate identifier. > > I'll just trust you on this. Could you provide a ChangeLog entry that > describes the change?
Hi Marius. Here's my stab at it: ice-9/psyntax.ss: Removed assertion in datum->syntax-object that checked if the first argument, a syntax-object, is an identifier. Henceforth, any syntax-object may be used as datum->syntax-object's first argument. You may remove the second sentence if it's too verbose. Note that you have to regenerate psyntax.pp from the thus-changed psyntax.ss. I presume you have a standard way of doing it. Here's one method that will work. First, go to the ice-9 directory. Make the proposed change to psyntax.ss (i.e., comment out the (arg-check ...) expression in (set! datum->syntax-object ...) Then, staying in the ice-9 directory, do the following after opening a Guile session: (use-modules (ice-9 syncase)) (define-module (ice-9 syncase)) (psyncomp) ;takes a while (exit) At the end of this, you should have the new psyntax.pp. --d _______________________________________________ Bug-guile mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-guile