Fix #177: Add pprinter for deftransform and defoptimizer
Print deftransform
and defoptimizer
neatly as if they were a
defun
.
We now get something like:
* (pprint '(c::deftransform float ((n prototype) (* single-float) * :when :both)
'(%single-float n)))
(C:DEFTRANSFORM FLOAT ((N PROTOTYPE) (* SINGLE-FLOAT) * :WHEN :BOTH)
'(%SINGLE-FLOAT N))
* (pprint '(c:defoptimizer (scale-float derive-type) ((f ex))
(two-arg-derive-type f ex #'scale-float-derive-type-aux
#'scale-float)))
(C:DEFOPTIMIZER (SCALE-FLOAT DERIVE-TYPE) ((F EX))
(TWO-ARG-DERIVE-TYPE F EX #'SCALE-FLOAT-DERIVE-TYPE-AUX #'SCALE-FLOAT))