Mind blown today: Constraint generation + solving is *not* a requirement for implementing Hindley-Milner type checkers — metavariables + unification is enough!
Conversation
Huh, meanwhile this hadn't even occurred to me as a possible misconception. (Probably because I learned a lot of this stuff from András in the first place - lucky me!)
2
1
Heh, yeah, I think I've had to piece a bunch of stuff together over the years when teaching myself stuff, and so stuff like this can creep in. I'm pretty sure a bunch of folks on the /r/ProgrammingLanguages discord were similarly surprised!
1
1
I think TaPL also introduces type reconstruction using constraints, which could have been one of the early sources of my confusion (this might have been the result of me skimming headings and not reading carefully though).
1
1
Aaaah! A book! Run away!
1
1

