April 6, 2026
Elm meets Go, sparks fly
Sky – an Elm-inspired language that compiles to Go
One file to run it all? Fans swoon, purists squabble
TLDR: Sky is a new Elm-like language that builds your whole app into one Go-powered file. Commenters are split: some love the “one file, no JavaScript fuss” promise, others complain about clunky JavaScript bridges and argue not every functional-language feature is needed, making this a buzzy battleground for simplicity vs. purism.
Meet Sky, a bold mashup that looks like the tidy, safety-first world of Elm but spits out a tiny Go-powered app you can run anywhere — no JavaScript build circus. The dev claims it does back end, front end, and interactive pages in one single file, inspired by LiveView-style server-driven pages (think “the server sends updates over simple browser connections called Server-Sent Events”). It’s self-hosted, weighs ~4MB, and was built at warp speed with AI coding tools like Claude Code. The crowd reaction? Spicy.
Early hype is strong: one fan cheered “everything I’ve ever wanted,” while another simply went “great design!” But the honeymoon got a reality check when a tester called the JavaScript bridge “clunky,” grumbling about awkward string glue. A philosophy fight broke out too: a skeptic argued functional languages don’t need every nerdy extra — like heavy type theory or automatic function chaining — poking at Sky’s Elm DNA. Then came the zinger: “People like everything about Go except the language,” with folks joking that devs want Go’s speed and deployment magic, minus, well… Go.
So yes, Sky’s promise—one codebase, one deploy, one happy dev—is making hearts race. But the thread is a tug-of-war between “ship it now” energy and “don’t copy every textbook trick” caution. Grab popcorn, the repo is here.
Key Points
- •Sky is an experimental functional programming language that compiles to Go to produce a single static binary for full‑stack applications.
- •It combines Elm-inspired features (HM type inference, ADTs, exhaustive pattern matching, pure functions, TEA) with Go’s tooling and ecosystem.
- •Sky’s UI model is server-driven, inspired by Phoenix LiveView, using DOM diffing, session management, and SSE, with no client-side framework or WebSockets required.
- •The toolchain (compiler, CLI, formatter, LSP) is self-hosted in Sky, compiled to a ~4MB native Go binary, with zero Node.js/TypeScript/npm dependencies and multi-generation bootstrapping.
- •Auto-generated FFI provides type-safe interop with Go packages; development was accelerated with AI tools (Gemini CLI, Claude Code), and installation is available via a curl script for macOS/Linux.