[heresy-devel] null/ bug.

Robin Lee Powell rlpowell at digitalkingdom.org
Tue Sep 2 23:15:34 UTC 2008


On Tue, Sep 02, 2008 at 01:37:46PM -0700, Robin Lee Powell wrote:
> 
> IMO, membership predicates should never except, but:
> 
> * (null/ 'e)
> 
> debugger invoked on a SB-KERNEL:CASE-FAILURE in thread #<THREAD
> "initial thread" RUNNING {100266AC71}>: E fell through ETYPECASE
> expression. Wanted one of (LAZY-LIST HERESY::LAZY-LIST-KNOWN-EMPTY
> HERESY::LAZY-LIST-LIST-BASED SEQUENCE LIST).

This turns out to be a more serious problem than I thought;

(atom (list/ ))

returns t, so the obvious fix of

(or (atom x) (non-null/ x))

doesn't work.  On top of that, the "is a lazy list" predicate
doesn't seem to be exported from Heresy.  I had to add (atom nil) to
the etypecase for null/, but really I think that should be a
typecase with (t nil) at the end.

-Robin

-- 
Lojban Reason #17: http://en.wikipedia.org/wiki/Buffalo_buffalo
Proud Supporter of the Singularity Institute - http://singinst.org/
http://www.digitalkingdom.org/~rlpowell/ *** http://www.lojban.org/



More information about the heresy-devel mailing list