[plt-scheme] Computers considered harmful
On Thu, May 07, 2009 at 09:47:22AM -0400, hendrik at topoi.pooq.com wrote:
> On Thu, May 07, 2009 at 03:42:13PM +0300, Ivan Altaparmakov wrote:
> > hi
> > this was neglectable part of my post :)))
> > the more important part was the rest of my post :)))
> >
> >
> > i think the tendency in programming
> > is that "to program" would mean
> > to explain the problem to the computer in such a way
> > that it would be able to solve by it self
> > (one of steps in this direction is HtDP i think and all
> > ideas of functional and logic programming).
> >
> > there would be no "debugging"
> > only correction of your explanation.
> > for this is needed only skills of the mind
> > which could be achieved even without computer ...
> > although it is better if there is a computer :)))
> >
> > how i know the first ever computer program was written
> > when the computer was only draft on paper
>
> The first program ever to be run on a stored-program computer was, I'm
> told, a sorting program. When it didn't work, the engineers spent a
> long time examining the hardware. Eventually it dawned on them that the
> program itself might be at foult. When they examined memory, they
> couldn't make sense of it. It turned out that there was a bug in the
> way that they had set index registers, and that the program had started
> sorting itself.
>
> It's also the case that in one early book on programming in which every
> program was proved correct by hand, many of said programs actually
> didn't run when placed on an actual machine. Issues like integer
> overflow hadn't been considered. Without which, of course, the whole
> formal reasoning process was seriously flawed.
>
> I think there's a serious illusion that formal verification and careful
> thought can replace debugging. Maybe someday, but not yet.
And I'm sure debuging will never replace careful thought as a viable
methodology for anything that has to be reliable.
-- hendrik