On Tue, Jul 26, 2016 at 12:46 PM, Francesco Biscani <bluesca...@gmail.com> wrote: >> That would be difficult to substantiate I think. > > > If you look at languages with "true" multithreading, what they provide are > not only the basic building blocks which Python also has (threads, locks, > mutexes, condition variables, etc.), but also a whole conceptual model of > how a multi-threaded abstract machine is supposed to behave. The memory > model, guarantees on instruction reordering by the compiler/interpreter, > definition of the conditions for data races, atomic operations, and all that > jazz. > > Correct me if I am wrong, but my understanding is that Python is currently > lacking a formal model for threading. Even if the GIL were to be removed > from CPython, Python would still lack crucial parts to make it really > useable as a portable multithreaded language.
+1. And it is really valuable for us to be more aware of the advantages of other languages (e.g., Julia, Go, Javascript, and much more, etc.) over Python. The ultimate goal with Sage is to make very good quality free open source software that gives everybody an alternative to having to use Magma, Mathematica, Matlab, etc. I hope us Sage developers will view Python as more of an implementation choice, rather than some sort of religious decision, and continue to be welcoming of other languages (like C++, Fortran, Lisp, etc.,) that are heavily represented in the Sage distribution. Python is indeed relatively weak at doing a lot of things at once in the same process, and that's not likely to change. Tangential remark: I recently tried to build Julia from source and was disappointed that it took over 2 hours (on a single cpu)! However, I think it's building many of the same *sort* of components as Sage (e.g, a BLAS, GMP?, etc.), so maybe there is a way to build Julia much more efficiently in the context of Sage. - - William -- William (http://wstein.org) -- 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.