4 ms·
Can you give an example of a Haskell way that is not Right?
by tome 4y ago
Can you give an example of a Haskell way that is not Right?
- TylerE 4y agoLazy by default, to name just one. Ocaml's immediate by default but opt-in lazy is so much better.
- tome 4y agoYup, will definitely accept that one.
- 0zemp1c 4y ago[flagged]
- consilient 4y agoTypeclasses. They're a huge improvement over OO-style overloading, but using them as your default way of talking about structures is a Faustian bargain: - Implementing two instances of one member each is much more work than one instance with two members, which incentivizes overly coarse typeclass hierarchies: hence Num and friends, which are a disaster. - They don't provide a good way to talk about one structure uniquely determining another (e.g. a given semigroup can be made a monoid in at most one way), which leads to boilerplate overly pessimistic constraint resolution. - The way constraint resolution works forces them to take type constructors, not types - which makes aliases, type families, etc. second class citizens.