[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Printing Structures

I do not want the default printing format for structures changed.
Symbolic's incorrect implementation of this has gotten me very upset.

The default syntax is good at the begining of an implementation, when
the data structures are being defined and you will be looking
closely at all of the details.  Eventually, I always define print
functions for each defstruct.  "Eventually" often means just before
I implement the functions to create circular links.

The default syntax is also good for teaching people about Lisp.  It is much
easier to explain how to use structures when you can show people
exactly what is in them.  It would be harder to convince people
that nothing magical is going on if`
if you had to define a print function while explaining it.

As for lexical closures, and other system defined objects which do
not behave well using the default syntax, nothing in CL should prevent
the implementation from giving these objects special syntax.  The default
syntax applies to user defined structures.

One more point.  The default syntax is also best for testing out new
Lisp features.