CLtL2 Reference 

macro DEFSTRUCT : ((name &rest options) &body slots)

Like Common Lisp defstruct except:

(1) slot initializations are not allowed.


(2) the only other options: 

(:conc-name whatever)

(:print-function #'whatever)


the default structure print function is

default-struct-print-function : object stream depth


(3) The make constructor takes no arguments and only makes an empty structure.


(4) Reading of structures is not supported by the reader. 

function DEFAULT-STRUCT-PRINT-FUNCTION : (object stream depth) 

macro PRINTING-OBJECT : ((object stream) &body body)