I've been thinking about two general questions lately: 1. How can I improve Leo's quality?
The first question has arisen repeatedly lately, as I attempt to stamp out bugs, and in doing so introduce more bugs. Here is a new idea: Leo needs some "subsystem" tests. The first two subsystems that come to mind (that is, for which I have concrete ideas) are Leo's colorizer and Leo's importers. I'll be saying more about this topic in the near future. 2. How do we understand complex computer programs? This question arose because of recent questions about Leo's scripting. Imo, after reading Leo's scripting chapter, the next (and indeed only) step is to start reading Leo's sources. As I have said before, I don't have (nor do I need) detailed memories of the details of Leo's sources. I have a general view, which is then reinforced by searching. With Leo, I never just "browse" the sources. I always look at the sources with a particular task in mind: either to fix a bug or to add a feature. Thus, if a newbie really wants to learn Leo the best (only?) way is to set a task for themselves and dive right in. **With this task in mind**, I search to find *nodes* related to the task. I then clone the found nodes and move the clones to a "work area". Thus, the process of understanding (and fixing) a problem is: A) clone all nodes related to the task and B) use the *concentrated* nodes to fix the bug or add a feature. For complex tasks, I may have to further organize the concentrated nodes to make them easier to understand. Probably all experts use searching, rather than memory, to find the parts of a program that relate to a particular problem. The "Leo difference" is the concentration of related items. This is a huge benefit: no more repeated searches and no more remembering of which of the found pieces are related to the problem. 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.
