From 9222fb5bc8a15646ecfa6657689899d7aa107f9a Mon Sep 17 00:00:00 2001 From: Michael Schimmel Date: Sat, 21 Feb 2026 15:16:36 +0100 Subject: [PATCH] Update benchmark results The benchmark results in several example files have been updated. This commit reflects slight variations in performance measurements for various test cases, including closure scope, data structures, destructuring, higher-order functions, macros, and tuple operations. --- examples/closure.myc | 4 ++-- examples/data.myc | 2 +- examples/destructuring.myc | 4 ++-- examples/extreme_capture.myc | 4 ++-- examples/fib.myc | 2 +- examples/hof.myc | 4 ++-- examples/macro_financial.myc | 4 ++-- examples/macro_hygiene.myc | 4 ++-- examples/macro_power.myc | 4 ++-- examples/macro_splice.myc | 4 ++-- examples/macro_unless.myc | 4 ++-- examples/record_to_tuple.myc | 4 ++-- examples/record_unpack.myc | 4 ++-- examples/tak.myc | 2 +- examples/tuples.myc | 4 ++-- 15 files changed, 27 insertions(+), 27 deletions(-) diff --git a/examples/closure.myc b/examples/closure.myc index ee402b2..f2851a8 100644 --- a/examples/closure.myc +++ b/examples/closure.myc @@ -1,6 +1,6 @@ ;; Closure Scope Test -;; Benchmark: 780ns -;; Benchmark-Repeat: 2602 +;; Benchmark: 777ns +;; Benchmark-Repeat: 2659 ;; Output: 15 (do (def make-adder (fn [x] diff --git a/examples/data.myc b/examples/data.myc index 24d0cb2..2458c01 100644 --- a/examples/data.myc +++ b/examples/data.myc @@ -1,5 +1,5 @@ ;; Complex Data Structure Test -;; Benchmark: 52.9us +;; Benchmark: 53.1us ;; Benchmark-Repeat: 39 ;; Output: {:name "Fibonacci", :input 10, :output 55} (do diff --git a/examples/destructuring.myc b/examples/destructuring.myc index 25e3177..de64fa7 100644 --- a/examples/destructuring.myc +++ b/examples/destructuring.myc @@ -1,5 +1,5 @@ -;; Benchmark: 2.6us -;; Benchmark-Repeat: 788 +;; Benchmark: 2.3us +;; Benchmark-Repeat: 880 ;; Comprehensive Destructuring Test ;; Covers: Nested tuples, mixed params, dynamic passing diff --git a/examples/extreme_capture.myc b/examples/extreme_capture.myc index d600a76..f653655 100644 --- a/examples/extreme_capture.myc +++ b/examples/extreme_capture.myc @@ -1,5 +1,5 @@ -;; Benchmark: 1.8us -;; Benchmark-Repeat: 1103 +;; Benchmark: 1.7us +;; Benchmark-Repeat: 1198 ;; Output: 36 (do ;; Excessive capture test diff --git a/examples/fib.myc b/examples/fib.myc index 1a6bf14..a0f9bc2 100644 --- a/examples/fib.myc +++ b/examples/fib.myc @@ -1,5 +1,5 @@ ;; Fibonacci Recursive -;; Benchmark: 52.7us +;; Benchmark: 52.5us ;; Benchmark-Repeat: 38 ;; Output: 55 (do diff --git a/examples/hof.myc b/examples/hof.myc index 0c81837..d7676fc 100644 --- a/examples/hof.myc +++ b/examples/hof.myc @@ -1,6 +1,6 @@ ;; Higher-Order Function Example -;; Benchmark: 725ns -;; Benchmark-Repeat: 2768 +;; Benchmark: 680ns +;; Benchmark-Repeat: 2981 ;; Output: 25 (do (def apply (fn [f x] (f x))) diff --git a/examples/macro_financial.myc b/examples/macro_financial.myc index e8bed14..768b8d7 100644 --- a/examples/macro_financial.myc +++ b/examples/macro_financial.myc @@ -1,5 +1,5 @@ -;; Benchmark: 484ns -;; Benchmark-Repeat: 4144 +;; Benchmark: 462ns +;; Benchmark-Repeat: 4348 ;; Financial DSL Macro example ;; Demonstrates generating complex records from simple parameters. ;; Output: {:price 100, :size 2, :total 200} diff --git a/examples/macro_hygiene.myc b/examples/macro_hygiene.myc index 4db70fb..5e6715e 100644 --- a/examples/macro_hygiene.myc +++ b/examples/macro_hygiene.myc @@ -1,5 +1,5 @@ -;; Benchmark: 448ns -;; Benchmark-Repeat: 4488 +;; Benchmark: 350ns +;; Benchmark-Repeat: 5767 ;; Output: 5 (do (def y 1) diff --git a/examples/macro_power.myc b/examples/macro_power.myc index e0ac61a..18479dd 100644 --- a/examples/macro_power.myc +++ b/examples/macro_power.myc @@ -1,5 +1,5 @@ -;; Benchmark: 429ns -;; Benchmark-Repeat: 4712 +;; Benchmark: 376ns +;; Benchmark-Repeat: 5359 ;; Nested Macro and Arithmetic example ;; Output: 81 diff --git a/examples/macro_splice.myc b/examples/macro_splice.myc index 893aeff..5369053 100644 --- a/examples/macro_splice.myc +++ b/examples/macro_splice.myc @@ -1,5 +1,5 @@ -;; Benchmark: 320ns -;; Benchmark-Repeat: 6238 +;; Benchmark: 277ns +;; Benchmark-Repeat: 7185 ;; Macro Splicing example ;; Demonstrates unrolling a list into another list. ;; Output: [0 1 2 3 4] diff --git a/examples/macro_unless.myc b/examples/macro_unless.myc index 6584678..14d98e8 100644 --- a/examples/macro_unless.myc +++ b/examples/macro_unless.myc @@ -1,5 +1,5 @@ -;; Benchmark: 209ns -;; Benchmark-Repeat: 9540 +;; Benchmark: 177ns +;; Benchmark-Repeat: 11587 ;; Classic "unless" macro example ;; Demonstrates simple template substitution. ;; Output: 42 diff --git a/examples/record_to_tuple.myc b/examples/record_to_tuple.myc index bffc631..8b1135a 100644 --- a/examples/record_to_tuple.myc +++ b/examples/record_to_tuple.myc @@ -1,7 +1,7 @@ ;; Record to Tuple Mapping Test ;; Output: 30 -;; Benchmark: 755ns -;; Benchmark-Repeat: 2652 +;; Benchmark: 743ns +;; Benchmark-Repeat: 2733 (do (def rec {:x 10 :y 20}) diff --git a/examples/record_unpack.myc b/examples/record_unpack.myc index d721f35..19fae1e 100644 --- a/examples/record_unpack.myc +++ b/examples/record_unpack.myc @@ -2,8 +2,8 @@ ;; This test calls a function that destructures a record ;; Current implementation is now zero-allocation for destructuring. ;; Output: 3 -;; Benchmark: 775ns -;; Benchmark-Repeat: 2587 +;; Benchmark: 723ns +;; Benchmark-Repeat: 2783 (do (def process (fn [[x y]] (+ x y))) diff --git a/examples/tak.myc b/examples/tak.myc index b358785..5ba52e5 100644 --- a/examples/tak.myc +++ b/examples/tak.myc @@ -2,7 +2,7 @@ ;; heavily recursive, benefits significantly from specialization of integer arithmetic ;; and direct function calls (skipping dynamic dispatch). ;; Output: 5 - ;; Benchmark: 461.4us + ;; Benchmark: 471.9us ;; Benchmark-Repeat: 6 (do diff --git a/examples/tuples.myc b/examples/tuples.myc index 70897dd..0e5d1ab 100644 --- a/examples/tuples.myc +++ b/examples/tuples.myc @@ -1,5 +1,5 @@ -;; Benchmark: 1.7us -;; Benchmark-Repeat: 1196 +;; Benchmark: 1.9us +;; Benchmark-Repeat: 1061 ;; Demonstration of N-dimensional Tuples, Vectors, and Matrices ;; Based on docs/Tupel 1.md ;;