Posted Stratum announcement on Hackernews, would be cool if you could upvote and engage https://news.ycombinator.com/item?id=47282073
Next try: https://news.ycombinator.com/item?id=47357141 Please vote up if you can!
if you are trouncing DuckDB you gotta put that in the title bro
https://github.com/replikativ/superficie — surface syntax for Clojure During my PhD (in ML) I worked in Clojure while everyone around me used Python. Whenever I tried to show my code in a presentation, a paper, or a whiteboard session I'd lose people at the parentheses immediately. Not because S-exps are bad, but because you can't expect someone to read them on the fly when they've never seen them before. That initial unfamiliarity takes a few days to overcome, but a few days is infinity when you're in a meeting. Superficie is a bidirectional renderer that translates Clojure into syntax that Python/Julia/TypeScript developers can already read:
;; Clojure ;; Superficie
(defn process-users [users] defn process-users(users):
(->> users users
(filter :active) |> filter(:active)
(map :name) |> map(:name)
(sort) |> sort()
(take 10))) |> take(10)
end
It's not a new language - there's no separate runtime or ecosystem. You write Clojure as normal. When you need to show it to someone outside the Clojure world, you render it. The translation is automatic, bidirectional, and roundtrips cleanly (`.clj` → .sup → .clj).
It can also serve as a gentle on-ramp: shown side-by-side with Clojure, superficie helps newcomers build S-expression fluency naturally instead of being blocked by unfamiliar syntax.
Tested across 17 real-world projects (core.async, Datahike, Onyx, Malli, Clara Rules, ...) with 98% of files roundtripping cleanly. Includes a highlight.js plugin and an interactive side-by-side demo.
https://github.com/replikativ/superficie https://replikativ.github.io/superficie/examples/side-by-side.html