It retains most of the flexibility and DSL capabilities, but the type- and nil-safety allow you to leverage them without nasty surprises at runtime.
Not having to guess what a method or block returns and instead having the compiler tell you when you get it wrong makes an enormous difference.
It retains most of the flexibility and DSL capabilities, but the type- and nil-safety allow you to leverage them without nasty surprises at runtime.
Not having to guess what a method or block returns and instead having the compiler tell you when you get it wrong makes an enormous difference.