parse-atom emitted (not (parse-expr)) which let or/and capture the whole RHS before `not` could bind. Also emitted SX `not` which treats only nil/ false as falsy, so `not 0` returned false. Fix: `not` now emits `(hs-falsy? (parse-atom))` — tight binding to the following atom, and hyperscript-style truthy/falsy (0, "", nil, false, []). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
105 KiB
105 KiB