Comment by vinceguidry
Comment by vinceguidry a day ago
Ruby has static type system built into the language.
There are others you can use if you like.
Comment by vinceguidry a day ago
Ruby has static type system built into the language.
There are others you can use if you like.
I think a much better way forward is proposed by Jake Zimmerman[1] of the Sorbet team. That is to allow the runtime to parse RBS inline format comments.
That retains Sorbet’s fast static checker and its runtime checks which Typescript compiled to JS lacks.
steep and rbs don't work so well and are the wrong approach. sorbet is also the wrong approach but it works better. The Python 2 -> 3 way would've been a better way to do it but Matz chose an unwise way (separate files) that doomed it combined with a failure to type all the things and make it work. Oh, and very few Ruby gems are cryptographically signed and so most code is mostly untrustworthy. Making important things optional makes them unused and essentially worthless.
All of these problems are worse in javascript.
> a failure to type all the things and make it work
Everything is typed in Ruby.
Unusable mess.
Ruby should take lessons from Python and TS on how to make proper gradual typing.