But, I still can't come up with a static language that I'd want to teach someone as a first language. C# would be a good choice, but I don't know how much success a beginner would have with .Net. Typescript is hard to debug unless you know Javascript. I wouldn't wish C++ as a first languge upon anyone. Haskell seems like it would be very frustrating for a beginner. Swift might be okay if they really badly wanted to go mobile, but that's not the case here. Rust is the best I can come up with, though it seems like a tough first language.
Do you have any ideas? I see the value of learning static first, but can't come up with a good language!
Personally, I have been in the role of teaching people programming, and I have seen what Java does to them. And I remember what it was like when I first encountered it.
So, I don't have a better suggestion if that is the goal. But if the goal is to learn programming, I have plenty to say on that. I worked as a TA for 3 years and from my rather biased experience, I would highly recommend HtDP and Racket.