Skip to content

Conversation

isovector
Copy link
Collaborator

The tactics plugin was only discovering skolem types present in the hole, rather than anywhere in the hypothesis. #541 gives the following repro:

foo :: Monad m => (a -> m b) -> (b -> m c) -> (a -> m c)
foo f g a = _

here, the hole has type _ :: m c, which means tactics doesn't realize a and b are skolems, and instead treats them as unifiable variables. Thus the insane solution of f a.

Fixes #541

Copy link
Member

@jneira jneira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That was a really quick fix!

@isovector isovector merged commit b3f7ec8 into haskell:master Oct 28, 2020
@isovector isovector deleted the more-skolems branch October 28, 2020 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Tactics plugin generates ill-typed term
2 participants