lean4-htt/src
Henrik Böving 009bcf1a27
perf: optimize fuzzyMatching (#9563)
This PR performs some micro optimizations on fuzzy matching for a `~20%`
instructions win.

The three key changes are:
- try to remove some unnecessary allocations of things such as tuples
- change `containsInOrderLower` to use the efficient `get'` and `next'`
primitives. I hope that we can replace these with iterators on strings
in the second half of this quarter
- Do the same thing as clangd and use `Int16` with the `minValue` being
used for "worst score" while this does have the potential to
over/underflow, if the user is working with a score in the 10000s
something weird is certainly going on already (the score usually seems
to be in the 2 digit area based on some).

As an additional bonus, once we finally have unboxed arrays we will get
some additional cache wins on the 16 bit arrays!
2025-08-01 09:11:15 +00:00
..
bin
cmake
include/lean perf: inline lean_inc_ref_cold (#4978) 2025-06-27 15:58:00 +00:00
Init chore: library style cleanup (#9654) 2025-07-31 21:28:59 +00:00
initialize feat: remove the old compiler (#9275) 2025-07-09 06:00:46 +00:00
kernel perf: add missing std::moves (#9107) 2025-07-01 12:39:12 +00:00
lake fix: lake: use server header for workspace modules (#9559) 2025-08-01 05:08:44 +00:00
Lean perf: optimize fuzzyMatching (#9563) 2025-08-01 09:11:15 +00:00
library chore: remove unused FnBody.mdata constructor (#9564) 2025-07-26 15:20:13 +00:00
runtime fix: handle NUL bytes in IO functions (#9616) 2025-08-01 06:12:53 +00:00
shell
Std chore: library style cleanup (#9654) 2025-07-31 21:28:59 +00:00
util chore: have shell.cpp use library/util.h rather than library/compiler… (#9269) 2025-07-09 01:41:04 +00:00
cadical.mk
CMakeLists.txt chore: disable artifacts cache for building stage2+ (#9482) 2025-07-23 08:44:08 +00:00
config.h.in
githash.h.in
Init.lean chore: module-ize Init.lean 2025-06-29 16:52:13 +02:00
lakefile.toml.in chore: benchmark using USE_LAKE (#9361) 2025-07-17 18:44:29 +00:00
lean-toolchain
Lean.lean refactor: module-ize Lean (#9330) 2025-07-25 12:02:51 +00:00
lean.mk.in
Leanc.lean
Std.lean feat: Upstream MPL.SPred.* from mpl (#8928) 2025-06-26 11:15:11 +00:00
stdlib.make.in chore: benchmark using USE_LAKE (#9361) 2025-07-17 18:44:29 +00:00
stdlib_flags.h
version.h.in