sydow
sydow
Hi, this is, I think, a result of unfinished thinking several years ago. To give a default value of 0 to start would restrict the type of sum to [A(Number)]...
A B_int is a pointer to a struct with three fields: - n, which again is a pointer, to a (heap-allocated) array of 64-bit unsigned “digits” or limbs. - size,...
Yes, of course that’s an alternative, but it seems tedious to have to say 0, which I would guess is by far the most common case, every time. > On...
It seems to me that the problem is in Env.addMod. This function seems not to be prepared for adding module foo *after* module foo.bar (and file names are reordered in...
I forgot one thing: hash values should be u64, not int, as soon as we have integer subtyping.
Hash functions for hash tables have two requirements (cryptographic hash functions have more): - they should be fast - they should be collision-avoiding. To focus on speed only is a...
Sorry for being late to respond. Here are my comments: 1. I think that now that we see integer subtyping coming soon, fixing hash should wait for that. 2. A...
I thought it worked by some magic introduced somewhere in the compiler. Shouldn't it be better if we let opt(A) be defined in __builtin__.act so that we could defined whatever...
I have no idea hoe 128 bit integer arithmetic is handled on the platforms we support, but it seems likely that it, as Kristian suggests, would perform better than our...
I think that your list is a good start. Witness inlining certainly deserves a place at the top. We do already use global static wtnesses for most builtin types. The...