hydra icon indicating copy to clipboard operation
hydra copied to clipboard

Revamp type inference with respect to universal types

Open joshsh opened this issue 2 years ago • 1 comments

Hydra, while a mostly faithful implementation of the LambdaGraph spec, never quite made the leap from Hindley-Milner -style type schemes to System F -style universal types. Its type inference is sufficient for code generation into Haskell, but Java code generation needs more support. In particular, the inferencer is casual about the order of type variables in what were once type schemes (as they used to be a set), and this makes things difficult in Java, which requires the generated code to be littered with type annotations. Fix this.

joshsh avatar Aug 30 '23 14:08 joshsh

This is done-ish in #103 ("ish" because inference still fails in some cases where it ought to succeed), but we're exploring a more standard solution in #118.

joshsh avatar Feb 29 '24 14:02 joshsh

Indeed, this is done better in the #118 branch, and this will be merged into main. Closing.

joshsh avatar Aug 01 '24 22:08 joshsh