March 19, 2026

Hold the curry, bring the chaos

A Preview of Coalton 0.2

Coalton 0.2 swaps “curry” tricks for clearer, faster code — fans cheer, purists squirm

TLDR: Coalton 0.2 is replacing its curried function style with fixed-arity calls for clearer APIs, better errors, and future features like named arguments. One top commenter applauds the move as bug-killing pragmatism, while the wider vibe teases a split between clarity-loving shippers and nostalgic functional purists.

Coalton just pulled a menu switch: the upcoming 0.2 release ditches “curried” functions (the one-argument-at-a-time trick) for fixed-arity calls (you must pass all the arguments). Translation for non-programmers: fewer gotchas, clearer errors, and room for handy extras like named and optional parameters. The devs say it makes APIs feel more natural and stops accidental half-baked calls. As a flex, they even show Coalton proving a spicy little math identity exactly — yes, the “√2 plus √3” thing — like a teacher slapping chalk on a blackboard.

The comment spotlight? arn3n cheering loudly: currying is “cool on paper” but causes bugs, and they’d rather be forced to pass everything up front and only make partials on purpose. That vibe — less magic, more muscle — became the unofficial mood. Still, the drama writes itself: some functional-programming romantics see this as Coalton shedding a piece of its soul, while pragmatists call it the glow-up the language needs to ship real products. The meme brigade had a field day: “No more curry — just combo meals,” “Kebab > Curry,” and “From pipe dreams to real pipes.” Love it or hate it, the headline is clear: Coalton’s betting on clarity over cleverness, and the community’s tasting the new recipe with equal parts relief and nostalgia.

Key Points

  • Coalton previewed major changes for version 0.2, notably switching from curried to fixed-arity functions.
  • Fixed arity enables more natural APIs, better type errors, less implicit closure allocation, and supports optional/keyword arguments.
  • Previously, Coalton used Haskell-style arrow-chain types allowing partial application; this was central to its identity.
  • Under fixed arity, function types use syntax like Num :t => :t * :t * :t -> :t, where * binds to -> as part of the function type.
  • The team plans to showcase exact reasoning capabilities, including proving an algebraic identity involving nested square roots.

Hottest takes

"Currying is cool on paper, but it causes bugs" — arn3n
"I’d rather they enforce all parameters be provided" — arn3n
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.