1SubML: Plan vs Reality — spine constructors replace PolySubML dreams

A pivot born of a hard lesson
It has been reported that the author of 1SubML has released the language and posted a detailed "plan vs reality" retrospective. The headline change: PolySubML-style structural polymorphism was abandoned in favor of spine constructors — think nominal on the polymorphic bits, structural everywhere else. Why the about-face? Because, allegedly, PolySubML proved unsound in corner cases, violating the writeable types property. Ouch. That moment — realizing your previous foundation is broken — is the emotional pivot of the story. Back to the drawing board, but with clearer guardrails.
What spine constructors mean in practice
Spine constructors force exact matches for the polymorphic portions of types. So while [T]. T -> (T, int) can still be a subtype of [T]. T -> (T, any), the more ambitious [T]. T -> (T, T) is no longer compatible with [T]. T -> (T, any). The author notes you can use an explicit subsumption operator (:>) to convert between structurally compatible polymorphic types, since implicit subtyping no longer covers that ground. Short version: more explicit conversions, fewer surprise subtyping relationships. Less magic. More predictable.
Existentials, modules and the new trade-offs
That shift rippled outward. Existential destructuring — the PolySubML trick of pattern-matching type fields in records — has been removed, it has been reported. Instead, 1SubML uses a mod-style binding to pin existential types, and creating existential records now requires the subsumption operator. Many features planned originally only made sense with full structural polymorphism; they had to be rethought or dropped. It’s a classic language-design trade: ergonomics versus soundness. Pick one, tidy up the other.
This is a tidy, pragmatic rewrite rather than a total reinvention. The post promises more notes on struct syntax and other smaller changes; readers who liked the original PolySubML vision may be disappointed — but language designers choosing safety over subtle unsoundness is a comforting trend. Want to poke at the technical details? The author lays them out for the curious and the picky.
Sources: blog.polybdenum.com, Lobsters
Comments