[plt-scheme] Printing Structures without using custom-write

From: Eli Barzilay (eli at barzilay.org)
Date: Wed Oct 10 15:57:33 EDT 2007

On Oct 10, Sam TH wrote:
> On 10/10/07, Eli Barzilay <eli at barzilay.org> wrote:
> > On Oct 10, Sam TH wrote:
> > > I have this already, because it would be very hard to some things
> > > otherwise.  But it's not a total solution - you can't debug your write
> > > handler with printf, because you immediately get an infinite loop.
> > >
> > > Also, it requires having all your structures defined with a macro that
> > > expands to define-struct, which is the case for me, but limits the
> > > applicability of the technique.
> >
> > Can't you have a parameter that conrols your own output, and based on
> > that your printers will spit out the nice output or something that
> > looks like the standard output?
> Yes, but then you have to re-implement the standard printer.

...which is a one liner, so it shouldn't be a problem in practice.

Conceptually, there may be future extensions to struct printing that
you'll want to have -- but even with that I think that if you want
your own output then you should go all the way with that.

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!

Posted on the users mailing list.