Hi Programmer, thank you for reporting this problem. I tried to reproduce it under Linux MInt, but the problem does not occur there. So I need some help from your side. My first question is: which compiler are you using? In GNU APL, ⎕EA is implemented as a macro,. That means is executed in APL rather than in C/C++. The macro code of ⎕EA is this (see file src/Macro.def): ∇ Z←A Z__A_Quad_EA_B B;RC;ET;RES [1] (RC ET RES)←⎕EC B ◊ →(RC=0 1 2 3 4 5)/ERR VAL COM 0 BRA ESC [2] ERR: ⎕ES 100 $FFFF, (⊂,A), ET ⍝ error [3] VAL: Z←RES ◊ →0 ⍝ non-committed value [4] COM: ⎕ES 100 $FFFE RES ⍝ committed value [5] BRA: ⎕ES 100 $FFFD RES ⍝ →N [6] ESC: ⎕ES 100 $FFFC ⍝ → [7] ∇ So my second question is: does the problem also occur if you replace ⎕EA by the defined function Z__A_Quad_EA_B above? If so then the problem is either in ⎕EC or in ⎕ES and we (read: you) need to find out which and why. Regarding ⎕TRACE and ⎕STOP, they are described in the ISO standard for APL 2 and are vaguely related to T∆ and S∆ in IBM APL2. S∆FOO←lines is supposedly equivalent to ⎕STOP lines (and should stop if one of the lines is reached. Dito for ⎕TRACE. Best Regards, Jürgen On 2/23/20 10:20 AM,
program...@verisimilitudes.net wrote:
I've constructed a basic example which crashes GNU APL under OpenBSD; it explains the cause, but the notice may still be valuable:'1'⎕EA'1÷0' Cannot show function call stack since execinfo.h seems not to exist on this OS (WINDOWs ?). Process apl finished I'm also interested in having some of my programs listed in the GNU APL Community page. Follows are the relevant pages; there's another article, 2017-02-02, but this may be considered too vulgar: http://verisimilitudes.net/2019-08-08 gopher://verisimilitudes.net/12019-08-08 http://verisimilitudes.net/2019-12-06 gopher://verisimilitudes.net/12019-12-06 My relevant code should all be classified as L1 portability, as I strive for portable and so correct APL programs. The programs are all licensed under the AGPLv3. Another reason I send a message here is because I'm having issues debugging my 2020-02-20, which I'd also care to have included once I've finished correcting it. The ⎕TRACE doesn't provide enough information for me and I'm unaware of how to properly use ⎕STOP, managing to crash GNU APL under OpenBSD whilst using it. I'd appreciate help in using these two commands to their fullest, if one is willing to offer it. |
- An Issue With Execute Alternate Under OpenBSD, Libr... Programmer
- Re: An Issue With Execute Alternate Under Open... Dr . Jürgen Sauermann
- Re: An Issue With Execute Alternate Under Open... Brian Callahan
- Re: An Issue With Execute Alternate Under ... Dr . Jürgen Sauermann
- Re: An Issue With Execute Alternate Un... Brian Callahan
- Re: An Issue With Execute Alternat... Brian Callahan
- Re: An Issue With Execute Alt... Dr . Jürgen Sauermann
- Re: An Issue With Execute... Brian Callahan
- Re: An Issue With Exe... Programmer
- Re: An Issue With Exe... Brian Callahan
- Re: An Issue With Exe... Programmer