[m-dev.] diff: use pretty printer in mdb
Mark Anthony BROWN
dougl at cs.mu.OZ.AU
Tue May 23 16:16:44 AEST 2000
Mark Anthony BROWN writes:
> Ralph Becket writes:
> > > -----Original Message-----
> > > From: Mark Anthony BROWN [mailto:dougl at cs.mu.OZ.AU]
> > > Sent: 22 May 2000 07:46
> > >
> > > [...]
> > > +% Print using the pretty printer from the standard library.
> > > +% XXX the size of the term is not limited---the pretty printer
> > > +% provides no way of doing this.
> >
> > In what sense are you using `size' here?
>
> The number of functors in the term. If there is a large branching
> factor in the displayed term, and the depth limit is not low enough,
> then a ridiculously large term might still be displayed. The browser
> avoided this by keeping track of the number of functors, and displaying
> an ellipsis when the maximum size was reached.
>
> This measure is still used by other parts of the browser (which did
> not appear in the diff).
>
> > The existing code (which
> > will go horribly wrong on very large terms [performance bug - a
> > fix is in the pipeline]) allows you to specify the depth to which
> > pretty printing will go - as you've made provision for - and it
> > allows you to specify the notional display width (which it will
> > overrun if that cannot be avoided).
> >
> > Do you mean that you'd like pprint to have a facility to clip
> > output to a given n x m character cell window? If so, something
> > like that could probably be arranged.
> >
>
> That would be great. Anything that puts reasonable limits on the
> number of lines displayed would be fine.
>
> As for the performance problem, I think it can be solved by threading
> the available width through flatten, which should fail if there is not
> enough room for the flattened document. This will allow the
> condition (in be/3) to fail before the recursive call.
>
> If this sounds like the right way to go, I'll test out the idea and
> post a diff soon. Comments, anyone?
>
> Cheers,
> Mark.
>
> --------------------------------------------------------------------------
> mercury-developers mailing list
> Post messages to: mercury-developers at cs.mu.oz.au
> Administrative Queries: owner-mercury-developers at cs.mu.oz.au
> Subscriptions: mercury-developers-request at cs.mu.oz.au
> --------------------------------------------------------------------------
>
--
Mark Brown, PhD student )O+ | "Another of Fortran's breakthroughs
(m.brown at cs.mu.oz.au) | was the GOTO statement, which was...
Dept. of Computer Science and Software | uniquely simple and understandable"
Engineering, University of Melbourne | -- IEEE, 1994
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list