On Fri, Dec 23, 2011 at 5:27 PM, Eoin <[email protected]> wrote: > > I've been following this discussion with some interest. A couple of > things spring to mind now: > 1. This seems to be the first statement of a problem: > "outline structure must be first-class data in shared > (cooperative, distributed) environments." Maybe it's been said earlier > and I've missed it though.
I created a procedural language that was essentially XBASE-plus, and part of it was the ability to assign context and state (indeed, any component of these notions) to variables. This was how you could navigate. You could log onto a Uniform Context Transfer Protocol server and type commands like: GET CONTEXT (and it would return the current use type, link type, use, etc.) or: x = STATE y = CONTEXT GET x GET y Or to navigate in a context, you could: SET CONTEXT TO y GO TOP LINK do while not eoc() (endofcontext) PRINT LINK SKIP LINK enddo or you can create the context at runtime: SET USE TYPE TO someusetypeilike SET LINK TYPE TO somelinktypeilike GO TOP USE z = CONTEXT None of Rich Hackey's persistent objects, separation of value from identity, and transaction or state transition management. But it is a model of distributed state, so by formalizing that, it is at least one way to start thinking about the things he does with Clojure within a set definition of distributed state. Seth > 2. Rich Hickey's talks/videos on state, value and identity (with a nod > to AN Whitehead) chime. Not sure if the specifics apply but the > approach is interesting. > I'd like to have a slightly more informed input to this. Edward, what > can you recommend by way of reading/coding for the current Leo data > structures? > > Best regards, > Eoin > > On Dec 20, 2:36 pm, "Edward K. Ream" <[email protected]> wrote: >> On Mon, Dec 19, 2011 at 11:59 AM, Edward K. Ream <[email protected]> wrote: >> >> > If all (or almost all) data appears in a Leonine sqlite db we can say >> > the following: >> >> > - There is no need for a Leo cache. >> > - There is no need for private @shadow files. >> > - We can use the @shadow algorithm for *all* files, including @file, >> > @auto, etc. >> >> Wrong, wrong, wrong. >> >> @shadow will *never* be the model for most files because it demotes >> structure info to second-class status, namely, personal preference >> grafted on to the "real" data. But the *essence* of Leo is that >> structure is first-class data. >> >> @shadow is fine for non-cooperative (private) environments. In that >> case, the "preference" structure is, in fact, the only structure there >> is. But in shared environments outline structure must be part of each >> external file. Thus, sentinels are, in general, essential as well. >> >> This must be the fourth or fifth time I have rediscovered this basic >> principle. In the past, the emphasis has been mostly on sentinels, >> but here we see that the underlying principle is that outline >> structure must be first-class data in shared (cooperative, >> distributed) environments. So this is progress of a sort. >> >> As a direct consequence, any approach that abandons sentinels must be >> rejected. I don't know, in detail, this affects the current >> discussion, but I think Seth and Hans have ideas that are compatible >> with this principle. >> >> 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.
