Hindley-Milner type checker in progress