|
|
|
|
|
by nextos
2939 days ago
|
|
You are embarking onto a very interesting, but tough project due to the extremely dynamic nature of Ruby! Have you considered the property-based QuickCheck approach? Instead of building a type checker, you just annotate your code with properties (preconditions, postconditions and class invariants). You can generate tests to verify your code and also inject runtime checks to fail early in case of violations. In my experience, this tends to work much better on dynamic languages and it also scales to larger codebases with heavy usage of dynamic idioms. |
|