1) ml structs and signatures add verbosity (over "normal" modules)
2) applying functors explicitly everywhere
3) excessive proliferation of type sharing constraints
1) ml structs and signatures add verbosity (over "normal" modules)
2) applying functors explicitly everywhere
3) excessive proliferation of type sharing constraints
plv.mpi-sws.org/backpack/ covers a system with applicative modules but is overly tied into Haskell's existing module system.
plv.mpi-sws.org/backpack/ covers a system with applicative modules but is overly tied into Haskell's existing module system.