I consider myself a pretty disciplined Ruby developer. I have an app, used every day, that hasn’t thrown an “undefined method for nil” in production in years. That said, Crystal still catches me constantly.
Sometimes this is frustrating, but it also makes for more confident refactoring. In many ways, it’s like refactoring Elm or Haskell. Change a thing, fix all the compiler errors, and Bob’s your uncle.
For me, this is a welcome addition to a ruby-like language, where refactoring often involves a lot of "OMG! I hope I have the good tests for this… "
What say you all?