On Oct 30, 9:19 am, "Edward K. Ream" <[email protected]> wrote: > I've been thinking about two general questions lately:
I'd like to revise them both slightly: 1. How can we improve Leo's quality? 2. How can we better understand complex computer programs? The thread "Long/short details/dreams" discussed two approaches to problem solving: detail oriented, continuous improvement and the vague, dream-oriented, approach. Note: I've just changed the summary of that thread! 1. How can we improve Leo's quality? I usually recast this question as, "how can I use unit tests more often and more easily?" Tiny improvements matter a great deal here: In the past I have written unit tests (long) after writing the code. The so-called "stupendous" Aha tells us to use unit tests as test harnesses. The Aha promises to convert unit tests into an *immediate* benefit, rather than a "someday" benefit. In practice, however, binding a key to a *particular* unit test is so clumsy that I usually don't do it! Yes, the Aha has been useful in big, ongoing projects like new-lint, but it hasn't been convenient enough to use when writing *lots* of unit tests. Binding Alt-4 in leoPy.leo to run-marked-unit-tests-externally changes all that. To "bind" a unit test to Alt-4 all I have to do is mark the test node! This is *much* more convenient than creating an @test node with an @key binding. As a result, I am much more likely to integrate unit testing into my every-day work flow. That's no small thing! Creating subsystem unit tests could be called a matter of detail, but it is essentially a new vision for what Leo's unit tests can be. 2. How can we better understand complex computer programs? At present, this question lives at the "vague" end of the scale. Here are some random thoughts: - Pictures are not going to be good enough. But what about Nasa's giant project diagrams that covered the entire wall of a huge hanger? - What kind of pictures do outlines create? Using clones, a single Leo outline could recreate any project diagram, not matter how large, at *any* desired scale! My intuition is that the "universe" of pictures that can be represented by Leo outlines *does*, in fact, suffice. - UML, http://en.wikipedia.org/wiki/Unified_Modeling_Language, is not likely to be good enough. But what kind of diagrams could Leo outlines create? Do we need back links? I suspect not, but this is just a hunch. - Could new *kinds* of classes aid design and understanding? How would we represent these classes in a Leo outline? Would we need back links? These are questions that my mentor, Bob Fitzwater, would have enjoyed... All comments welcome. On this thread, please try to stay on the topic created by the two questions. Thanks. Edward -- You received this message because you are subscribed to the Google Groups "leo-editor" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/leo-editor?hl=en.
