[net.lang] Hiding the compiler? You must be choking...

gnu (03/15/83)

The first language I did any serious work in (as opposed to class projects
in Fortran) was APL.  Somehow things have never been as good since then.
Why should you have to "run a debugger" to debug a program -- if such a
thing exists at all, and can debug in the source language?  In a properly
implemented interpretive language, you can stop the program anywhere by
pressing a key (eg, ^Z on 4.1BSD) and then type source language statements
to mess around with it, including calling procedures, defining procedures,
changing definitions, etc.  Admittedly it takes some WORK to put together
such a system but many many many people have done it it I thought we all
agreed that it was a Good Idea for the machines to take over the garbage
details like finding the variables in the stack and printing them, 
decoding the source language into object code and running it, etc.
(OOPS -- "it it" above -> "it and" sigh).  Anyway it was VERY easy to 
debug an APL program and it's not so easy to do in C -- you still need
to know the underlying machine language, for one thing, and when a production
program breaks you can't debug it as it lies there dead, you have to
try to run it again and reproduce the problem.  Or if it dies totally dead,
(core file), you can't revive it.  All in all, it caters much more to the
machine's requirements than the programmer's, and WE are getting more
expensive while THEY are getting cheaper.

	John Gilmore, Sun Microsystems