#7377: Symbolic Ring to Maxima via EclObject
-----------------------------------------------------------------------+----
   Reporter:  nbruin                                                   |       
Owner:  nbruin      
       Type:  enhancement                                              |      
Status:  needs_work  
   Priority:  major                                                    |   
Milestone:  sage-feature
  Component:  symbolics                                                |    
Keywords:              
     Author:  Nils Bruin, Jean-Pierre Flori                            |    
Upstream:  N/A         
   Reviewer:  Jean-Pierre Flori, François Bissey, Karl-Dieter Crisman  |      
Merged:              
Work_issues:                                                           |  
-----------------------------------------------------------------------+----

Comment(by kcrisman):

 >  * The advice currently is wrong! Why would "...>0" be the right thing?
 That just propagates a kind of halfbrained trial-and-error mathematics
 that I cannot bring myself to endorse. The proper advice is for the user
 to read up on the assume(...) facility.

 Then you did not read the words, "for example".  And the 'trial-and-error
 mathematics' comment may then be aimed at Maxima as well, especially when
 it asks all kinds of questions and the result is always the same.  (rjf
 would no doubt comment that this is undecidable.)    Perhaps the user
 really didn't consider whether `x>0` until just then, and might as well
 try all possibilities.  That certainly happens in real life.

 This is the best we have to deal with it right now, and until Maxima stops
 asking such questions, what else can one do?  The error message gives the
 syntax, not the mathematics.  Can you think of a different way to phrase
 it that makes it clear we aren't actually suggesting `x>0` in reality?

 Saying to read up on assume() is sort of like telling people to read the
 man page; totally useless if you do not already have an idea that such a
 thing exists.  Read `assume?` if you don't believe me.  Obviously that
 could be improved, but it would be strange to put things about integrals
 and limits at the top of that file (where they'd need to be to catch
 attention), and there is no reason not to give a maximally helpful error
 message right off the bat.

 > In fact, currently, the advice already leads to errors
 > sage: my_symbolic_n=SR.var('n')
 > sage: limit(x^my_symbolic_n,x=oo)
 > TypeError: Computation failed since Maxima requested additional
 constraints (try the command 'assume(n>0)' before integral or limit
 evaluation, for example):
 > Is  n  positive, negative, or zero?
 > sage: assume(n>0)
 > AttributeError: 'bool' object has no attribute 'assume'
 > sage: n
 > <function numerical_approx at 0x18e0410>
 >You CANNOT assume that the print name corresponds with the python
 variable bound to your object and sage SHOULD NOT propagate such
 assumptions in its error messages. It's nice to make a program accessible
 to starters but not at the expense of allowing them to progress to
 experienced users.

 Nothing here is stopping someone from advancing to being experienced.
 This problem occurs other places than here - see many discussions on sage-
 devel about print names not coinciding, or about var() being annoying in
 general.  If someone knows anything about what you are saying, they will
 be plenty experienced to realize that this message isn't talking about
 'their' n.

 Sorry if I sound irked.  But there is a place for such lawyering -
 lawyering over a minor thing which would make Sage more friendly to
 beginners and which doesn't actually harm the advanced users - and that
 place is not in a program that is trying to become a 'viable replacement
 for Mathematica and Maple'.   I've seen this over and over, and can't
 figure out who this is hurting in many such cases.

 Anyway, I hope we can come to some reasonable compromise on this.  The
 current suggestion would make a very common error message less useful.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7377#comment:100>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to