Thanks for the feedback! This is actually a smaller part of a much bigger full-blown type-inferred programming language[0], we&#x27;ve been working on as a part of course in school. Our plan was to directly add type-inference in the language but after reading through Stephen Diehl&#x27;s tutorial[1] we were intimidated and wanted to have a working version on a bite-sized language.<p>I&#x27;m assuming a lot developers like me would be keen to understand how HM works, so I was considering writing a detailed tutorial of the unification algorithm step-by-step. Would you be interested in something along those lines?<p>[0] - <a href="http:&#x2F;&#x2F;www.cs.columbia.edu&#x2F;~sedwards&#x2F;classes&#x2F;2016&#x2F;4115-spring&#x2F;proposals&#x2F;JSJS.pdf" rel="nofollow">http:&#x2F;&#x2F;www.cs.columbia.edu&#x2F;~sedwards&#x2F;classes&#x2F;2016&#x2F;4115-sprin...</a><p>[1] - <a href="http:&#x2F;&#x2F;dev.stephendiehl.com&#x2F;fun&#x2F;006_hindley_milner.html" rel="nofollow">http:&#x2F;&#x2F;dev.stephendiehl.com&#x2F;fun&#x2F;006_hindley_milner.html</a>