On Tue, Jul 7, 2009 at 12:14 PM, Martin Rubey<martin.ru...@math.uni-hannover.de> wrote: > > Dear all, > > I would like to try to build constructively on the following statement > and reply: > > William Stein <wst...@gmail.com> writes: > >> On Tue, Jul 7, 2009 at 9:16 AM, rjf<fate...@gmail.com> wrote: >>> >>> In terms of support, one major disadvantage of Sage, I think, is that >>> significant pieces of the implementation apparently consists of >>> pieces of code that are used as black boxes, and that the >>> Sagemeisters proudly disavow knowledge of. Thus a bug traced to >>> Maxima is unfixable "until we rewrite Maxima in python". > >>> [...] >> >> There is precisely one component of Sage that has the above property, >> and that is Maxima. There are absolutely no other such components. >> Fortunately this won't be the case forever. > > It seems to me that this conversation is not about a technical problem, > but rather a human one, and I think (since affected myself) that it's > even more important.
I think this is both a technical and social problem. Thanks for highlighting the social problem clearly below. > It seems to me that sage is a huge success. Part of it's success story > is very likely the (in my opinion: wise) decision to use other software > as is, at least as a start. > > However, as sage matures, more and more porting work starts to be done, > at least this is what appears to be the case to me. It depends on the component of Sage. For example, Sage no longer uses Maxima for any basic symbolic manipulation -- it uses a substantially modified version of Ginac: http://pynac.sagemath.org/ I don't view this as porting, since we didn't look at any of the source code of Maxima when doing this. Likewise, there is native python-based development of symbolic integration as part of the sympy project and this is not at all a port of anything in Maxima, since they don't look at the Maxima code either (in their case, they can't because Maxima is GPL'd and Sympy is BSD licensed). This sympy code is an important component of Sage. I really like that the following works: sage: integrate(sin(x)^2*cos(x)^3+log(1/x), algorithm='sympy') -1/5*sin(x)^5 + 1/3*sin(x)^3 - x*log(x) + x sage: integrate(sin(x)^2*cos(x)^3+log(1/x), algorithm='maxima') -1/5*sin(x)^5 + 1/3*sin(x)^3 - x*log(x) + x > Now, how does it *feel* if you wrote or contributed to a package, which > is in the end ported (by somebody else) to sage? (Especially, if the > original package is not that much of a "community" success.) How does > it *feel* if sage uses a package for years, but with the declared goal > to replace it as soon as possible? > > At least for me, it feels *really bad*. (...and I guess, in fact, I > know, that I'm not the only person having these feelings...) I'm really sorry that your feelings are hurt. That's not my intention. It definitely sounds like you're speaking from personal experience. What package did you write "that Sage used for years, but with the declared goal to replace it as soon as possible?" Personally, I've found it valuable to try not to identify myself too much with the code I write, since so much of the code I write turns out to be rewritten in a much better way by other people. I try to view that as part of the natural evolution of software. But obviously not everybody can do this. Anyway, it is helpful to realize that rewriting/porting/reimplementing algorithms is a standard part of the natural evolution of software, and it probably always will be. > I do not > know how to remedy this, but I believe that it would be a great service > to the "computer algebra developer" community, if this problem were > recognised and adressed. I can imagine, however, that it's really > difficult to adress it. And, of course, I may be wrong and it's not > important at all, since sage is something technical. > > While I'm at it, I also perceive another obstacle to "complete > happiness", which I'd like to mention, although it's entirely completely > unrelated to the above: humour seems to vary wildly across the earth, > and even between neighbours. I found William's april fool joke *not > funny at all* and it took a lot of help from a colleague/friend (and > sage developer, guess who :-) to understand that it was (probably) not > meant to offend. A similar example, demonstrating how such differences > can even endanger a community, can be found on comp.lang.lisp in the > r.i.p. erik naggum thread. Wow, I'm really sorry that you found that April fools joke so offensive. Did you find it offensive because you are a huge lisp fan, or because of the suggestion that we rewrite code that people had put a lot of time into? Also, did you find it offensive even once you realized that it was 100% meant as an April Fools joke? Again, I apologize for offending you with that joke. It was really meant to be entertainment and nothing else. William --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---