Doug Coleman
9f213f96f6
core: Add the shuffler words but without primitives.
...
The nipd branch slowed bootstrap by a minute, this patch does not.
sorry about changing the fjsc line endings...
2018-06-19 22:52:58 -05:00
John Benediktsson
de48558d12
sets: adding ?delete that returns a boolean if elt was deleted from set.
2017-02-07 13:31:07 -08:00
John Benediktsson
8f6ac5d457
Revert "hash-sets,hashtables: make it so the array backing the hash is non-empty"
...
This reverts commit 6f10f06c27
.
2016-10-06 11:18:41 -07:00
John Benediktsson
db46b16d10
Revert "hash-sets,hashtables: improved key@ word"
...
This reverts commit 70c7f9e029
.
2016-10-06 11:18:35 -07:00
Björn Lindqvist
6f10f06c27
hash-sets,hashtables: make it so the array backing the hash is non-empty
...
Commit 70c7f9e029
made it so the code
assumes the array is not empty. But it can be empty if the hashtable is
created using "hashtable new" and then it can crash because it reads
uninitialized memory. Setting the initial of the array slot to
a valid hash-array should fix that.
2016-10-05 19:19:39 +02:00
Björn Lindqvist
70c7f9e029
hash-sets,hashtables: improved key@ word
...
Don't need to check the length of the backing array because it can be
assumed to be > 0. That should make hash lookups a little faster.
2016-09-25 20:07:08 +02:00
Björn Lindqvist
91f335b424
style thing: indenting tuple slots
2016-05-31 03:37:23 +02:00
John Benediktsson
e7a42b1dc4
sets: rename unordered-set back to set.
2016-03-29 15:46:29 -07:00
Doug Coleman
92afdc3ad0
hashtables: rename ((tombstone)) to +tombstone+, ((empty)) to +empty+
2016-03-25 03:13:27 -07:00
Doug Coleman
28dcd0667a
factor: rename set to unordered-set.
2015-08-12 10:54:19 -05:00
John Benediktsson
1a48f1d229
hash-sets: make sure capacity and growth use same load factor.
2015-07-14 18:35:14 -07:00
John Benediktsson
e1e8383322
hash-sets: need to define M\ hash-set hashcode*.
2015-07-09 08:35:43 -07:00
John Benediktsson
b366a06c41
use reject instead of [ ... not ] filter.
2015-05-12 18:50:34 -07:00
John Benediktsson
aeed8b51d4
hash-sets: faster members.
2014-02-06 22:38:48 -08:00
John Benediktsson
8c07160aa9
hash-sets: simplify <hash-set>.
2014-01-08 09:55:45 -08:00
John Benediktsson
fef1b2fb00
hash-sets: use >= in hash-large?.
2014-01-05 23:09:07 -08:00
John Benediktsson
3d9b1f4adb
hash-sets: inline >hash-set to speed up set operations.
2013-03-26 17:51:59 -07:00
John Benediktsson
1f13eefad2
hash-sets: slightly faster filter-members.
2013-03-26 17:42:41 -07:00
John Benediktsson
daaf090459
hash-sets: faster intersect and diff, when both are hash-sets.
2013-03-26 17:42:40 -07:00
John Benediktsson
ac8473e0ea
hash-sets: faster subset? and set= when both are hash-sets.
2013-03-26 17:42:40 -07:00
John Benediktsson
200e37671f
hash-sets: faster intersects?.
2013-03-26 17:42:40 -07:00
John Benediktsson
92c0faa918
hash-sets: simpler code.
2013-03-26 17:42:40 -07:00
John Benediktsson
5c1d5a049f
hash-sets: implement faster ?adjoin.
2013-03-23 16:58:31 -07:00
John Benediktsson
544e5f81c5
hash-sets: speed up union on two hash-sets.
2013-03-23 14:17:10 -07:00
John Benediktsson
02156a0c0c
Revert "hash-sets: faster M\ hash-set union."
...
This reverts commit bb7a1017f5
.
2013-03-22 22:05:06 -07:00
John Benediktsson
83408fedcd
hash-sets: faster M\ hash-set union.
2013-03-22 21:52:56 -07:00
John Benediktsson
8890bdc19a
hash-sets: faster grow-hash by not calling members.
2013-03-20 23:02:28 -07:00
John Benediktsson
734a987e24
hash-sets: use ?adjoin instead of (all-unique?).
2013-03-11 21:21:44 -07:00
John Benediktsson
7c39f8134b
hash-sets: use push-unsafe from hashtables.private.
2013-03-10 17:08:41 -07:00
John Benediktsson
30bdecd876
hash-sets: back out this change for now.
2013-03-08 17:53:12 -08:00
Doug Coleman
dc395a6b31
hash-sets: Support >alist on hash-sets or else tab-completion breaks. Can we write a unit test for this too?
2013-03-08 17:32:46 -08:00
John Benediktsson
931b5cc9bd
hash-sets: fix help-lint warnings.
2013-03-08 06:15:27 -08:00
John Benediktsson
895c6ca7c5
bootstrap: make sure to rehash hash-sets also.
2013-03-07 22:04:52 -08:00
John Benediktsson
23078f7bd7
hash-sets: reuse (rehash).
2013-03-07 22:02:02 -08:00
John Benediktsson
04af5f2ffb
hash-sets: faster implementation based on hashtables.
2013-03-07 21:43:17 -08:00
John Benediktsson
f46bf3ac5d
sets: adding clear-set.
2013-03-07 18:48:15 -08:00
John Benediktsson
5487480126
core: cleanup USING lists.
2013-03-05 10:34:47 -08:00
John Benediktsson
d62fea3bbc
sets: minor improvements to sequence-as-sets.
2012-08-24 16:37:01 -07:00
John Benediktsson
0f6972b98b
hash-sets: using ?adjoin to implement duplicates, some tests.
2012-05-14 15:47:56 -07:00
John Benediktsson
ca4d5cbde0
hash-sets: speed up diff, intersect, and union.
2012-04-16 10:58:08 -07:00
John Benediktsson
beb5b9bf64
hash-sets: separate <hash-set> and >hash-set to match other containers. Fixes #154 .
2011-10-19 11:35:25 -07:00
John Benediktsson
29f6011817
hash-sets: remove unused import.
2011-09-06 11:26:29 -07:00
John Benediktsson
e8aa41ae57
hash-sets: simpler <hash-set>.
2011-09-03 16:38:42 -07:00
John Benediktsson
f2aa8ec876
hash-sets: initialize hashtable capacity to length of sequence.
2011-09-03 14:46:26 -07:00
John Benediktsson
47faf5f6ae
sets: adding cardinality word.
2010-12-27 19:22:36 -08:00
Daniel Ehrenberg
265fe6208f
Adding null? word to test if a set is empty
2010-04-17 16:25:51 -05:00
Slava Pestov
3e91a7f280
sets: fix performance regression in all-unique? word
2010-04-13 04:43:47 -07:00
Daniel Ehrenberg
67912db5f1
Making <hash-set> faster
2010-03-17 20:12:25 -04:00
Daniel Ehrenberg
1da6ea957a
Fixing bugs with sets, including adding new within and without words
2010-03-16 20:17:26 -04:00
Daniel Ehrenberg
7074979745
Moving new-sets to sets
2010-02-26 16:01:01 -05:00