Nothing can infer _all_ types. Or even much of a subset. I was surprised to learn that Hindley Milner can't infer "id" as a function argument, and attempting to extend it to do so results in undecidability: https://stackoverflow.com/a/74869648/171121