The goal of base-compat is to make packages compatible with a wider range of compilers.
Sadly, for MicroHs it has the opposite effect: If a package that is otherwise perfectly compatible with MicroHs uses base-compat then it does not build with MicroHs anymore.
Initial goal: Not full base-compat support, but rather find a way so that if a package:
- depends on
base-compat, and
- only uses functionality from
base-compat that is implemented in MicroHs
then the package should build with MicroHs.
(Or in other words: A package should not fail to build merely because it uses base-compat.)
I am not sure what's the best way forward here.
@RyanGlScott I'm not sure if this can be easily addressed in base-compat itself. Thoughts?
@augustss Do you think this should be addressed in MicroHs, adding .Compat aliases for each module from base and ghc-compat?
Or maybe a base-compat-mhs package?
The goal of
base-compatis to make packages compatible with a wider range of compilers.Sadly, for MicroHs it has the opposite effect: If a package that is otherwise perfectly compatible with MicroHs uses
base-compatthen it does not build with MicroHs anymore.Initial goal: Not full
base-compatsupport, but rather find a way so that if a package:base-compat, andbase-compatthat is implemented in MicroHsthen the package should build with MicroHs.
(Or in other words: A package should not fail to build merely because it uses
base-compat.)I am not sure what's the best way forward here.
@RyanGlScott I'm not sure if this can be easily addressed in
base-compatitself. Thoughts?@augustss Do you think this should be addressed in MicroHs, adding
.Compataliases for each module frombaseandghc-compat?Or maybe a
base-compat-mhspackage?