summaryrefslogtreecommitdiff
path: root/benchmarks
AgeCommit message (Collapse)Author
6 daysAdd benchmarks for Ruby, Python and ClojurePeter Bex
Ruby is about the same speed as slets. Clojure (babashka) and Python are goddamn fast. Python is 10 times as fast. Clojure is twice as slow as Python but that still outperforms Ruby and slsets.
6 daysDisable interruptsPeter Bex
Doesn't do that much, but it's a good idea for slsets as well because it makes it unlikely that plist changes are ever observed, because there's no thread switching.
6 daysAdd custom hash table implementation to compare direct hash-table-as-setPeter Bex
This uses hash-tables directly instead of creating the hash table from the lset every time. It's faster than using srfi-69 because it can be inlined better.
6 daysAdd hacky cache for symbol hashPeter Bex
Makes a bit of an impact - about 20% faster
6 daysInitial implementation of slsets eggPeter Bex
This implements sets of symbols *as lists*, like in the srfi-1 lset operations. It maintains the benefit of using lists for everything, but not having to pay the quadratic performance penalty that srfi-1 entails. We achieve this by using plist operations to "mark" items so we have to visit the list "set" only a fixed number of times.