Everyone knows Haskell is only used for white papers :p

Yeah it's workable, and better than nothing. But it's not better than having an actual static type system.

1. It's optional. Even if you get your team on board you are inevitably going to have to work with libraries that don't use type hints

2. It's inconsistent, which makes sense given that it's tacked onto a language never intended for it.

3. I have seen some truly goofy shit written to make the linter happy in more complex situations.

I honestly think everything that's been done to try to make Python more sane outside outside scripting or small projects (and the same applies to JS and TS) are a net negative. Yes it has made those specific ecosystems better and more useful, but it's removed the incentive to move to better technology/languages actually made to do the job.

What job are we talking about and why is TypeScript or typed Python actually bad at it?

I'd say Typescript/JavaScript on the backend are a bad idea across the board. That's not really because of this conversation, just in general.

The comment about Typescript was really about JavaScript. It's a patch on top of JavaScript, which is a shit show and should have been replaced before it ended up forming the backbone of the internet.

Python, typed or otherwise, isn't good for anything past prototyping, piping a bunch of machine learning libraries together, or maybe a small project. The minute the project gets large or starts to move towards actual production software Python should be dropped.

Happily using both in production here, guess I'm just hallucinating.

I'm not saying you _can't_ do it. You could write production software in Bash if you really wanted to. I'm saying there are much better options.

I don't think writing your frontend in Rust instead of TypeScript or your computer vision pipeline in Java would be better at all. We rewrote our frontend in GHCJS (Haskell) at one point and it was a colossal waste of time.