Are my two items below a dead issue?

Thanks!

Blake


On Tue, Jul 8, 2014 at 9:58 PM, Blake McBride <[email protected]> wrote:

> I think the layout function need two modifications:
>
> 1.  enable ^C
>
> 2.  at least for large data, output as you go rather than format the whole
> thing and then output the whole thing
>
> --blake
>
>
>
> On Tue, Jul 8, 2014 at 9:27 PM, Elias Mårtenson <[email protected]> wrote:
>
>> There is already the SIGINT signal which is processed by GNU APL to
>> interrupt a function execution. However, this interruptability is not
>> extended to the layout function.
>>
>>
>> On 9 July 2014 09:09, Peter Teeson <[email protected]> wrote:
>>
>>> In Sharp APL (IPSA) we had a "panic int" which interrupted whatever was
>>> being computed after a predetermined time.
>>> It was inherent to the interpreter because we ran a timesharing system.
>>> I don't recall the exact details but it went something like this;
>>>
>>> 1) Workspace gets swapped in for execution and is given a quantum of CPU
>>> time
>>> 2) At the end of that quantum a second but quite small (relative to the
>>> normal ) additional amount of CPU was allocated
>>>  to see if that would allow an interrupt at a "suitable" point in the
>>> function/operation that was going on.
>>> 3) If that extra time was not sufficient the workspace was arbitrarily
>>> interrupted and AFAICR the user got )CLEAR WS.
>>>
>>> That's probably not exactly correct (I never read the actual assembly
>>> code for that part of the interpreter).
>>> But the idea worked for us.
>>>
>>> On a single user system there is no real need for a specific quantum;
>>> the OS takes care of  scheduling.
>>> But perhaps a "panic int" concept in some form or other might be useful?
>>> Perhaps allowing the user to decide if they want to continue?
>>> Perhaps with a default value? Perhaps assignable by the user?
>>>
>>> respect…
>>>
>>> Peter
>>>
>>> On 2014-07-08, at 1:50 PM, Blake McBride <[email protected]> wrote:
>>>
>>> > If I do:
>>> >
>>> >       z←⍳1000000
>>> >
>>> > the operation is very fast.  But if I do:
>>> >
>>> >       ⍳1000000
>>> >
>>> > it is very slow, presumably because it is formatting the whole thing
>>> for display.  No problem.
>>> >
>>> > The problem is that during its effort to format for display, I cannot
>>> use ^C.  ^C appears to work fine in normal situations - but not during the
>>> format for display time.  During format-for-display time ^C is ignored.
>>> >
>>> > This caused me a problem when I accidentally mis-typed something.  The
>>> mis-type caused something very large to be displayed.  In fact, it was so
>>> large that my machine started paging.  I was unable to use ^C to stop it.
>>>  After waiting an hour, I had to kill the process and loose my work.
>>> >
>>> > Thanks.
>>> >
>>> > Blake
>>> >
>>>
>>>
>>>
>>
>

Reply via email to