3 ms·
The circularity-argument for type systems is actually correct, but that is an aside. Type systems on programming languages are proof systems, so they can be use
by jlouis 17y ago
The circularity-argument for type systems is actually correct, but that is an aside. Type systems on programming languages are proof systems, so they can be used as tools for building better type systems.
There is a big lack of TDD in highly succesful Open Source endeavors. Part of this is perhaps because a failed project never get attention. But also note that defects in Open Source projects are good. They instill new programmers to come to the project and work on it because there are some easy low-hanging fruit. Furthermore, as exemplified by Keith Packard recently (see http://lwn.net/Articles/354408/ http://lwn.net/Articles/354408/ -- which unfortunately is behind the Iron Curtain for 24 hours more). Keith mentions that he sometimes deliberately breaks some old code by introducing obvious bugs into it. Then, when nobody have complained for a couple of years, it can be removed on the grounds that it was not interesting.
With rigorous testing this is unachievable.
- silentbicycle 17y agoInteresting point - The social factors of Open Source have numerous subtle consequences. It reminds me of how someone noted that it can be easier to get help with (some) Open Source software by going on IRC and spouting misinformation (and getting corrected by a mob), rather than asking for help and getting treated like a stupid newbie. My note about type systems doesn't have anything to do with whether it's correct or not - just, if the first example people give for the usefulness of type systems is more type systems, it makes me wonder how much consideration the speaker gives practicality. (Then again, I'm not a grad student...or an agile methodology coach.)