> It's the same thing. You want to handle the syntax-error exception by > replacing the offending expression with another one of your choice. > The replacement may be just #f or (asserion-violation 'foo "unbound") > or whatever. Still, not possible to do correctly without hacking on > psyntax.
(BTW would it be a syntax error or an undefined violation?) All right. Maybe you can suggest how you would do this (portably). I have a script full of tests for various versions of a library (and these versions are in flux). Different versions export different subsets of the set of all possible exports for this library. I'd like to be able to run the test script on a particular version and have it figure out which tests are applicable and run them, with minimal effort (e.g. just changing a library name in the test script, or even passing it in on the command line). On Sun, Jun 14, 2009 at 9:25 PM, Abdulaziz Ghuloum<[email protected]> wrote: > > On Jun 14, 2009, at 2:10 PM, Ramana Kumar wrote: > >>> So, you have a library that may or may not export a macro, say let^, >>> and you have an expression that may or may not reference let^. If >>> the expression references let^, and let^ was not exported, which >>> would normally result in a syntax error, you want to defer the error >>> until run time instead of being signaled at macro-expansion time. >> >> I actually don't want the error at all - I want to detect that let^ is >> not exported and therefore remove the expression that references it >> (or replace it with something). This can happen at macro expansion >> time. Still not possible? > > It's the same thing. You want to handle the syntax-error exception by > replacing the offending expression with another one of your choice. > The replacement may be just #f or (asserion-violation 'foo "unbound") > or whatever. Still, not possible to do correctly without hacking on > psyntax. > > Aziz,,, > >
