I should add that, in truth, "xcode-select --install" is all that is really 
required in order to build Sage.  But you would not get that impression 
from reading about how to  build Sage.  (I consider that to be a great 
strength of Sage's current structure, and I am also aware that many people 
strongly disagree with me about that.)  I think that a user who only does 
that, without installing anything else, will be much more likely to succeed 
at building Sage, even though it will take longer.  But that is beside the 
point,  the point being that for many, probably most, users of Sage, 
building from source is a bad idea.

- Marc

On Wednesday, August 21, 2024 at 12:03:29 PM UTC-5 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.
>
> 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/061ee922-a29d-46de-a0b1-702104e66769n%40googlegroups.com.

Reply via email to