On Wednesday, August 21, 2024 at 6:03:29 PM UTC+1 Marc Culler wrote:

Using cython within Sage via the %%cython magic command definitely does* 
not *require building Sage from source.  That magic command works fine in 
the Sage_macOS binary distribution of SageMath.  The cython pip package is 
included in that binary distribution, because it gets built and installed 
as part of the Sage build.  Yes, you do need to have a C toolchain 
installed on your mac.  But that requires nothing more than opening the 
Terminal app and typing "xcode-select --install".  That works on a pristine 
macOS system with no third party packages installed.


 what if you have a version mismatch between the toolchain used to build 
the shipped binary, 
and XCode you installed locally? I'd expect trouble, in particular with C++.

I realize that it is a paradigm shift from years of Sage practice, but 
overcoming the expectation that all of our users are, or secretly want to 
be, developers and/or system administrators makes Sage much more accessible 
to users, and that means having many more users.

- Marc  

On Wednesday, August 21, 2024 at 10:41:59 AM UTC-5 Nils Bruin wrote:

On Wednesday 21 August 2024 at 08:03:03 UTC-7 marc....@gmail.com wrote:

On Tuesday, August 20, 2024 at 8:22:35 PM UTC-5 Kwankyu Lee wrote:

 it is not a bad idea for a non-developer user to install sage from source.


I disagree.  It *is* a bad idea, for so many reasons:
* It requires a lot of time and work which is completely unrelated to using 
Sage.
* It will almost certainly fail.
* Even if it does succeed, it provides no benefit to a user who only wants 
to use Sage.  But it does have lots of negative side effects, including 
creating a 10GB subdirectory of the user's home which becomes totally  
useless if it is moved, and forcing the installation of many packages and, 
possibly, package managers, which are useless to someone who is not 
interested in writing code.


Using sage may include using cython. Sage and Jupyter have excellent 
support for writing little snippets of cython code and have them integrate 
with python instructions around them with virtually no overhead, via 
"%%cython". I have definitely talked to people who use sage who (wanted to) 
use cython for mathematical inner loops that have to be fast and have no 
inclination to contribute code changes to sagemath. Those are 
(sophisticated) users. 

At least building sagelib is a great way of certifying that cython works 
correctly. I agree that compiling the other parts of sage has very little 
practical benefit even for a developer. Because full functionality of sage 
implies a working compiler tool chain, compiling sage from source even for 
users is a much more reasonable proposition than for most other software.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/64c83412-aeb0-415d-8eaf-fa5fec8298d6n%40googlegroups.com.

Reply via email to