On Tue, Nov 1, 2011 at 5:04 AM, Edward K. Ream <[email protected]> wrote:
> On Mon, Oct 31, 2011 at 9:48 AM, Kent Tenney <[email protected]> wrote:
>
>> Are there any areas of core which can be simplified?
>
> The first two areas that I am targeting for subsystem tests are Leo's
> colorizer and Leo's importer code.  These are complex pieces of code
> that do complex tasks.  There is, imo, no real potential for drastic
> simplification of either subsystem.
>
> What we need, instead, is a drastic improvement in subsystem tests,
> following the outlines that I have described.
>
> As you know, I always try to solve bugs by simplifying code, not by
> adding special cases.  Sometimes that works; sometimes not.
> Furthermore, complexity takes several forms, some of which is
> particularly harmful, so of which is not.
>
> Leo's external file code in leoAtFile.py, and Leo's colorizer each
> contains a fundamentally simple algorithm wrapped in very complex init
> code.  Each is fundamentally sound because the fundamental algorithm
> is simple and sound; each is "capable" (supports lots of needed
> options) because the init code for each is complex.
>
> The "dual nature" of leoAtFile.py and the colorizer in qtGui.py isn't
> going to change.  All we can hope for are unit tests that cover what
> needs to be covered.
>
>>> 2. How do we understand complex computer programs?
>
>> The other topic I think would benefit Leo is improved persistence.
>
> We shall more forward on this, but imo persistence is *usually* more
> of a convenience than a fundamental requirement for understanding.

Right, IYO it is a convenience, IMO it is critical.
The difference is due to different learning styles and problem domain.

> The real question related to understanding is "persistence of what?"

- tabs: currently being addressed by session work
- layout of <add-editor> status
- layout of viewrender status

Behind this is the difference between decomposition and structuring
of complexity (outlining) and correlation and visualization of complexity
(layout). There is a point where narrowing focus is required, but my
learning style seems to also require higher level overview.

>
> Leo is what it is because outline structure is the fundamental thing
> that persists.  Everything else is secondary, by a very large margin.

IYO. IMO, the ease of scripting/customizability is at least as important
as outlining. Again, your learning style is different than mine.

>
>> Optimizing versioning capability is related to persistence.
>
> Again, versioning may be added to Leo, but it is not, imo, the key to
> understanding complex code or other data.  Again, the question is,
> "versioning of what?"  Versioning of text has no chance, imo, of
> creating a breakthrough in understanding.

MO differs from YO. I think adding dimensions to the work space increases
opportunity for understanding. Layout represents the spatial dimension,
versioning the temporal dimension. I expect to benefit from layouts which
visually reflect the relationship between source, config, log, render
... elements,
and want to click arrows on a node and travel back and forth in time. Each
will help me form the BIG picture required to decide what keys to press
in this LITTLE node.

>
> Outline structure is the only thing that Leo supports that creates a
> breakthrough in understanding (and power).

IYO.

  A huge part of Leo is
> simply devoted to translating back and forth between the outlined
> (structured) world and the flat (text) world.
>
> The questions I am considering are:
>
> 1.  Is there anything *else* (besides outline structure) that could
> conceivably create a breakthrough in understanding in complex data?
>
> 2. Are there other ways of using outlines that could create a
> breakthrough in understanding?
>
> 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.
>
>

-- 
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.

Reply via email to