Christophe Rhodes csr21@cantab.net writes:
Wouldn't it be cool if, when we presented list data as an expression, the contents were individually presented?
Yes!
we no longer respect *print-level*, *print-length* and friends; we don't honour *pprint-dispatch-table* (which might have EQL "methods" on these objects);
Hmm. This is probably not a good idea in a Listener, as it's supposed to be an enhanced REPL - its Lisp behavior should preferable be indentical to the standard TTY REPL.
and there appears not to be a way of finding out what the user would prefer to be the :single-box attribute of the nested presentations.
Your method draws the box around the innermost presentation (or from the beginning parenthesis to the ending parenthesis). Surely this is the resonable choice? Or do I misunderstand?
What do I have to do to honour the ACCEPTABLY keyword?
If ACCEPTABLY is true, you just have to make sure whatever you print is valid (textually) input to the corresponding accept method. It has nothing to do with what can be understood by READ (though it's probably a very good idea to also make it readable).
Is managing *print-level* and *print-length* enough (well, presumably there's more work to be done to support *print-array* and so on)?
I would consider it more important than pretty-printing, at least, because being able to prevent CLIM from drawing too large expressions at the Listener is probably necessary with the current McCLIM drawing performance, while pretty-printing is more of an aesthetic issue. However, should *print-level* and *print-length* also be respected when some arbitrary application presents expressions? That might be a bit nonintuitive.
suppose the inevitable question is: what did the Lisp Machines do...?
We better find McCLIM a corporate sponsor so we can get one and check it out. :-)