Subject: Re: removing #'s
From: Erik Naggum <>
Date: 1997/12/02
Newsgroups: comp.lang.lisp
Message-ID: <>

* Kamal Nazar
| Can anyone lend a hand .....
| I have a program that formats its input to produce output lists.
| However, the output contains #'s - I will explain ...
| REQUIRED OUTPUT  ( ((00) (01) (01)) ( (00) (11) (...)))
| ACTUAL OUTPUT  (  ( #1=(00) (01) (01) ) ( #1# (01) (...))))
| i.e. Lisp uses these hashes as a shorthand label, 
| I want the ouput expressed without using this notation -
| can anyone tell me what I'm doing wrong, or how to turn off
| this behavior ??

your Lisp is trying to produce output that can be read back and produce a
result that is as close to the object written out as possible.  a number of
printer variables control this behavior, but in your case, *print-circle*,
if non-nil, causes the Lisp printer to remember which objects it has
previously printed and label them.  (setq *print-circle* nil) will cause
the printer to output the objects without any such attempts.  (it's called
*print-circle* because the labels are mostly useful when printing circular

if you think this year is "97", _you_ are not "year 2000 compliant".

see for GNU Emacs 20-related material.