Andreas Raab wrote:
If you have a language and a system which requires unit tests, that could be as good as better documentation via types. However, as long as unit tests are voluntary, they don't really help.
Good point. Which also relates to the point Gilad was making about optional type annotations being used or not. In the end its a management issue.
Unit tests could be understood as - examples with - method calls - and assertions.
How about a "strong" class browser, which makes sure, that we - always have a reproducable example of the current class, - initialized so that this method could be run (all variables one needs are initialized) - and (maybe even optional) an assertion holds afterwards.
Otherwise the method won't compile.
The tool I have in mind could be understood as a mixture of a debugger and a class browser and could be compared to Peter van Rooijen's http://www.esug.org/summerschools/2001_Essen/presentations/EnsuDemo/index. htm, though I am thinking more of an "example" than of a test driven development. Tests are then just the insertion of assertions.
(Certainly we always have our old "week" class browsers...)
Opinions?
Markus