On Thursday 25 April 2024 at 05:13:37 UTC+2 Matthias Koeppe wrote:

On Wednesday, April 24, 2024 at 1:07:44 AM UTC-7 Martin R wrote:

You mentioned several times, that discoverability is an important aspect.  
Do you have any evidence to support that?


I mentioned "discoverability" in the context of how I have *named* the 
distributions.


Sorry that my question was not clear enough.  Do you have evidence, that 
this naming enhances discoverability, and that this enhanced 
discoverability would be worthwhile, since it comes with a cost (as 
outlined above)?
 

Wouldn't people in the python world who need a serious amount of math know 
of sage anyway,


What is a "serious" amount of math?


You know it when you see it.  What I mean is, roughly, that it certainly 
does not make sense to use sage as a package if you need a few graph 
algorithms (like shortest paths or some such), because then you'd be better 
served with using a specialised library or perhaps copy the code and adapt 
it. You might want to use sage as a package, if you want to do serious 
enumeration of arbitrary combinatorial objects.  But then you will need 
gap, symmetrica, nauty and maxima or fricas anyway.
 

and then, if they cannot rely on all of sage because that is too large, 
use, for example, `citation.get_systems` to see whether they can do without 
some dependencies?


What do you mean by, "whether they can do without some dependencies"?

 

That's exactly the point of the modularization: 
- To enable people to use parts of Sage without some [actually, most!] of 
the dependencies. 


The only point I am critical of is the splitting of the math library into 
arbitrary pseudo-mathematical parts (i.e., sage-combinat ... 
sage-symbolics, as listed above), which has nothing to do with dependencies.
 

[...] I admit, however, that I cannot really think of any serious use of 
any of the functionality of sage outside of math, where people would know 
that what they need is, say combinatorics or graph theory.


What do you mean by "outside of math"?


I agree that my terminology is not good.  I tried to make a distinction 
between research involving math and the - to me unknown - rest.  I find it 
hard to imagine that any mathematician would bother installing anything 
else but all of sage.  So, maybe I should have written: "I cannot think of 
.... sage in an environment, where dependencies are show-stopper, ...".


  I guess it would be quite insane to install sage or parts of sage to get 
an implementation of a particular algorithm in a non-math environment.


Yes, "quite insane" would be a good description of doing this (reusing what 
is implemented in Sage) with the status quo, the monolithic Sage.

That's exactly the point. 
- From the viewpoint of users: It just makes no sense to use a small part 
of Sage: Because of space and time and friction (and limited portability).


However, it *does* make sense to copy small parts of sage.  If I need an 
implementation of some combinatorial algorithm, chances are extremely good 
that I can simply use ?? to go to the code, and copy the relevant part.
 

- From the viewpoint of contributors of new code that could be reused: It 
just makes no sense to trap it in Sage, where it cannot be reused sanely.

 
I doubt this.  Do you have any evidence for that?

Modularization makes it at least "less insane", or perhaps "kind of 
acceptable", or sometimes even "reasonable".
Any of these degrees of improvement of "sanity" would already be a win.


I disagree. "less insane" or "kind of acceptable" would be a loss, not a 
win, since the kind of modularization discussed in this message comes with 
a big cost.

Martin

-- 
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/9ac29423-78cd-40ca-9d33-6fc52c404b19n%40googlegroups.com.

Reply via email to