Comment by yawaramin
3 months ago
OK, side note, whoever decides the GHC release numbers should be pulled aside and given a quick talk about how version numbers are supposed to work.
Anyway, looks like or-patterns just landed as a GHC extension:
foo (Bar; Baz) = 0
I still like OCaml's (built-in) syntax better:
let foo (Bar | Baz) = 0
Which I feel stems from its elegant decision to use the pipe character as the 'alternative pattern prefix':
let foo = function
| Bar
| Baz -> 0
> whoever decides the GHC release numbers should be pulled aside and given a quick talk about how version numbers are supposed to work.
9.10.3 is a patch for the 9.10 version which was published after 9.12.1 but relates to an older version. Haskell keeps maintaining multiple versions of the toolchain.
That release numbering is pretty common for programming languages. People are still using older supported versions, which still get incremental upgrades. Other languages that do this include Python, Java, Go, Node.js, Ruby, PHP, C#.
> whoever decides the GHC release numbers should be pulled aside and given a quick talk about how version numbers are supposed to work
How is that?