Comment 1 for bug 1361502

Revision history for this message
Douglas Katzman (dougk) wrote :

Source location tracking will be the easier thing to fix than to re-re-implement backquote.

In Common Lisp we have the luxury of altering the pretty-printer, and such luxury makes the suggestion to follow Scheme somewhat naive, when Scheme does not (at least in the spec) provide for an extensible pretty-printer.

In CLISP, UNQUOTE is indeed a list, and consequently it is easy to create a list of data that by accident prints unreadably using only the builtin PPRINT-FILL, let alone user-written format-control strings.

Welcome to GNU CLISP 2.49 (2010-07-07) <http://clisp.cons.org/>
[1]> (pprint-fill *standard-output* ''(foo bar system::backquote x what))
(QUOTE (FOO BAR . `X))

The symbol WHAT has disappeared. This is not a jab at CLISP - it is an indicator of the difficulty in getting everything right, because as noted in the earlier discussions on sbcl-devel, CLISP is probably the only other open source implementation that gets as many things right as does the new SBCL implementation. (Not having also checked commercial implementations)