On Fri, Aug 21, 2009 at 9:28 PM, ghtdak <gl...@tarbox.org> wrote:

>
> > I wonder if this has contributed to the lack of contributions to the
> > notebook relative to other parts of Sage.
>
> The Notebook has a major problem.  The pexpect code is opaque and
> kludgy and includes strings of python code which get injected into the
> spawned notebook process amongst other issues.  There's also lots of
> handling of "corner cases" which have evolved over time.  In my not so
> humble opinion, it should all be ripped out and replaced with a proper
> asynchronous interface.  This could be accomplished with very little
> effort,


Then why don't you do it?   "Talk is cheap, show me the code."


> but it hasn't been a priority and it would require William's
> buy-in and assistance.  Until very very recently, this wasn't
> feasible.


Also, isn't Codenode already what you're asking for?  Why don't you just use
that instead of the Sage notebook?

> I have to admit I'm playing a bit of the devil's advocate here, I've
> used both twisted and threads (though admittedly I've never used
> Python threads) and the twisted folks have implemented a very nice
> model for dealing with this kind of thing. When there's a lot of
> synchronization or global state threading can be a pain.

> But I think
> it's far from obvious that the twisted model is a better fit (though
> the notebook is a controller for multiple processes and simple
> shuffler of data back and forth, so there is a strong case here).


> Well, I suppose reasonable people can disagree.
>
> (not that I'm reasonable... but I'm pretty sure I'm right)



You're lucky.  I'm usually sure I'm not "right" about how to build software.
Sometimes I even suspect there is no right answer to a lot of software
engineering questions.    For example, I always get a funny (unpleasant)
feeling in my stomach when I here the phrase "best practices" in the context
of software engineering.

 -- William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to