“Complete and Easy Bidirectional Typechecking for Higher-Rank Polymorphism”
github.com