bug-apl
[Top][All Lists]
Advanced

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

)copy with libapl/apl_exec


From: enztec
Subject: )copy with libapl/apl_exec
Date: Tue, 26 Jul 2022 13:34:48 -0600

Hi Jürgen,

i was able to get )copy working with libapl

i had to define ⎕pw←80 in the fpc program right after init_libapl() to get rid 
of the divbyzero runtime exception from apl_exec(')copy aa.apl');

if you remember, i had to originally put a ⎕pw←80 in src/UCS_strings.cc (for 
libapl.so compile only) or else libapl gave a divbyzero runtime exception when 
it starts

I can now call apl_exec(')copy aa.apl');  which contains any number of fns in 
it but all the fns headers give the following error when they are encountered 
in order from the )copy buffer and sequentiall apl_exec('∇fns#'); fns header 
calls.

SYNTAX ERROR+
Tokenizer: No token for Unicode U+2207 (∇)
Input: prep        (this is the name of the first fns in my aa.apl but repeated 
for each new fns as i get them from the )copy buffer)

the error is from line 120 in src/Tokenizer.cc - i tried to find something in 
Tokenizer.hh Token.hh and UCS_string.hh to fix but to no avail

to create the fns - right after the apl_exec(')copy aa.apl'); i have to run 
apl_exec('∇prep'); myself to open a good fns header so the fns lines that are 
in the )copy buffer can get put into the fhs until the ∇ closes the fns 
definition

i have to repeat this for each fns in the aa.apl after the one time 
apl_exec(')copy aa.apl'); i just have to keep track of the order of the fns 
names in aa.apl.

if there are 4 fns in aa.apl but only run 3 apl_exec('∇fns#') then the 4th fns 
stays in the buffer until i do the 4th apl_exec('∇fns4'); - i can run a lot of 
stuff and then get the 4th so nothing seems to interfer with the )copy buffer? 
so the apl_exec uses a different buffer for it's output?
if i run apl_exec('∇fns5'); with only 4 fns in aa.apl i get the rest of aa.apl 
in it but with no closing ∇ definitions i get the following behavior

if the last fns in the aa.apl (or the above ∇fns5 example) and for example the 
fns has 4 lines in it and no closing ∇ then there is a fns editing line [5] 
displayed and i can add more lines or close the fns manually with ∇ - however 
in order to save the changes to the fns i have to edit aa.apl

enztec



reply via email to

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