On Fri, Apr 15, 2016 at 3:25 PM, Erik Bray <erik.m.b...@gmail.com> wrote: > On Fri, Apr 15, 2016 at 3:19 PM, Dima Pasechnik <dimp...@gmail.com> wrote: >> There a clear outliers, like finances, sagenb, graphics, and duplicates >> (functionality-wise), >> such as two different interefaces to GAP (pexpect and libGAP), to Maxima >> (pexpect vs library), >> Cutting these out would already be a huge improvement... >> (but e.g. completely replacing GAP with libGAP is quite a job...) > > Yep, I think these are the best places to focus first, as well as a > lot of the other stuff in sage.interfaces. > > What is the difficulty as it stands with completely switching over to > libGAP? I was under the (apparently false?) impression that that was > mostly a done deal by this point, despite the pexect interface still > being around.
Another thing I'm considering--though I could be wrong about this--is sage.ext.fast_callable. I only even found out about this by working on fixing sage.ext.interpreters to build in Cygwin. (I've heard mention of fast_callable before but nobody explained very well what it is--the documentation is fine though). I wish I had know about this sooner, and furthermore I wish it had been usable and discoverable outside of sage. I've done a lot of the same work myself, and have merely protyped some of the kind of bytecode generation from expressions that it does--never had the time to get that fully working though. Currently sage.ext.fast_callable is written in such a way that depends on some of sage's core data structures, but I'm not convinced it needs to be that way. With some reworking and more extensibility I think it could be redesigned in such a way that doesn't depend on sage, but that sage can easily build on top of to add specific support for its structures. A good example where this is already done is in how ElementInterpreter extends PythonInterpreter to check that sage Elements are in the correct parent domain (IIUC). Eirk -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.