<div dir="auto">> <span style="white-space:pre-wrap;background-color:rgb(255,255,255)">There was no Haskell 2020 meeting this year at ICFP. Sadly, interest seems to have waned here...</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">Yes that is sad. So either Haskell 2020 won't happen, or it'll be only minor tweaks over H2010, as that was over H98.</span></div><div dir="auto"><br></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">It's hard to imagine any serious Haskelling without FlexibleInstances/FlexibleContexts, MultiParamTypeClasses, UndecidableInstances -- and yet all of those are beyond Haskell 2010. And they were available in at least 2 compilers by around 2000. (Possibly they weren't by then entirely polished.</span><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"> I saw a claim on a StackOverflow answer that Hugs, last release 2006, is not H2010 compliant: not true; indeed several of the H2010 changes since H98 were proposed by the Hugs dev team, and agreed by the GHC team because GHC had copied Hugs.</span><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">)</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">I've had comments from non-Haskellers that they won't take Haskell seriously, because it seems to be a bunch of 'risky'/unstable/experimental features. Whereas I know those features have been stable at least a dozen years. And yet we still face the same conundrums as did H2010:</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">With FlexibleInstances we can write overlapping instances. With FlexibleContexts we can put overlapping constraints on an instance, even if the head's types are H98 (non-Flexible).</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">With MultiParamTypeClasses (which were anticipated in Wadler's very earliest 1988 proposal for typeclasses) we're bound to choose FunDeps and/or type families. FunDep instances either need repeated tyvars -- which brings us straight back to FlexibleInstances, or UndecidableInstances -- which will almost certainly lead to FlexibleInstances somewhere.</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">I feel those parts of Haskell have been in suspended animation/arrested development since ~2006: that was the last release of Hugs; the 'FunDeps via CHRs' paper [**]; the start of associated types/type families.</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">[**] AFAICT, that paper was a purely academic exercise: GHC was not changed in light of its findings, so has a bogus implementation of FunDeps that persists to this day. The paper did not address the combo of FunDeps + Overlaps, so said nothing about what had been a stable cottage industry of type-level programming since at least 2004 (the HList paper).</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">Is there a terms of ref for Haskell 2020? Would any of the above issues be within its scope? (Supposing there were any interest ...)</span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></div><div dir="auto"><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">AntC</span></div>