Skip to content

Instantiate polymorphic types in record literals#2367

Closed
paf31 wants to merge 2 commits intomasterfrom
1110
Closed

Instantiate polymorphic types in record literals#2367
paf31 wants to merge 2 commits intomasterfrom
1110

Conversation

@paf31
Copy link
Copy Markdown
Contributor

@paf31 paf31 commented Oct 6, 2016

Fixes #1110

@paf31
Copy link
Copy Markdown
Contributor Author

paf31 commented Oct 7, 2016

I need to remember to test this with Halogen, I have a feeling that there is a strange interaction with the skolem escape check here, from when I attempted this last time.

@paf31
Copy link
Copy Markdown
Contributor Author

paf31 commented Oct 9, 2016

This does indeed cause problems in Halogen:

src/Halogen/Driver.purs:62:1

      v
  62  runUI
  63    :: forall s f eff
  64     . Component s f (Aff (HalogenEffects eff))
  65    -> s
  66    -> HTMLElement
  67    -> Aff (HalogenEffects eff) (Driver f eff)
                                                 ^

  A type variable has escaped its scope.

  in the expression (map functorAff) (\$1 ->
                                        $1.driver
                                     )
  in value declaration runUI

@garyb
Copy link
Copy Markdown
Member

garyb commented Oct 9, 2016

Heh, that "problem" is due to abuse of how records currently work: it's there to work around the very same skolem escape problem that is now arising.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants