style: normalize binding forms from ((...)) to ([...]) across tests and benchmarks

ober

c1563b80c205723f2bf3bb779cab6e58cb977649

diff --git a/benchmarks/bench-core.ss b/benchmarks/bench-core.ss
index a4991b5..895b8b3 100644
--- a/benchmarks/bench-core.ss
+++ b/benchmarks/bench-core.ss
@@ -126,11 +126,11 @@
 
 (bench "for/collect (range 100)" 10000
   (lambda ()
-    (for/collect ((x (in-range 100))) (* x x))))
+    (for/collect ([x (in-range 100)]) (* x x))))
 
 (bench "for/fold (sum range 100)" 100000
   (lambda ()
-    (for/fold ((sum 0)) ((x (in-range 100))) (+ sum x))))
+    (for/fold ([sum 0]) ([x (in-range 100)]) (+ sum x))))
 
 ;; --- Struct operations ---
 
diff --git a/lib/thunderchez/sdl2/ffi.ss b/lib/thunderchez/sdl2/ffi.ss
index 882ed0f..7eef97f 100644
--- a/lib/thunderchez/sdl2/ffi.ss
+++ b/lib/thunderchez/sdl2/ffi.ss
@@ -117,5 +117,5 @@
 						   p))) #'(param ...) #'(var ...) )])
 		     #'(let ([var val] ...)
 			 (let ([result (func var ...)])
-			   (let ((var val2) ...)
+			   (let ([var val2] ...)
 			     body ...)))))])))
diff --git a/tests/test-cage.ss b/tests/test-cage.ss
index fc93321..ae4b904 100644
--- a/tests/test-cage.ss
+++ b/tests/test-cage.ss
@@ -27,7 +27,7 @@
 (displayln "--- config construction ---")
 
 ;; Basic config
-(let ((cfg (make-cage-config 'root: "/tmp")))
+(let ([cfg (make-cage-config 'root: "/tmp")])
   (assert! (cage-config? cfg))
   (assert! (string=? (cage-config-root cfg) "/tmp"))
   (assert! (null? (cage-config-read-only cfg)))
@@ -39,14 +39,14 @@
   (displayln "  basic config: ok"))
 
 ;; Full config
-(let ((cfg (make-cage-config
+(let ([cfg (make-cage-config
              'root: "/home/user/project"
              'read-only: '("/usr/share/man")
              'read-write: '("/var/data")
              'execute: '("/opt/bin")
              'network: #f
              'system-paths: #f
-             'temp-dir: "/var/tmp")))
+             'temp-dir: "/var/tmp")])
   (assert! (string=? "/home/user/project" (cage-config-root cfg)))
   (assert! (equal? '("/usr/share/man") (cage-config-read-only cfg)))
   (assert! (equal? '("/var/data") (cage-config-read-write cfg)))
@@ -57,7 +57,7 @@
   (displayln "  full config: ok"))
 
 ;; Missing 'root: raises error
-(let ((got-error (not #t)))
+(let ([got-error (not #t)])
   (try
     (make-cage-config 'read-only: '("/tmp"))
     (catch (e) (set! got-error #t)))
@@ -65,7 +65,7 @@
   (displayln "  missing root error: ok"))
 
 ;; Unknown keyword raises error
-(let ((got-error (not #t)))
+(let ([got-error (not #t)])
   (try
     (make-cage-config 'root: "/tmp" 'bogus: 42)
     (catch (e) (set! got-error #t)))
@@ -90,7 +90,7 @@
 
 (when (landlock-available?)
   ;; Create a temp directory for the cage root
-  (let ((cage-dir "/tmp/jerboa-cage-test"))
+  (let ([cage-dir "/tmp/jerboa-cage-test"])
     ;; Setup
     (when (file-exists? cage-dir)
       (system (str "rm -rf " cage-dir)))
@@ -98,7 +98,7 @@
     (write-file-string (str cage-dir "/hello.txt") "hello from cage")
 
     ;; Fork and cage the child
-    (let ((pid (fork-process)))
+    (let ([pid (fork-process)])
       (cond
         ((= pid 0)
          ;; === CHILD ===
@@ -120,7 +120,7 @@
            (assert! (string? (cage-root)))
 
            ;; Can read file inside cage
-           (let ((content (read-file-string (str cage-dir "/hello.txt"))))
+           (let ([content (read-file-string (str cage-dir "/hello.txt"))])
              (assert! (string=? content "hello from cage")))
 
            ;; Can write inside cage
@@ -130,19 +130,19 @@
 
            ;; Cannot read outside cage (e.g. /etc/shadow)
            ;; Landlock should block this — we get a permission error
-           (let ((blocked (not #t)))
+           (let ([blocked (not #t)])
              (guard (exn (#t (set! blocked #t)))
                (read-file-string "/etc/shadow"))
              (assert! blocked))
 
            ;; Cannot write outside cage
-           (let ((blocked (not #t)))
+           (let ([blocked (not #t)])
              (guard (exn (#t (set! blocked #t)))
                (write-file-string "/etc/jerboa-cage-escape" "nope"))
              (assert! blocked))
 
            ;; Can still use /tmp (temp-dir)
-           (let ((tmp-file "/tmp/jerboa-cage-tmp-test"))
+           (let ([tmp-file "/tmp/jerboa-cage-tmp-test"])
              (write-file-string tmp-file "tmp works")
              (assert! (string=? (read-file-string tmp-file) "tmp works"))
              (delete-file tmp-file))
@@ -152,9 +152,9 @@
 
         (else
          ;; === PARENT ===
-         (let-values (((wpid status) (waitpid pid)))
-           (let ((exit-code (bitwise-arithmetic-shift-right
-                              (bitwise-and status #xFF00) 8)))
+         (let-values ([(wpid status) (waitpid pid)])
+           (let ([exit-code (bitwise-arithmetic-shift-right
+                              (bitwise-and status #xFF00) 8)])
              (if (= exit-code 0)
                (displayln "  cage! fork test: ok")
                (begin
@@ -173,7 +173,7 @@
 
 (when (capsicum-available?)
   ;; Create a temp directory for the cage root
-  (let ((cage-dir "/tmp/jerboa-cage-test-fb"))
+  (let ([cage-dir "/tmp/jerboa-cage-test-fb"])
     ;; Setup
     (when (file-exists? cage-dir)
       (system (str "rm -rf " cage-dir)))
@@ -181,7 +181,7 @@
     (write-file-string (str cage-dir "/hello.txt") "hello from capsicum cage")
 
     ;; Fork and cage the child
-    (let ((pid (fork-process)))
+    (let ([pid (fork-process)])
       (cond
         ((= pid 0)
          ;; === CHILD ===
@@ -206,7 +206,7 @@
            (assert! (capsicum-in-capability-mode?))
 
            ;; Cannot open new files from global namespace (cap_enter blocks this)
-           (let ((blocked (not #t)))
+           (let ([blocked (not #t)])
              (guard (exn (#t (set! blocked #t)))
                (open-input-file "/etc/passwd"))
              (assert! blocked))
@@ -216,9 +216,9 @@
 
         (else
          ;; === PARENT ===
-         (let-values (((wpid status) (waitpid pid)))
-           (let ((exit-code (bitwise-arithmetic-shift-right
-                              (bitwise-and status #xFF00) 8)))
+         (let-values ([(wpid status) (waitpid pid)])
+           (let ([exit-code (bitwise-arithmetic-shift-right
+                              (bitwise-and status #xFF00) 8)])
              (if (= exit-code 0)
                (displayln "  capsicum cage! fork test: ok")
                (begin
@@ -236,19 +236,19 @@
 (displayln "--- double cage prevention ---")
 
 (when (landlock-available?)
-  (let ((pid (fork-process)))
+  (let ([pid (fork-process)])
     (cond
       ((= pid 0)
        (guard (exn
                 (#t (display "CHILD ERROR: ")
                     (display-condition exn) (newline)
                     (exit 1)))
-         (let ((cage-dir "/tmp/jerboa-cage-test2"))
+         (let ([cage-dir "/tmp/jerboa-cage-test2"])
            (when (file-exists? cage-dir) (system (str "rm -rf " cage-dir)))
            (mkdir cage-dir)
            (cage! (make-cage-config 'root: cage-dir 'temp-dir: "/tmp"))
            ;; Second cage! should raise
-           (let ((got-error (not #t)))
+           (let ([got-error (not #t)])
              (try
                (cage! (make-cage-config 'root: cage-dir 'temp-dir: "/tmp"))
                (catch (e) (set! got-error #t)))
@@ -257,9 +257,9 @@
              (system (str "rm -rf " cage-dir))
              (exit 0)))))
       (else
-       (let-values (((wpid status) (waitpid pid)))
-         (let ((exit-code (bitwise-arithmetic-shift-right
-                            (bitwise-and status #xFF00) 8)))
+       (let-values ([(wpid status) (waitpid pid)])
+         (let ([exit-code (bitwise-arithmetic-shift-right
+                            (bitwise-and status #xFF00) 8)])
            (if (= exit-code 0)
              (displayln "  double cage test: ok")
              (begin
@@ -271,19 +271,19 @@
 
 ;; FreeBSD double-cage prevention
 (when (capsicum-available?)
-  (let ((pid (fork-process)))
+  (let ([pid (fork-process)])
     (cond
       ((= pid 0)
        (guard (exn
                 (#t (display "CHILD ERROR: ")
                     (display-condition exn) (newline)
                     (exit 1)))
-         (let ((cage-dir "/tmp/jerboa-cage-test2-fb"))
+         (let ([cage-dir "/tmp/jerboa-cage-test2-fb"])
            (when (file-exists? cage-dir) (system (str "rm -rf " cage-dir)))
            (mkdir cage-dir)
            (cage! (make-cage-config 'root: cage-dir 'temp-dir: "/tmp"))
            ;; Second cage! should raise
-           (let ((got-error (not #t)))
+           (let ([got-error (not #t)])
              (try
                (cage! (make-cage-config 'root: cage-dir 'temp-dir: "/tmp"))
                (catch (e) (set! got-error #t)))
@@ -291,9 +291,9 @@
              (displayln "  FreeBSD double cage blocked: ok")
              (exit 0)))))
       (else
-       (let-values (((wpid status) (waitpid pid)))
-         (let ((exit-code (bitwise-arithmetic-shift-right
-                            (bitwise-and status #xFF00) 8)))
+       (let-values ([(wpid status) (waitpid pid)])
+         (let ([exit-code (bitwise-arithmetic-shift-right
+                            (bitwise-and status #xFF00) 8)])
            (if (= exit-code 0)
              (displayln "  FreeBSD double cage test: ok")
              (begin
diff --git a/tests/test-expanded-stdlib.ss b/tests/test-expanded-stdlib.ss
index de61a8d..c98f0b1 100644
--- a/tests/test-expanded-stdlib.ss
+++ b/tests/test-expanded-stdlib.ss
@@ -225,8 +225,8 @@
 (chk (when-let (x #f) 42) => (void))
 (chk (if-let (x 10) (* x 2) 0) => 20)
 (chk (if-let (x #f) 42 99) => 99)
-(chk (let ((acc 0)) (dotimes (i 4) (set! acc (+ acc i))) acc) => 6)
-(chk (let ((acc 0)) (dotimes (i 0) (set! acc (+ acc 1))) acc) => 0)
+(chk (let ([acc 0]) (dotimes (i 4) (set! acc (+ acc i))) acc) => 6)
+(chk (let ([acc 0]) (dotimes (i 0) (set! acc (+ acc 1))) acc) => 0)
 
 (display "Expanded stdlib tests: ")
 (display pass-count)
diff --git a/tests/test-native-rust.ss b/tests/test-native-rust.ss
index d7511a7..3a90aab 100644
--- a/tests/test-native-rust.ss
+++ b/tests/test-native-rust.ss
@@ -37,7 +37,7 @@
     (error 'assert-equal msg expected actual)))
 
 (define (assert-error msg thunk)
-  (let ((got-error #f))
+  (let ([got-error #f])
     (guard (e [#t (set! got-error #t)])
       (thunk))
     (unless got-error
diff --git a/tests/test-newer-verify.ss b/tests/test-newer-verify.ss
index 3a67fa9..08078c3 100644
--- a/tests/test-newer-verify.ss
+++ b/tests/test-newer-verify.ss
@@ -60,9 +60,9 @@
 ;; ========== #4 Iterator ==========
 (printf "  #4 iter...~n")
 (import (std iter))
-(check (for/collect ((x (in-range 5))) (* x x)) => '(0 1 4 9 16))
-(check (for/fold ((sum 0)) ((x (in-list '(1 2 3 4)))) (+ sum x)) => 10)
-(check-true (list? (for/collect ((c (in-string "abc"))) c)))
+(check (for/collect ([x (in-range 5)]) (* x x)) => '(0 1 4 9 16))
+(check (for/fold ([sum 0]) ([x (in-list '(1 2 3 4))]) (+ sum x)) => 10)
+(check-true (list? (for/collect ([c (in-string "abc")]) c)))
 
 ;; ========== #5 SRFI-13 ==========
 (printf "  #5 SRFI-13...~n")
diff --git a/tests/test-phase8.ss b/tests/test-phase8.ss
index 5fbb33c..47f60a1 100644
--- a/tests/test-phase8.ss
+++ b/tests/test-phase8.ss
@@ -234,41 +234,41 @@
 
 ;; 42g. for — side-effecting iteration
 (let ([result '()])
-  (for ((x (in-list '(1 2 3))))
+  (for ([x (in-list '(1 2 3))])
     (set! result (cons (* x x) result)))
   (check result => '(9 4 1)))
 
 ;; 42h. for/collect — collect results
-(check (for/collect ((x (in-list '(1 2 3 4 5))))
+(check (for/collect ([x (in-list '(1 2 3 4 5))])
          (* x x))
        => '(1 4 9 16 25))
 
 ;; 42i. for/collect with two iterators
-(check (for/collect ((x (in-list '(1 2 3)))
-                     (y (in-list '(10 20 30))))
+(check (for/collect ([x (in-list '(1 2 3))]
+                     [y (in-list '(10 20 30))])
          (+ x y))
        => '(11 22 33))
 
 ;; 42j. for/fold — accumulate
-(check (for/fold ((acc 0)) ((x (in-list '(1 2 3 4 5))))
+(check (for/fold ([acc 0]) ([x (in-list '(1 2 3 4 5))])
          (+ acc x))
        => 15)
 
 ;; 42k. for/or — first truthy
-(check (for/or ((x (in-list '(1 2 3 4 5))))
+(check (for/or ([x (in-list '(1 2 3 4 5))])
          (and (> x 3) x))
        => 4)
 
 ;; 42l. for/and — all truthy
-(check (for/and ((x (in-list '(2 4 6 8))))
+(check (for/and ([x (in-list '(2 4 6 8))])
          (even? x))
        => #t)
-(check (for/and ((x (in-list '(2 4 5 8))))
+(check (for/and ([x (in-list '(2 4 5 8))])
          (even? x))
        => #f)
 
 ;; 42m. for with in-range
-(check (for/collect ((i (in-range 5)))
+(check (for/collect ([i (in-range 5)])
          (* i i))
        => '(0 1 4 9 16))
 
diff --git a/tests/test-reader.ss b/tests/test-reader.ss
index 84c83d8..0fea5c7 100644
--- a/tests/test-reader.ss
+++ b/tests/test-reader.ss
@@ -9,8 +9,8 @@
 (define-syntax check
   (syntax-rules (=>)
     [(_ expr => expected)
-     (let ((result expr)
-           (exp expected))
+     (let ([result expr]
+           [exp expected])
        (if (equal? result exp)
          (set! pass-count (+ pass-count 1))
          (begin
@@ -72,7 +72,7 @@
 
 ;;; Keywords
 (check (symbol? (read1 "name:")) => #t)
-(check (let ((s (symbol->string (read1 "name:"))))
+(check (let ([s (symbol->string (read1 "name:"))])
          (and (>= (string-length s) 2)
               (string=? (substring s 0 2) "#:")))
        => #t)
@@ -122,7 +122,7 @@
 (check (jerboa-read-string "(a) (b)") => '((a) (b)))
 
 ;;; Source locations (when path is provided)
-(let ((result (car (jerboa-read-string "hello" "test.ss"))))
+(let ([result (car (jerboa-read-string "hello" "test.ss"))])
   (check (annotated-datum? result) => #t)
   (check (annotated-datum-value result) => 'hello)
   (check (source-location-path (annotated-datum-source result)) => "test.ss")
diff --git a/tests/test-security2-parsers.ss b/tests/test-security2-parsers.ss
index 546380d..d878212 100644
--- a/tests/test-security2-parsers.ss
+++ b/tests/test-security2-parsers.ss
@@ -44,7 +44,7 @@
     (error 'assert-equal msg expected actual)))
 
 (define (assert-error msg thunk)
-  (let ((got-error #f))
+  (let ([got-error #f])
     (guard (e [#t (set! got-error #t)])
       (thunk))
     (unless got-error
@@ -57,9 +57,9 @@
 
 (test "base64: valid encode/decode roundtrip"
   (lambda ()
-    (let* ((bv (string->utf8 "Hello, World!"))
-           (encoded (base64-encode bv))
-           (decoded (base64-decode encoded)))
+    (let* ([bv (string->utf8 "Hello, World!")]
+           [encoded (base64-encode bv)]
+           [decoded (base64-decode encoded)])
       (assert-equal "roundtrip" bv decoded))))
 
 (test "base64: invalid character rejected"
@@ -79,7 +79,7 @@
 
 (test "base64: empty string"
   (lambda ()
-    (let ((result (base64-decode "")))
+    (let ([result (base64-decode "")])
       (assert-equal "empty" (make-bytevector 0) result))))
 
 ;;; ============ CSV ============
@@ -87,8 +87,8 @@
 
 (test "csv: normal quoted field"
   (lambda ()
-    (let* ((port (open-input-string "\"hello\",world"))
-           (records (read-csv port)))
+    (let* ([port (open-input-string "\"hello\",world")]
+           [records (read-csv port)])
       (assert-equal "parsed" '(("hello" "world")) records))))
 
 (test "csv: unterminated quote rejected (strict)"
@@ -96,20 +96,20 @@
     (assert-error "should reject unterminated"
       (lambda ()
         (parameterize ((*csv-strict-quotes* #t))
-          (let ((port (open-input-string "\"hello")))
+          (let ([port (open-input-string "\"hello\")])
             (read-csv port)))))))
 
 (test "csv: unterminated quote accepted (permissive)"
   (lambda ()
     (parameterize ((*csv-strict-quotes* #f))
-      (let* ((port (open-input-string "\"hello"))
-             (records (read-csv port)))
+      (let* ([port (open-input-string "\"hello")]
+             [records (read-csv port)])
         (assert-true "got result" (list? records))))))
 
 (test "csv: escaped quotes"
   (lambda ()
-    (let* ((port (open-input-string "\"he\"\"llo\",world"))
-           (records (read-csv port)))
+    (let* ([port (open-input-string "\"he\"\"llo\",world")]
+           [records (read-csv port)])
       (assert-equal "escaped" '(("he\"llo" "world")) records))))
 
 ;;; ============ Hex ============
@@ -117,9 +117,9 @@
 
 (test "hex: valid encode/decode roundtrip"
   (lambda ()
-    (let* ((bv #vu8(1 2 255 0 128))
-           (encoded (hex-encode bv))
-           (decoded (hex-decode encoded)))
+    (let* ([bv #vu8(1 2 255 0 128)]
+           [encoded (hex-encode bv)]
+           [decoded (hex-decode encoded)])
       (assert-equal "roundtrip" bv decoded))))
 
 (test "hex: odd-length rejected"
@@ -139,7 +139,7 @@
 
 (test "hex: empty string"
   (lambda ()
-    (let ((result (hex-decode "")))
+    (let ([result (hex-decode "")])
       (assert-equal "empty" (make-bytevector 0) result))))
 
 ;;; ============ JSON ============
@@ -147,12 +147,12 @@
 
 (test "json: normal parse"
   (lambda ()
-    (let ((obj (string->json-object "{\"key\":\"value\"}")))
+    (let ([obj (string->json-object "{\"key\":\"value\"}")])
       (assert-true "is hashtable" (hashtable? obj)))))
 
 (test "json: array parse"
   (lambda ()
-    (let ((arr (string->json-object "[1,2,3]")))
+    (let ([arr (string->json-object "[1,2,3]")])
       (assert-equal "array" '(1 2 3) arr))))
 
 (test "json: depth limit exceeded"
@@ -169,7 +169,7 @@
 (test "json: depth limit - valid depth passes"
   (lambda ()
     (parameterize ((*json-max-depth* 10))
-      (let ((result (string->json-object "[[1]]")))
+      (let ([result (string->json-object "[[1]]")])
         (assert-true "parsed" (list? result))))))
 
 (test "json: string length limit"
@@ -185,21 +185,21 @@
 
 (test "safe-printf: no directive processing"
   (lambda ()
-    (let ((port (open-output-string)))
+    (let ([port (open-output-string)])
       (parameterize ((current-output-port port))
         (safe-printf "hello ~a world"))
       (assert-equal "literal" "hello ~a world" (get-output-string port)))))
 
 (test "safe-printf: with extra args"
   (lambda ()
-    (let ((port (open-output-string)))
+    (let ([port (open-output-string)])
       (parameterize ((current-output-port port))
         (safe-printf "value: " 42))
       (assert-equal "concat" "value: 42" (get-output-string port)))))
 
 (test "safe-fprintf: to port"
   (lambda ()
-    (let ((port (open-output-string)))
+    (let ([port (open-output-string)])
       (safe-fprintf port "~a test ~s" " extra")
       (assert-equal "literal" "~a test ~s extra" (get-output-string port)))))
 
@@ -208,7 +208,7 @@
 
 (test "reader: normal s-expression"
   (lambda ()
-    (let ((result (jerboa-read-string "(+ 1 2)")))
+    (let ([result (jerboa-read-string "(+ 1 2)")])
       (assert-equal "parsed" '((+ 1 2)) result))))
 
 (test "reader: depth limit exceeded"
@@ -225,7 +225,7 @@
 (test "reader: depth limit - valid depth passes"
   (lambda ()
     (parameterize ((*max-read-depth* 10))
-      (let ((result (jerboa-read-string "((x))")))
+      (let ([result (jerboa-read-string "((x))")])
         (assert-true "parsed" (list? result))))))
 
 (test "reader: block comment depth limit"
@@ -239,7 +239,7 @@
 
 (test "reader: normal block comment"
   (lambda ()
-    (let ((result (jerboa-read-string "#| comment |# 42")))
+    (let ([result (jerboa-read-string "#| comment |# 42")])
       (assert-equal "after comment" '(42) result))))
 
 ;;; ============ XML ============
@@ -247,22 +247,22 @@
 
 (test "xml: normal serialization"
   (lambda ()
-    (let ((port (open-output-string)))
+    (let ([port (open-output-string)])
       (write-xml '(div (p "hello")) port)
       (assert-true "has content" (> (string-length (get-output-string port)) 0)))))
 
 (test "xml: depth limit exceeded"
   (lambda ()
     ;; Build a deeply nested SXML tree
-    (let ((deep-tree
-            (let loop ((depth 0) (inner "leaf"))
+    (let ([deep-tree
+            (let loop ([depth 0] [inner "leaf"])
               (if (>= depth 600)
                 inner
-                (loop (+ depth 1) (list 'div inner))))))
+                (loop (+ depth 1) (list 'div inner))))])
       (assert-error "should reject deep tree"
         (lambda ()
           (parameterize ((*sxml-max-depth* 100))
-            (let ((port (open-output-string)))
+            (let ([port (open-output-string)])
               (write-xml deep-tree port))))))))
 
 ;;; ============ Schema ============
@@ -281,8 +281,8 @@
 
 (test "dns: encode/decode name roundtrip"
   (lambda ()
-    (let* ((encoded (dns-encode-name "www.example.com"))
-           (decoded (dns-decode-name encoded 0)))
+    (let* ([encoded (dns-encode-name "www.example.com")]
+           [decoded (dns-decode-name encoded 0)])
       (assert-equal "name" "www.example.com" (car decoded)))))
 
 (test "dns: decode response too short"
@@ -308,10 +308,10 @@
 
 (test "ws: encode/decode roundtrip"
   (lambda ()
-    (let* ((payload (string->utf8 "hello"))
-           (frame (ws-text-frame payload))
-           (encoded (ws-frame-encode frame))
-           (decoded (ws-frame-decode encoded)))
+    (let* ([payload (string->utf8 "hello")]
+           [frame (ws-text-frame payload)]
+           [encoded (ws-frame-encode frame)]
+           [decoded (ws-frame-decode encoded)])
       (assert-equal "payload" payload (ws-frame-payload decoded)))))
 
 (test "ws: too short for header"
@@ -337,7 +337,7 @@
 
 (test "pregexp: normal match"
   (lambda ()
-    (let ((result (pregexp-match "hello" "hello world")))
+    (let ([result (pregexp-match "hello" "hello world")])
       (assert-true "matched" (and result (string=? (car result) "hello"))))))
 
 (test "pregexp: backtracking limit"
@@ -350,7 +350,7 @@
 
 (test "pregexp: normal pattern within budget"
   (lambda ()
-    (let ((result (pregexp-match "a+" "aaa")))
+    (let ([result (pregexp-match "a+" "aaa")])
       (assert-true "matched" (and result (string=? (car result) "aaa"))))))
 
 ;;; ============ Summary ============
diff --git a/tests/test-slang-wasm.ss b/tests/test-slang-wasm.ss
index 303d90c..2201663 100644
--- a/tests/test-slang-wasm.ss
+++ b/tests/test-slang-wasm.ss
@@ -17,8 +17,8 @@
 (define-syntax check
   (syntax-rules (=>)
     [(_ expr => expected)
-     (let ((result expr)
-           (exp expected))
+     (let ([result expr]
+           [exp expected])
        (if (equal? result exp)
          (set! pass-count (+ pass-count 1))
          (begin
@@ -34,7 +34,7 @@
 (define-syntax check-pred
   (syntax-rules ()
     [(_ pred expr)
-     (let ((result expr))
+     (let ([result expr])
        (if (pred result)
          (set! pass-count (+ pass-count 1))
          (begin
diff --git a/tests/test-slang.ss b/tests/test-slang.ss
index 2af9910..f528860 100644
--- a/tests/test-slang.ss
+++ b/tests/test-slang.ss
@@ -13,8 +13,8 @@
 (define-syntax check
   (syntax-rules (=>)
     [(_ expr => expected)
-     (let ((result expr)
-           (exp expected))
+     (let ([result expr]
+           [exp expected])
        (if (equal? result exp)
          (set! pass-count (+ pass-count 1))
          (begin
@@ -30,7 +30,7 @@
 (define-syntax check-pred
   (syntax-rules ()
     [(_ pred expr)
-     (let ((result expr))
+     (let ([result expr])
        (if (pred result)
          (set! pass-count (+ pass-count 1))
          (begin
diff --git a/tests/test-string-compat.ss b/tests/test-string-compat.ss
index d0555f2..5acb172 100644
--- a/tests/test-string-compat.ss
+++ b/tests/test-string-compat.ss
@@ -14,8 +14,8 @@
 (define-syntax check
   (syntax-rules (=>)
     ((_ name expr => expected)
-     (let ((result (guard (exn [else (list 'error exn)])
-                     expr)))
+     (let ([result (guard (exn [else (list 'error exn)])
+                     expr)])
        (cond
          ((equal? result expected)
           (set! pass-count (+ pass-count 1)))
@@ -63,27 +63,27 @@
 (display "--- std/srfi/srfi-19 (re-exports) ---\n")
 
 ;; time-second (Chez built-in, now re-exported from srfi-19)
-(let ((t (make-time 'time-utc 0 42)))
+(let ([t (make-time 'time-utc 0 42)])
   (check "time-second" (time-second t) => 42))
 
 ;; time-nanosecond (Chez built-in, now re-exported from srfi-19)
-(let ((t (make-time 'time-utc 123456789 0)))
+(let ([t (make-time 'time-utc 123456789 0)])
   (check "time-nanosecond" (time-nanosecond t) => 123456789))
 
 ;; date-week-day (Chez built-in, now re-exported from srfi-19)
 ;; 2024-01-15 is a Monday = 1
-(let ((d (make-date 0 0 0 0 15 1 2024 0)))
+(let ([d (make-date 0 0 0 0 15 1 2024 0)])
   (check "date-week-day" (date-week-day d) => 1))
 
 ;; time-difference still works
-(let* ((t1 (make-time 'time-utc 0 100))
-       (t2 (make-time 'time-utc 0 200))
-       (diff (time-difference t2 t1)))
+(let* ([t1 (make-time 'time-utc 0 100)]
+       [t2 (make-time 'time-utc 0 200)]
+       [diff (time-difference t2 t1)])
   (check "time-difference" (time-second diff) => 100))
 
 ;; date->time-utc + time-second round-trip
-(let* ((d (make-date 0 0 30 10 15 1 2024 0))
-       (t (date->time-utc d)))
+(let* ([d (make-date 0 0 30 10 15 1 2024 0)]
+       [t (date->time-utc d)])
   (check "date->time-utc" (> (time-second t) 0) => #t))
 
 ;;; ========================================================================
diff --git a/tests/test-yaml-roundtrip.ss b/tests/test-yaml-roundtrip.ss
index b60046f..be542ee 100644
--- a/tests/test-yaml-roundtrip.ss
+++ b/tests/test-yaml-roundtrip.ss
@@ -133,7 +133,7 @@
   => '(("msg" . "hello\nworld")))
 
 (test "empty value"
-  (let ((result (yaml-load-string "key:")))
+  (let ([result (yaml-load-string "key:")])
     (and (pair? result)
          (string=? (caar result) "key")
          (eq? (cdar result) (void))))