[plt-dev] Re: [plt-bug] all/10895: quasiquote printing is buggy, confusing
On Wed, May 5, 2010 at 11:20 AM, Sam Tobin-Hochstadt <samth at ccs.neu.edu> wrote:
> [redirecting to plt-dev]
>
> On Wed, May 5, 2010 at 12:37 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
>>
>>> If we're going to have constructor-style printing of
>>> structures, why not use the same for lists, vectors, and so on?
>>
>> From http://list.cs.brown.edu/pipermail/plt-dev/2010-April/002538.html :
>>
>> Printing with `quasiquote', meanwhile, mostly preserves the Lisp
>> tradition of printing values that represent expressions as the
>> expressions that they represent.
>
> I, like Carl, find the new quasiquote printing very confusing.
> Constructor-style printing for structures is great, and I like that
> we've switched to that.
Me too.
> But I think the semi-quasiquote style
> printing is a mistake. As Carl said in the initial bug report, `(,(foo
> 1 2)) is a lot of notation. I'd much prefer (list (foo 1 2)),
At the very least have a little optimization that looks for quoted
lists where every element is evaluable.
> avoiding the quoting and unquoting entirely. I don't see how the
> quote from your earlier message suggests one printed form over the
> other - the Lisp tradition is to print `read'able forms, and we're
> switching to `eval'able forms. I don't see a reason from tradition to
> go with one `eval'able form over another, and I find the
> quasiquote-style very hard to parse visually.
>
> As a slightly-related issue, I think mutable pairs are currently
> handled incorrectly by the printer, since they should print as (mcons
> a b) but instead print as {a . b}.
> --
> sam th
> samth at ccs.neu.edu
> _________________________________________________
> For list-related administrative tasks:
> http://list.cs.brown.edu/mailman/listinfo/plt-dev
>
--
Jay McCarthy <jay at cs.byu.edu>
Assistant Professor / Brigham Young University
http://teammccarthy.org/jay
"The glory of God is Intelligence" - D&C 93