- I upgraded the actor system (Control.Concurrent.Actor) to support
typed per-actor methods with type-level names, parameter lists and
return values
- For extensible sum types, I decided to use the 'vary' package, while
extensible product still uses 'HList' (other options are to get both
from 'extensible' (Sum, Prod) or from 'vinyl' (Rec, CoRed))
- Since 'vary' is new, it uses GHC2021 and thus requires GHC 9
- So I decided to make the leap into upgrading to an LTS with GHC 9
- Vervis was at LTS 18, at first I tried 19 and 20 but there were
dependency version problems, in particular I couldn't solve them for
the 'darcs' package even when I switched to latest LTS which is 22
- So I decided it's time to do the long-waiting task of switching to
calling-darcs-process instead of using darcs as a library
All of this together creates a huge commit, but 3 big things are now
solved :)