4 ms·
Dragging Haskell Kicking and Screaming into the Century of the Fruitbat
- JoelMcCracken 5y agoThe hubbub over this is shameful. If we can’t fix any little thing like this, we might as well stop trying to improve the language at all. Put it in maintenance mode and move on to agda or smth
- aranchelk 5y agoAgreed. I really respect what the developers of PureScript have accomplished, as a younger project they’ve had the benefit of hindsight of how stuff has worked in GHC/Haskell and also have not been afraid to make breaking changes when they’ve needed to.
- throwaway81523 5y agoPurescript looks great but there is so much Javascript dependency that I'm afraid to go near it. Haskell has accumulated a ton of cruft over the years that can't really be shed. The alternative if you want a long-lasting language that doesn't cruft up so much, is to stay conceptually a lot simpler, which means being unable to use advanced new ideas. Ada and Scheme have maybe managed to do that, but for that reason they are less interesting than Haskell. Alternatively, adapt the good ideas from Haskell into a successor, maybe some combination of Purescript, Idris, or whatever. That too will eventually cruft up, of course.
- aranchelk 5y ago> Purescript looks great but there is so much Javascript dependency that I'm afraid to go near it. Are you referring to JS dependencies in the core libraries (stuff like Effect, Aff, etc) or in community packages (or just everything)?
- throwaway81523 5y agoEverything I guess. From what I can tell, it's not possible to build or install purescript without also installing the whole npm universe, which is a bug-addled security nightmare. So I spent a while on the purescript website but have never actually run it. I might install it on a bare vm sometime. I don't want it on any machines that I actually use.
- whateveracct 5y agoAgreed. Haskell goes against the grain and isn't afraid to break things to be more right. No breakage at all costs is just a path to mediocrity scaled against your era. Haskell has already proven to transcend era - it's older than most languages and yet also more advanced than they can even conceive.
- brundolf 5y ago> My personal rebuttal against this attitude is that it gets us stuck in extremely suboptimal equilibria. If we can never break anything, then every mistake must exist for perpetuity. This is a problem that Rust solved really well with its "editions" concept. Unfortunately it's probably too late to retrofit such a thing onto Haskell.
- juxtapose 5y agoHaskell is standardized so it's impossible, while GHC can absolutely have editions. I think the infrastructure is already there, with the language extension mechanism and Cabal's default-language setting (e.g. Haskell2010, GHC2021 [1], etc.). [1] https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0380-ghc2021.rst https://github.com/ghc-proposals/ghc-proposals/blob/master/p...
- aranchelk 5y agoThat’s a very nice way of doing it. I wasn’t familiar with that feature, from the docs: > The most important rule for editions is that crates in one edition can interoperate seamlessly with crates compiled in other editions.