TLDR
Phel 0.36.0 adds exact rationals, BigInteger/BigDecimal, first-class Vars with watches/redefs, and new value types to this Clojure-flavored Lisp-on-PHP compiler.
Key Takeaways
Numeric tower : 1/2 ratio literals, BigInteger with overflow auto-promotion, BigDecimal with M-suffix literals; arithmetic dispatches correctly across all types.
First-class Vars : (var sym) / #'sym reader macro; alter-var-root, with-redefs, add-watch/remove-watch, dynamic binding via with-bindings.
New value types : Uuid, PhpClass, MapEntry, and persistent Queue (amortized O(1) push/peek/pop) all added to Phel\Lang.
Breaking changes : (/ int int) now returns Rational; binding throws on non-^:dynamic vars; old var/var?/set! atom aliases removed.
Performance : REPL and test boot prune vendor//.git//node_modules/ and memoize directory scans; --last-failed and --slowest=N test flags added.
Hacker News Comment Review
Minimal substantive technical discussion; commenters largely affirmed the release quality and praised the Clojure-inspired design direction.
The Clojure lineage prompted a brief thread noting “inspired by Scheme” and “inspired by CL” as equivalent quality signals, with no dissent.
Notable Comments
@Chemaclass : Concise author summary confirming UUID, Queue, MapEntry, exact rationals, first-class Vars, and faster REPL/test boot as the headline changes.
Original | Discuss on HN
← Previous
Truth Social lays bare narrow obsessions of an online president
Random ↺
Next →
Bliss (Photograph)