Files
RustAst/examples/tak.myc
T
Michael Schimmel 9072cfaa14 Update benchmark timings and repeats
This commit updates the benchmark timings and repeat counts for various
example files. The `tester.rs` script has been modified to:

- Correctly parse and use the `Benchmark-Repeat` directive.
- Implement an adaptive sampling mechanism for more accurate median
  calculation, especially for long-running benchmarks.
- Improve the logic for updating and inserting benchmark and repeat
  lines in example files.
- Handle potential compilation and runtime errors during benchmark
  execution.
2026-02-20 17:11:13 +01:00

18 lines
420 B
Plaintext

;; Takeuchi Function Benchmark
;; heavily recursive, benefits significantly from specialization of integer arithmetic
;; and direct function calls (skipping dynamic dispatch).
;; Output: 5
;; Benchmark: 461.4us
;; Benchmark-Repeat: 6
(do
(def tak (fn [x y z]
(if (<= x y)
z
(tak (tak (- x 1) y z)
(tak (- y 1) z x)
(tak (- z 1) x y)))))
(tak 12 8 4)
)