[mcclim-devel] presenting expressions, nested presentations

Troels Henriksen athas at sigkill.dk
Tue Nov 21 21:58:53 UTC 2006


Christophe Rhodes <csr21 at 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. :-)

-- 
\  Troels "Athas"
/\ Henriksen



More information about the mcclim-devel mailing list