#10296: Singular interface wasting time by waiting for the prompt too often
-------------------------------+--------------------------------------------
   Reporter:  SimonKing        |       Owner:  was                              
                     
       Type:  enhancement      |      Status:  positive_review                  
                     
   Priority:  major            |   Milestone:  sage-4.7.1                       
                     
  Component:  interfaces       |    Keywords:  Singular, _eval_line, 
synchronization, synchronisation
     Author:  Simon King       |    Upstream:  N/A                              
                     
   Reviewer:  Martin Albrecht  |      Merged:                                   
                     
Work_issues:                   |  
-------------------------------+--------------------------------------------

Comment(by SimonKing):

 Replying to [comment:20 wjp]:
 > I haven't looked at the patch in detail, but unexplained behaviour
 related to synchronization/interrupts in a patch modifying synchronization
 sounds a bit scary, and a reason to think about it some more...

 For the record: The test in question is new.

 In sage-4.6 (as I just tested on sage.math), the test would in fact not
 work at all: When you do
 {{{
 sage: cutoff = singular._eval_using_file_cutoff
 sage: singular._eval_using_file_cutoff = 4
 sage: singular._eval_line('for(int i=1;i<=3;i++){i=1;};',
 wait_for_prompt=False)
 }}}
 then you needed to interrupt it manually.

 Now, the problem is that after the lines above, `sage:
 singular.interrupt()` is supposed to return `False`, which it always did
 on the command line, but in some (not all) doctest runs returns `True`.

 Since we wouldn't have been able to test it without my patch, we actually
 don't know
   (1) whether the instability existed before and was uncovered by the
 patch,
   (2) whether the problem was introduced by my patch, or
   (3) whether the problem was a result of the changes to the pexpect
 interface in #7377.

 The latter could actually be the case: Today was the first time ever that
 the `singular.interrupt()` example was problematic - and it was the first
 time that I worked with the patches from #7377.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10296#comment:21>
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