On Mon, Sep 23, 2013 at 10:30 AM, Terry Brown <[email protected]>wrote:

> 
I'm not proposing changing anything that exists, including existing
 
behaviors.

I'm glad we are having this conversation, for several reasons.  First, rev
6032 adds p.insertBefore, and uses p.insertBefore to simplify
c.insertHeadlineBefore.  p.insertBefore is completely safe because it has
no effects on Leo's core. This is the proper way to avoid icky guards :-)

Second, c.virtualRootPosition is a bad idea. The intention was to avoid
special cases, but the proposal creates its own special cases.  Given:

    p = c.virtualRootPosition():

1. what is p.h?  p.b?
2. what does p.self_and_subtree() return?

etc.

Third, it gives me the chance to emphasize the following: We can *add*
items to Leo's API, and we can fix bugs in Leo's API, but we can never
change Leo's API in any incompatible way, including function signatures and
*any* aspect of how any function works.  The reason: we don't know what
scripts are already using the API.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to