Antal Spector-Zabusky
Antal Spector-Zabusky
Or a heuristic like "if a method `C__T_method` of type class `C` for the instance `T` is defined to be η-equivalent to a method of type class `C'`, then add...
(I don't know about implementation, I'm just thinking about possible solutions to the issue – using this as a repository of ideas)
We now have the `set type` edit, so we can do `set type VarEnv.lookupVarEnv_NF : forall {a} `{Default a}, ...` – this gets us closer to `constrain`, but isn't quite...
Could you include it in the issue?
So, here's the Haskell version (generated from GHCi): ```haskell (GHC.Classes. case (Ghci4.$con2tag_1pkeUNKOpaw5YfScuo8o77 b_a4ret) of { b#_a4rev -> (GHC.Prim.tagToEnum# (a#_a4reu GHC.Prim. Int#`](https://hackage.haskell.org/package/ghc-prim-0.5.1.0/docs/GHC-Prim.html#v:dataToTag-35-) (or the marginally-higher-level [`GHC.Base.getTag :: a -> Int#`](https://hackage.haskell.org/package/base-4.10.0.0/docs/src/GHC.Base.html#line-1200)), which...
cc @nomeata
I looked into using that, but the naïve way of reusing it produces quadratic code (check every prefix), and this solution seemed like it’d be quicker to pull together. Although,...
We also have to handle each argument separately, but yeah, that seems like a good outline. Particularly if we assume that this is only introduced by `skip constructor` – otherwise...