Linked by Thom Holwerda on Tue 13th Jun 2006 12:08 UTC, submitted by Mapou
General Development "There is something fundamentally wrong with the way we create software. Contrary to conventional wisdom, unreliability is not an essential characteristic of complex software programs. In this article, I will propose a silver bullet solution to the software reliability and productivity crisis. The solution will require a radical change in the way we program our computers. I will argue that the main reason that software is so unreliable and so hard to develop has to do with a custom that is as old as the computer: the practice of using the algorithm as the basis of software construction. I will argue further that moving to a signal-based, synchronous software model will not only result in an improvement of several orders of magnitude in productivity, but also in programs that are guaranteed free of defects, regardless of their complexity."
Permalink for comment 133427
To read all comments associated with this story, please click here.
corentin
Member since:
2005-08-08

Computer science theory isn't an end in itself. Of course it's far from being useless; yet, it's nothing but a (very valuable) *tool* to help the poor engineers who have to face the complexity of the real world.

So, yes, COSA may be the shiny perfect solution in a wonderful theoretical world. Still, you need to show us a real example and we'll decide for ourselves if it really helps us building better systems.

Lambda calculus and Turing machines are wonderful abstractions but in our real world we really have to sacrifice a lot of purity in order to build real things (e.g. the Haskell language could be described quite accurately as nothing more than three pounds of syntactic sugar over a tiny lambda calculus cake).

Reply Score: 2