[Top][All Lists]

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

Re: Adding assoc-delete-all / rassoc-delete-all

From: Stefan Monnier
Subject: Re: Adding assoc-delete-all / rassoc-delete-all
Date: Thu, 17 Apr 2014 09:15:03 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux)

> Strange that it compares with `eql'.  Doesn't `eql' only allow comparing
> floating point values in addition to what's allowed by `eq'?

Common-Lisp simply uses `eql' by default "everywhere".  That's because
the semantics of `eq' is pretty weird, really: if it weren't for `eq'
you could never tell the difference between two identical floats.  So in
many ways, `eq' is a mistake which lets details of implementation
seep through.

Oh, and IIUC `eql' is also different from `eq' on all other immutable
objects (e.g. bignums).

> And floats don't seem to be reasonable candidates for a `case'
> distinction...

Indeed, but comparing their addresses is even less desirable.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]