I posted a comment: lobste.rs/s/pkgjno/type_… "I guess I have the opposite preference of the author? I love dynamic programming languages. I loathe type annotations of all kinds (including Python’s typing). I’m interested in languages that fully infer types for me and provide all/many of the benefits of static type checking without having to write type signatures. I believe it is possible to have both full type inference and good error messages in one language. But the features of the language need to be constrained to achieve this. A lot of languages with type inference seem to be exploring the frontier of what’s theoretically possible, not what’s most practical. I see this as a wide open opportunity in the realm of software development just waiting to be filled by a new programming language."
I waffle on specifying types in python defs. I went through a phase where I enjoyed doing it to give the ide hints to help me out.. but eventually stopped. It would be nice if an ide could use type inferencing to give you warnings that you are feeding bad args to a function, but I understand that would be really annoying for the ide devs to implement.
@haxor I'm interested in this solution. The way I see it, optional typing is the bees knees — the best possible compromise. Type signatures help users, and compiler/etc writers. What is a way for inference deep stacks efficiently without eating up cycles, or without static typing?
@haxor The core argument here is not about error messages — though that is also an open issue — but rather about reading the program on media that don't have all the UX affordances of the code author's editor. Forcing annotations on boundaries forms a happy medium.
@haxor i'm pretty familiar with languages with hindley-milner type system (full and global type inference) and yeah tbh type inference's best use is quite clearly generating the (most general which sometimes can be more general than I wanted) type after the fact. you'd learn to prefer..
@haxor In my opinion I am fine with both but it should be strongly typed that's how far am willing to go.