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