And I totally agree with you here:
> I've found that it's possible to pretend it is a statically typed language if you squint just right.
My Elixir code tends to use a lot of pattern matching on structs. It's not real static typing, but it gets me a lot of mileage!
[0] https://gleam.run/index.html
[1] https://gleam.run/faqs.html#how-is-message-passing-typed