dwpst@unix.cis.pitt.edu (Douglas W Philips) (01/11/91)
In the January 91 Computer Language EOF column, Charles-A.
Rovira talks about the continuing "software crisis". What he
refers to is the lack of highly productive programmers. His
solution is to use Smalltalk. Some of what he says seems
directly applicable to Forth as well, but some seems definitely
anti-Forth. I'm interested in what other ForthNet readers
thought of his column. Below I've included some quotes from
his column that I think are relevant to Forth (positively or
negatively).
[Quoted w/out permission, typos, etc. are mine. -dwp]
The software crisis is the result of our being three to four
orders of magnitude too slow. ... The crisis will only be resolved
when we're putting out 20,000 to 200,000 lines of error-free,
working code in a matter of hours. It's not an impossible
goal. ...
The problems of testing a large program grow exponentially. ...
A program with 100 functions is not testable in any practical
sense...
Our productivity is so low because we design tools that actively
encourage us to fail. ...
I will tell you how I routinely generate 20,000 to 200,000 lines
of code in a few hours. I use Smalltalk. ...
When I say 20,000 lines, I'm not talking about 20,000 lines of
assembly language over which I have little control; I'm talking about
20,000 lines of Smalltalk, all of which is instantly accessible (and
changeable) from the environment. ...
With Smalltalk, most of what is left for the programmer is
"programming by exception." ...
Smalltalk's overhead is large, but like Damocles, I've got more
important things hanging over my head than any CPU will ever have.
Failure to deliver means that I can't meet the mortgage. Whatever
delivers, whether it strains the CPU or not, is acceptable, as long as
the customer agrees its acceptable. Chip cycles are almost free, RAM
is cheap; what is expensive is my time. If I can't show results, no one
will hire me. If I can't produce the goods, I have nothing to sell. I
would rather have a program that works somewhat inefficiently than an
amazingly efficient computer that doesn't do a thing.
[Actually I think the most appropriate medium for a reply to
this would be a letter (or many!) to Computer Language. A
thorough comparision between his Smalltalk wonderfulness and
Forth might even be worth an entire column. If I had the Forth
expertise I would attempt it myself. -dwp]