Subject: bug#29669: repl-print - requet for iprovement

From: David Pirotte <[email-masked]>
Date: Fri, 3 Aug 2018 23:37:03 -0300

Hi Ludo,
Andy,

> > scheme@(guile-user)> ,use (ice-9 pretty-print)
> > scheme@(guile-user)> ,o print (lambda (repl obj) (truncated-print obj) (newline))
> > scheme@(guile-user)> (iota 500)
> > $20 = (0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
> > # …)
> >
> > So the question becomes: should we change the default?

Why not? then who would want multi-line prints would do the 'oppoite' of the above,
right?

	scheme@(guile-user)> ,use (ice-9 pretty-print)
	scheme@(guile-user)> ,o print (lambda (repl obj) (write obj) (newline))

Or, as I do in Guile-CV, implement a specific display method for 'their
objects' (im-display in guile-cv, and the manual says 'to be used with caution...)

> > I have a slight preference for keeping the default as it is to avoid
> > surprises, but no strong opinion.

What surprise(s)? :),
I mean, what sort of code or who's the one of us who would rely on the repl print
'layout' in any sort of way(s)?

> > Andy, Mark, others, WDYT?  

> Hoo, I don't know.  If we were to do this it should be controllable by
> REPL options, I think; we'd need the ability to go back and forth.  But
> if we have the option I think it could make sense for it to be on by
> default, like what GDB does. 

It seems to me it is a yes :)

	note that (just not to forgot), we need this to be done both for the repl
	_and_ exception printers as well ... it is as essential if not more then
	within the repl

> Thing is, truncated-print does its job  only OK, not great, so it's a hard sell to
> standardize on it.  You probably do want multi-line prints sometimes...

I'm actually using truncated-print all the time, since it is simply impossible
otherwise to use/develop guile-v, and I never spotted any 'problem' (not to say I
can guarantee there is none of course, but that did not happen in years).  Then we
could always improve when someone report a problem ...

Thanks,
David