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

From Frederking

- - - - Begin forwarded message - - - -
Received: from CMU-CS-CAD.ARPA by CMU-CS-A.ARPA; 20 Aug 84 14:14:32 EDT
Date: Mon, 20 Aug 1984 18:09:00 -0000
From: Robert.Frederking@cmu-cs-cad.arpa
To: guy.steele@cmu-cs-a.arpa
Subject: CommonLisp (vs. VaxLisp) question
Message-ID: <1984.>

	Hi.  I've been doing some programming in DEC VaxLisp, and have found
something annoying about the way they do structures.  The way that the
automatically-defined type predicates work, you get an error if you pass
them nil.  So, if you define a structure "ship", (ship-p nil) gives you an
error.  What I was wondering was whether this is required by the CommonLisp
standard, or whether an implementor could allow nil to be the null structure.
I can't really tell from the CommonLisp manual.
	The reason this is annoying is that I (and others) have a tendency
to write code so that nils pass through without being detected.  Getting
errors when testing nils requires one either to screen for them, or write a
predicate that screens out nils and calls the built-in predicate (kind of
defeating its purpose).  This has been the main problem in converting code
to use structures that originally used lists.  Let me know what you think.

- - - - End forwarded message - - - -