This was covered quite a while back, Mike; you probably missed it. Not hiding the content of a locked function is intentional as it goes against the spirit of open software.
Take a look at quad-FX: the optional left argument can be used to prevent suspension. I use this in the iso-apl-cf package. On Tue, Sep 08, 2015 at 06:33:08PM -0700, Mike Duvos wrote: > The workings of locked functions are supposed to be completely > concealed from the user, and if an error appears in one, it is > considered to have occurred in the line invoking the locked function, > as if it were a primitive. > We can see this in APL2. > ∇FOO > [1] BAR⍫ > ∇BAR > [1] →1∇ > > FOO > INTERRUPT > FOO > ^ > > In GNU APL, however, we can get suspensions in locked functions and the > things they call on our state indicator. > FOO > ^CATTENTION > BAR[1] →1 > ^ > )si > BAR[1] > FOO[1] > ⋆ > I was wondering what the standard says about this, as it is definitely > contrary to the APL2 documentation.
