Subject: Re: is it effective/better
From: rpw3@rpw3.org (Rob Warnock)
Date: Fri, 18 Aug 2006 01:06:22 -0500
Newsgroups: comp.lang.lisp
Message-ID: <qqednXseQdJDxXjZnZ2dnUVZ_t6dnZ2d@speakeasy.net>
Ken Tilton <kentilton@gmail.com> wrote [in a different order]:
+---------------
| > I dont know how you people were able to think like this,
| 
| I have the same feeling when I look at my own code. ...
| When I look at it a month or day later, having forgotten the process
| by which it arose, I wonder where it came from.
+---------------

The same thing happens to me, but too often it's "I wonder
where the !@^%$!#@ this awful mess came from??!?!"  ;-}  ;-}

+---------------
| Often in the end I look at the working result and only then
| see how it can be collapsed into more functional form to make it 
| more maintainable and concise.
+---------------

In my experience, that getting-it-working-first and *then*
[possibly setting it aside for a while and then] re-reading it
is absolutely key to the creation of code which is elegant,
robust, and long-term maintainable. Without such re-reading
and "editing" [in the sense of editing a book for grammar
and style], the original hacks and misunderstanding remain,
and further hacks [as the code evolves] just pile up and the
code becomes less & less readable... and thus less & less
maintainable in the long run.

One of the "problems" of those higher-level languages [such
as Lisp!] which encourage correct programming the first time
is that this subsequent re-reading and editing never gets done.
C.f. "Warnock's Rule for Why BLISS Programs Are Big", circa 1971
or so [commonly voiced around the DECsystem-10 SIGIL meetings].
Hint: They tended to work the first time, so they didn't get
re-read (and thus didn't get re-written).


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607