libera/#sicl - IRC Chatlog
Search
10:44:12
pjb
moon-child: it is a security-by-obscurity breach to convert pointers to integers, but the biggest problem is that if you have a moving garbage collector, it less than useful. Better print out object IDs instead of their address.
13:00:39
jcowan
one idea is to keep object ids only for objects that have been moved, on the assumption that these are few: when you move an object, check if it has an ID, and if not, add one.
13:04:44
moon-child
how do you generate object ids? Sicl hash is a random number; those could collide. You could use an incrementing counter, with a different offset for each thread, but then it wouldn't work as a hash
13:05:08
moon-child
I guess you could use a cheap perfect hash like xxhash and invert it for printing?
13:52:19
jcowan
You can reduce the size of collisions to as small as you want. 128-bit UUIDs are generally considered to be strong enough: generate 1 billion per second for 100 years and your probability of collision rises to 50%, but really.