Avatar for the kelsos user
kelsos
plainfp
BlogDocsChangelog

test: add integration suite covering cross-module compositions

#12Merged
Comparing
test/integration-suite
(
003916b
) with
main
(
5153437
)
CodSpeed Performance Gauge
0%
Untouched
48

Benchmarks

48 total
manual: i(h(g(f(x))))
packages/plainfp/src/pipe.bench.ts::pipe vs manual chaining
CodSpeed Performance Gauge
0%
12.8 µs12.8 µs
handwritten reduce (small)
packages/plainfp/src/records/transform.bench.ts::Records.mapValues vs handwritten reduce
CodSpeed Performance Gauge
0%
15.1 µs15.1 µs
Records.mapValues (small)
packages/plainfp/src/records/transform.bench.ts::Records.mapValues vs handwritten reduce
CodSpeed Performance Gauge
0%
28.5 µs28.4 µs
keep none
packages/plainfp/src/records/transform.bench.ts::Records.filter (medium)
CodSpeed Performance Gauge
0%
391.6 µs391.6 µs
map over ok
packages/plainfp/src/result/transform.bench.ts::Result.map — ok vs err paths
CodSpeed Performance Gauge
0%
37.6 µs37.6 µs
handwritten reduce (medium)
packages/plainfp/src/records/transform.bench.ts::Records.mapValues vs handwritten reduce
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
map over some
packages/plainfp/src/option/transform.bench.ts::Option.map — some vs none paths
CodSpeed Performance Gauge
0%
37.6 µs37.6 µs
curried map(fn)(xs) — closure allocated per call
packages/plainfp/src/arrays/transform.bench.ts::dual-API cost — data-first vs curried
CodSpeed Performance Gauge
0%
1 ms1 ms
keep roughly half
packages/plainfp/src/records/transform.bench.ts::Records.filter (medium)
CodSpeed Performance Gauge
0%
577.8 µs577.8 µs
rename prefix
packages/plainfp/src/records/transform.bench.ts::Records.mapKeys (medium)
CodSpeed Performance Gauge
0%
2.1 ms2.1 ms
Records.entries
packages/plainfp/src/records/access.bench.ts::Records.{keys, values, entries} vs native
CodSpeed Performance Gauge
0%
123 µs123 µs
plainfp Arrays.filter
packages/plainfp/src/arrays/transform.bench.ts::Arrays.filter vs native
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
curried map(fn)(xs) — closure reused
packages/plainfp/src/arrays/transform.bench.ts::dual-API cost — data-first vs curried
CodSpeed Performance Gauge
0%
628.2 µs628.2 µs
data-first map(xs, fn)
packages/plainfp/src/arrays/transform.bench.ts::dual-API cost — data-first vs curried
CodSpeed Performance Gauge
0%
779.2 µs779.2 µs
try/catch chain (5 deep, no throw)
packages/plainfp/src/result/transform.bench.ts::Result.map vs throw/catch
CodSpeed Performance Gauge
0%
12 µs12 µs
native property access
packages/plainfp/src/records/access.bench.ts::Records.get vs native property access
CodSpeed Performance Gauge
0%
11.9 µs11.9 µs
manual: chained const
packages/plainfp/src/pipe.bench.ts::pipe vs manual chaining
CodSpeed Performance Gauge
0%
12.8 µs12.8 µs
flatMap 5 deep, early none
packages/plainfp/src/option/transform.bench.ts::Option.flatMap pipeline
CodSpeed Performance Gauge
0%
17.6 µs17.6 µs
filter predicate passes
packages/plainfp/src/option/transform.bench.ts::Option.filter
CodSpeed Performance Gauge
0%
14 µs14 µs
map over ok
packages/plainfp/src/result-async/transform.bench.ts::ResultAsync.map — ok vs err paths
CodSpeed Performance Gauge
0%
32.5 µs32.5 µs
flatMap 5 deep, some path
packages/plainfp/src/option/transform.bench.ts::Option.flatMap pipeline
CodSpeed Performance Gauge
0%
18.8 µs18.8 µs
map over none (short-circuit)
packages/plainfp/src/option/transform.bench.ts::Option.map — some vs none paths
CodSpeed Performance Gauge
0%
13.4 µs13.4 µs
pipe(x, f, g, h, i)
packages/plainfp/src/pipe.bench.ts::pipe vs manual chaining
CodSpeed Performance Gauge
0%
24.6 µs24.6 µs
ResultAsync.map chain (5 deep, all ok)
packages/plainfp/src/result-async/transform.bench.ts::ResultAsync.map vs bare Promise.then
CodSpeed Performance Gauge
0%
31.8 µs31.8 µs
native [].map (medium)
packages/plainfp/src/arrays/transform.bench.ts::Arrays.map vs native
CodSpeed Performance Gauge
0%
1 ms1 ms

Commits

Click on a commit to change the comparison range
Base
main
5153437
+0.01%
test: add integration suite covering cross-module compositions
003916b
4 days ago
by kelsos
© 2026 CodSpeed Technology
Home Terms Privacy Docs