Kenneth Tilton <kentilton@gmail.com> wrote:
+---------------
| > [Tricky, Kenny, very tricky...]
|
| I'll give you tricky:
| http://smuglispweeny.blogspot.com/2009/01/tiltons-law-solve-failure-first.html
+---------------
Indeed. I *hate* NULLs in databases. :-{
Actually, your "Solve the Failure First" [and reminder of & pointer to
your older "Solve the First Problem"] post couldn't have come at a better
time for me. I've been debugging a garbage collector in a toy[1] CL I've
been working on, and I've already gotten bitten several times by *not*
Solving (or at least Analyzing) the First Problem/Failure First, but
I hadn't yet made the meta-heuristic "up-level" step of realizing that
that was what was happening. Thanks for the reminder to "never deal with
the unknown"!! Paraphrased recap: Debug the *first* unexpected thing
that happens[2], *not* the most "interesting" or even catastrophic.
Thanks!
-Rob
[1] "Toy" only in its size. It "purports to be a subset of ANSI
Common Lisp", to paraphrase CLHS "1.7 Language Subsets".
For me it's a mainly research tool for exploring some issues
I've wanted to look at for some time, though it might be
useful on its own for "scripting" or "embedding" or something.
Someday. Maybe.
[2] My current problem has to do with an internal "GC Botch" assertion
after several hundred collections while computing (ACKERMANN 3 7).
But [up until now] I've been ignoring a *very* early indication that
something is wrong: I have a debugging option set to trigger a GC
when 16384 bytes have been allocated, but the *very first* bit of
GC verbosity says "Commencing GC with 32736 bytes in use", which
by Tilton's Law(s) should tell me that something is already fubar.
[Note: This will probably eventually result in an embarrassing
war story, which I promise to share as soon as the smoke clears. ;-} ]
-----
Rob Warnock <rpw3@rpw3.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607