On Sat, May 10, 2014 at 4:03 PM, Douglas Katzman <email@example.com> wrote:Wait, where is that sharsign backquote thing defined???
> Looks like we're just not getting the patch right, and that as a minor
> hindrance, changing a function that was set-macro-character'd into a named
> readtable doesn't force recompilation of files that use the readtable. So
> in part my testing has been bogus.
> To bring you up to speed: nothing has changed in SBCL in relation to
> backquote yet, though it might. I proactively suggested to the rutils
> maintainer that he could eliminate the assumption that SUBST was a
> "reasonable" way to perform alpha conversion of a lambda expression by
> instead using sb-walker in sbcl. Then I saw that my first patch - which I
> think was correct as it stood - was inconsistent with the behavior for other
> lisps. #` is supposed to treat #`((foo) (bar)) as (progn (foo) (bar)) which
> I failed to realize.
> I'll try one more time and make sure a forced recompile works.
CLHS 2.4.8 says that it's undefined.
If there's a standard for it somewhere, I'd like to know about it,
so I may implement it in fare-quasiquote.
And yes, SUBST is a very bad way of doing alpha conversion: it goes
not only under BACKQUOTE, but under QUOTE — but not under #(), and
maybe maybe not under `#(). In other words, it SUCKS, and programs
that use it are probably buggy.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
You only have power over people as long as you don't take everything away
from them. But when you've robbed a man of everything he's no longer in
your power — he's free again. — Alexander Solzhenitsyn (1918–2008)