let -> let* with destructuring pre-expanded via destructure (now exposed as a clojure.core fn, which it is in Clojure too) so the compiler sees plain bindings — analyze-bindings rejects patterns as uncompilable. loop -> loop* with raw bindings, matching the prior Janet macro: loop can't pre-destructure without breaking recur arity, so the interpreter handles pattern loops and the compiler falls back. conformance 228x3, fixpoint, clojure-test-suite 3930. |
||
|---|---|---|
| .. | ||
| clojure/core | ||
| jolt | ||