bug-apl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-apl] Why is there a stack trace when I caused a length error?


From: Juergen Sauermann
Subject: Re: [Bug-apl] Why is there a stack trace when I caused a length error?
Date: Wed, 15 Apr 2015 12:11:43 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.4.0

Hi Alex,

the stack trace is probably explicitly triggered for debugging purposes.

The parallel code is not yet complete, in particular error cases are not handled yet.

Most likely what happens is that one thread stops due to an error while the other threads
still wait for the stopped thread to complete. If the stopped thread starts a new parallel operation
then it sees that the previous operation has not finished yet and complains.

/// Jürgen


On 04/15/2015 04:01 AM, address@hidden wrote:
Hi bug-apl,
 
I'm not sure if this is a error, or if I somehow configured a setting to do this (which I doubt happened).
I was not booted out from APL. 
 

(⊂(⍳⍴f)-1)+¨f

*** Attempt to start a new joblist at ScalarFunction.cc:426 while joblist from ScalarFunction.cc:426 is not finished

----------------------------------------
-- Stack trace at Parallel.hh:457
----------------------------------------
0x7f3c04cdeec5 __libc_start_main
0x442d35 main
0x577bad Workspace::immediate_execution(bool)
0x48c39a Command::process_line()
0x48c478 Command::do_APL_expression(UCS_string&)
0x49756b Executable::execute_body() const
0x5254e0 StateIndicator::run()
0x4cc644 Prefix::reduce_statements()
0x4c7165 Prefix::reduce_A_F_B_()
0x521726 Bif_F12_MINUS::eval_AB(Value_P, Value_P)
0x51a7a4 ScalarFunction::eval_scalar_AB(Value_P, Value_P, ErrorCode (Cell::*)(Cell*, Cell const*) const)
========================================
LENGTH ERROR
(⊂(⍳⍴f)-1)+¨f
^           ^


Also, I am ⎕io←1

and here is f:

f←8⍴0 ⍝ prolog ≡1
(,f)[⍳8]←00 00 00 00 00 00 00 00
((⎕IO+0)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+0)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+0)⊃f))[24+⍳6]←24 25 26 27 28 29
((⎕IO+1)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+1)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+1)⊃f))[24+⍳6]←24 25 26 27 28 29
((⎕IO+2)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+2)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+2)⊃f))[24+⍳6]←24 25 26 27 28 29
((⎕IO+3)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+3)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+3)⊃f))[24+⍳6]←24 25 26 27 28 29
((⎕IO+4)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+4)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+4)⊃f))[24+⍳6]←24 25 26 27 28 29
((⎕IO+5)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+5)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+5)⊃f))[24+⍳6]←24 25 26 27 28 29
((⎕IO+6)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+6)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+6)⊃f))[24+⍳6]←24 25 26 27 28 29
((⎕IO+7)⊃f)←⊂30⍴0 ⍝ prolog ≡2
(,((⎕IO+7)⊃f))[⍳24]←0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
(,((⎕IO+7)⊃f))[24+⍳6]←24 25 26 27 28 29

 

 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]