On Mon, May 10, 2010 at 2:02 PM, Matthew Flatt <mfl...@cs.utah.edu> wrote: >> >> This suggests that no one is writing custom printers that should be >> quoted. Further, since there's no mechanism for structs to >> automatically extend the read syntax and the behavior of `quote', only >> very rarely will structs be usefully printed in a quoted form. Both >> of these pieces of evidence suggest to me that quoting is the wrong >> default. > > I think the piece/default that's missing is an "unreadable" property. > There's currently no way to say that a custom-write procedure produces > unreadable output, even though the printer otherwise treats unreadable > values specially: It doesn't put a quote in front, although it lets a > unreadable value be quoted if it appears within otherwise quotable > value). > > So, how about replacing `prop:custom-print-as-expression' with > `prop:custom-print-mode' whose value is either 'unreadable, > 'unquotable, or 'quotable, where the default is effectively > 'unreadable?
I think the default should be unquotable, because it is the only mode that sensibly allows a custom printer to recursively print contained values (that might themselves be unquotable). --Carl _________________________________________________ For list-related administrative tasks: http://list.cs.brown.edu/mailman/listinfo/plt-dev