On Sat, 12 Sep 2009, Brian Harvey wrote: > I think a goal of a macro system should be that after importing a package, > the user shouldn't have to know whether foo is a macro or an ordinary > procedure in order to understand its behavior. As much as possible (not > easy or efficient -- possible) scoping rules should be the same.
A user always has to know what is a macro and what is a procedure. The former has different evaluation rules from the latter. I am not sure anyone has questioned the scope of toplevel bindings. It seems clear that the scope should be the entire toplevel for every toplevel binding. I think the issue is dynamic extent (someone has proposed that procedures should have different dynamic extent from other objects). I think it is important for people to realize that a macro is a macro, and by definition cannot have dynamic extent. Users forget the difference at their own peril. Andre _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
