WIP: MicroHs compatibility #1205
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
some patches for
tidal-core
to make it compatible with https://github.com/augustss/MicroHs. the rest of Tidal hasn't been checked, maybe this PR breaks some things elsewhere (particularly thepattern
topattern_
renaming). work in progress, this PR is mainly to advertise the ongoing work to avoid possible duplication of effort.3e52820 is in another pull request already, should be no problem except possibly for prehistoric GHC versions import IsString from a portable module #1204
29d3134 is maybe controversial but is probably the only one that will remain required long-term, as new things are being added to MicroHs at a rapid pace; but I don't think MicroHs will get a way to turn on/off the different language extensions that it supports. I have not yet checked the rest of Tidal to chase up any dependent code that calls the old name...
5bb3d0f manually implements Functor instances instead of deriving them, ideally this would not be necessary as writing code by hand can introduce bugs. see wishlist: DeriveFunctor augustss/MicroHs#202
c14a100 likewise demotes some possible bugs from type errors to runtime errors, so careful coding is more necessary. see polymorphic record update augustss/MicroHs#190