Make it work with MicroHs#42
Conversation
| handle r = r `catch` \e -> unLogicT (h e) sk fk | ||
| in handle $ unLogicT m (\a -> sk a . handle) fk | ||
|
|
||
| #ifdef __GLASGOW_HASKELL__ |
There was a problem hiding this comment.
I'm not terribly happy to provide conditional API. I'd like to know a resolution on augustss/MicroHs#229 before proceeding.
I think I'd rather have
flag has_overloaded_lists
default: True and then
if flag(support_overloaded_lists)
other-extensions: OverloadedLists TypeFamilies
cpp-options: -DHasOverloadedListsand then define instance IsList only if #ifdef HasOverloadedLists.
(This would require a futur MicroCabal to be able to solve flags or hardcode them for time being)
There was a problem hiding this comment.
Or shall we wait until MicroHs supports TypeFamilies? Then it can provide class IsList even if unused for overloading.
There was a problem hiding this comment.
Or shall we wait until MicroHs supports
TypeFamilies?
I think that's the main issue, writing IsList instances doesn't require OverloadedLists. However I have no idea how soon we can expect TypeFamilies to be supported in MicroHs. See augustss/MicroHs#367.
There was a problem hiding this comment.
If TypeFamilies can happen within a few months, I'd suggest we wait for them?..
Happy to merge the rest of the patch which amends imports, if it helps.
There was a problem hiding this comment.
If
TypeFamiliescan happen within a few months, I'd suggest we wait for them?..
Ok, I'm fine with that.
Happy to merge the rest of the patch which amends imports, if it helps.
I don't think this makes much sense, since it still won't compile with MicroHs.
No description provided.