unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* nil patches
@ 2009-10-27 22:20 Andy Wingo
  0 siblings, 0 replies; only message in thread
From: Andy Wingo @ 2009-10-27 22:20 UTC (permalink / raw)
  To: Mark H. Weaver; +Cc: guile-devel

Hi Mark,

I've pushed the first two of the patches you attached in
http://thread.gmane.org/gmane.lisp.guile.devel/8853. Thanks very much,
this adds awesome to Guile!

For the rest of us: the first patch is the boolean-hypercube thing, so
that we can, in the future, efficiently check if a value is '() or nil
but not #f.

The second patch adapts some boolean/end-of-list checks in the VM to be
more permissive, and accept nil.

There are two more patches in your series that make similar tweaks in
other parts of Guile, but what I would prefer would be patches to change
existing scm_is_false / scm_is_null / scm_is_true invocations to their
false_and_not_nil equivalents, in those very few places in which this is
necessary. Then we can switch scm_is_false to be scm_is_false_or_nil.

I just did a grep and for one of those, like scm_is_false, and there
were about 200 places. But it seemed fairly clear in most cases which
thing it should be, so it sounds like just an hour's work or two. I'd
rather not spice up the rest of the source with nil-knowledge if we can
avoid it.

Thanks again for the great patches! We would of course appreciate any
more patches that you are hiding :-)

Andy
-- 
http://wingolog.org/




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-10-27 22:20 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-27 22:20 nil patches Andy Wingo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).