Robert Miller wrote:
>> However, Robert Miller has been notably silent on this topic.  We
>> should try to get him to weigh in before making any sweeping
>> decisions, since he's (at the very least) the most familiar with the
>> code.
> 
> I have spent months trying to make function calls just like, e.g.
> G.predecessors(3), as fast as possible. There is still a lot of work
> left, but things like G.neighbors().in()... or whatever sounds
> alarmingly to me like extra unnecessary Python layers around a
> function which you want ABSOLUTELY no Python involved in at all, other
> than the initial function call. Name changes and aliases I can live
> with. Extra layers of Python function calls for no reason other than
> tab completion prettiness, this is really bad. Especially when it's a
> function as basic as neighbors, which gets used in almost every graph
> theory algorithm out there. Imagine the future "embarrassing" thread
> where a 10x speedup is discovered by avoiding this exact approach...
> 

+1

I'm with Robert.


> As far as it being *possible* to split up graph.py... It's a ten
> minute job, but nobody's done it. You could split it in three right
> away by having generic_graph.py, graph.py and digraph.py.
> 

+1 too.

Jason



-- 
Jason Grout


--~--~---------~--~----~------------~-------~--~----~
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
URL: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to