freenode/#lisp - IRC Chatlog
Search
21:13:11
kilimanjaro
White_Flame: i guess for a slow but reasonably general solution, I could serialize the object to a stream using cl-store or similar, and then compute a digest (e.g. md5) using ironclad
21:15:18
White_Flame
so I presume you're doing tons of comparisons, where the hash cost is amortized well?
21:15:31
Xach
ha! on the mac it fails because I was in a directory that had been deleted from under me, so the underlying error was with getcwd.
21:20:30
White_Flame
another goofy idea, especially for the vectors, is to hash the first N bytes of the datastructure memory being referenced
21:40:21
Josh_2
added dedicated threads for accepting and processing connections on my HTTP server and It's just slowed it down
21:42:33
Alfr_
kilimanjaro, probably won't work: (equalp 1d0 1) but the hashes for these numbers printed most likely will differ, similar problem (equalp #\a #\A) is true.
21:45:34
phoe
I mean, does the dlopen syscall provide any information about what exactly blew up, or does it just set errno/retval to EIMDED and the programmer gotta figure out what went wrong?
21:49:00
fe[nl]ix
Shinmera probably compiled that on a very recent distribution, and Xach is running an old(er) one
21:49:32
fe[nl]ix
for the same reason the officially distributed SBCL x86-64 binaries don't run on older distros
21:50:58
fe[nl]ix
one lesson here could be that if you want to distribute binaries, better compile on a distro from 2-3 years ago like Ubuntu LTS or Debian stable/oldstable
21:52:32
mfiano
Xach: It loads for me on SBCL 2.0.7, both dist version and HEAD, though has some warnings, and not just STYLE-WARNING, so probably needs to be fixed before inclusion anyway
22:19:08
jasom
kilimanjaro: the only good way I can think is to come up with a canonical serialization and hash that serialization. equalp has so many special-cases
22:20:38
jasom
kilimanjaro: also note that equalp is potentially non-portabe with non-simple characters; I don't know what actual implementations do, but the spec leaves it up to the implementation
22:21:30
jasom
I can think of reasonable implementations of equalp that would have differing behavior based upon the current locale, for example.
22:59:41
aeth
White_Flame: probably because the most generic thing is case insensitive equality, given that there are case-insensitive predicates in the language.
23:00:23
White_Flame
but to have that wrapped into the only facility which steps structure slots & makes it much less useful
23:00:30
aeth
By naming conventions of case-sensitivity vs. case-insensitivity, the case-sensitive version of EQUALP would be called EQUAL=
23:01:58
White_Flame
string= using the same stuff as char= which is the numeric equality of char codes
23:02:54
aeth
Yes, it wouldn't necessarily be EQUAL=, but there still would be an issue with naming it. I could definitely imagine postponing thinking about it for the next edition of the standard... which obviously never happened.
23:03:29
aeth
This is, of course, about why it's logical, not about what actually happened. You'd have to ask someone who was involved, if there's no written record of it.
23:03:35
White_Flame
but still, case-insensitive string comparison is not a deeper structural equality test; it's orthogonal
23:46:18
Xach
mfiano: thanks. https://github.com/Shirakumo/cl-mixed/issues/4 has the evolution and near-resolution of the issue
3:15:58
PuercoPop
As their mainly, although it doesn't make sense, to what package would the symbol belong to if the package doesn't exist when the form is being read
3:20:11
beach
One could possibly imagine a single pre-existing package that would then be the home package for all package names.