bugGNU Octave - Bugs: bug #61926, Coding infinite loops in Octave

 
 

bug #61926: Coding infinite loops in Octave

Submitter:  None
Submitted:  Wed 26 Jan 2022 06:50:05 AM UTC
   
 
Category:  None Severity:  2 - Minor
Priority:  3 - Low Item Group:  None
Status:  Invalid / Not an Octave Bug Assigned to:  None
Originator Name:  Originator Email:  -email is unavailable-
Open/Closed:  * Closed Release:  * 6.1.0
Operating System:  * Microsoft Windows Fixed Release:  None
Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Sat 09 Apr 2022 01:14:32 PM UTC, comment #3: 

No response in 3 months.  Closing as invalid.  Re-open if there is more information to provide and a real issue here that needs to be fixed.

John W. Eaton <jwe>
Group administrator
Wed 26 Jan 2022 04:54:37 PM UTC, comment #2: 

I agree that this is a strange way to loop, but it should work as a way to execute a script in a completely fresh Octave session each time.  It works for me on a Debian system.

The OP tagged this as a problem with Windows.  Is fun.m in Octave's loadpath?  Is it possible that the Octave's startup directory has been set to some location other than where fun.m is located and that fun.m is not found?

However, in the original, the system command waits for the child to exit before it returns.  So you'll end up accumulating Octave processes until you run out of memory or the ability to execute a new process.  The following works for me to avoid that problem.  I added the call to "pause" so that I'd have a chance to kill the current process and terminate the loop.


## infloop.m

system ("echo 'pause (5); infloop; exit' | octave", false, "async");


BTW, the savannah bug tracker doesn't use ``` to indicate verbatim markup.  See the notes about markup tags here: https://savannah.gnu.org/bugs/?group=octave&func=additem

John W. Eaton <jwe>
Group administrator
Wed 26 Jan 2022 04:01:31 PM UTC, comment #1: 

What is the use case for this particular construction?

If you need an infinite loop just use looping structures while, for, or do/until with infinite bounds.

Examples


while (1)
...
endwhile

for i = 1 : Inf
endfor

do
...
until (0)


Rik <rik5>
Group administrator
Wed 26 Jan 2022 06:50:05 AM UTC, original submission:  

File fun.m:
```
system ("echo 'fun ; exit' | octave")
```

Expected infinite loop but stops in 2 iterations.

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by rik5 (Posted a comment)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2022-04-09 jwe StatusNeed Info Invalid / Not an Octave Bug
        Open/ClosedOpen Closed
    2022-03-07 rik5 Severity3 - Normal 2 - Minor
        Priority5 - Normal 3 - Low
    2022-01-26 rik5 StatusNone Need Info
        Summaryinfinite loop ends too quickly Coding infinite loops in Octave

    Back to the top

    Powered by Savane 3.13-d3ae.
    Corresponding source code