Hi Ian,
I concur with Mike. Your fix for uu version 2.1.24 allows TABULA to run in the
beta g version of J901.
Well done! Doing surgery blindfolded is a skill few possess!
It may be worthwhile to let Henry know, since that points out a subtle
difference between 807 and 901.
Cheers, bob
load 'math/tabula'
test ''
+++ BUILTIN TEST OF UU [CAL, TABULA]
--- VERSION of UU -- 2.1.24
--- VERSION of CAL -- 2.1.21
--- VERSION of TABULA -- 2.1.12
--- TP*_z_ paths:
┌────┬────────────────────────────────────────────┐
│TPAR│/users/bobtherriault/tabula-user/ttarchive │
├────┼────────────────────────────────────────────┤
│TPAT│/users/bobtherriault/j901/addons/math/tabula│
├────┼────────────────────────────────────────────┤
│TPCA│/users/bobtherriault/j901/addons/math/cal │
├────┼────────────────────────────────────────────┤
│TPCL│/users/bobtherriault │
├────┼────────────────────────────────────────────┤
│TPMC│/users/bobtherriault/j901/addons/math/cal │
├────┼────────────────────────────────────────────┤
│TPMT│/users/bobtherriault/j901/addons/math/tabula│
├────┼────────────────────────────────────────────┤
│TPMU│/users/bobtherriault/j901/addons/math/uu │
├────┼────────────────────────────────────────────┤
│TPNG│/users/bobtherriault/j901/addons/math/tabula│
├────┼────────────────────────────────────────────┤
│TPSA│/users/bobtherriault/j901/addons/math/cal │
├────┼────────────────────────────────────────────┤
│TPTA│/users/bobtherriault/j901/addons/math/tabula│
├────┼────────────────────────────────────────────┤
│TPTT│/users/bobtherriault/tabula-user │
├────┼────────────────────────────────────────────┤
│TPUC│/users/bobtherriault/j901/addons/math/uu │
├────┼────────────────────────────────────────────┤
│TPUF│/users/bobtherriault/j901/addons/math/uu │
├────┼────────────────────────────────────────────┤
│TPUM│/users/bobtherriault/j901/addons/math/uu │
├────┼────────────────────────────────────────────┤
│TPUT│/users/bobtherriault/j901/addons/math/tabula│
├────┼────────────────────────────────────────────┤
│TPUU│/users/bobtherriault/j901/addons/math/uu │
└────┴────────────────────────────────────────────┘
JVERSION
Engine: j901/j64/darwin
Beta-g: commercial/2019-05-28T14:58:30
Library: 9.01.07
Qt IDE: 1.8.3/5.12.3
Platform: Darwin 64
Installer: J901 install
InstallPath: /users/bobtherriault/j901
Contact: www.jsoftware.com
> On Jun 9, 2019, at 2:09 AM, 'Mike Day' via Chat <[email protected]> wrote:
>
> I had a look as noone has come back to you yet.
>
> It seems ok in J9 beta (JQt) -
> it now starts without J grumbling, as it did earlier, about non-definition
> of eval,
> and fires up an interactive window, headed
> "J Tabula ~addons/math/cal/SAMPLE.ijs"
> with lots of
> menu buttons (file, edit, etc),
> icons with tips showing at the bottom of the window,
> and
> tabs (T-table, Constants, etc),
> with the body reading
> "plot test using Function plotline"
>
>
> VERSION_uu_
> 2.1.24
>
> Also:
> EVAL__
> scalar num expression
>
> and function eval appears as in your note.
>
> Similar behaviour in JQt, version 8.07.
>
> Cheers,
>
> Mike
>
>
>
>
> On 08/06/2019 21:21, Ian Clark wrote:
>> Hi Bob,
>>
>> Thanks for offering to investigate with j901.
>>
>> eval y --evaluates string: (y) to return a guaranteed real scalar
>> floating-point number.
>> It accepts an optional scalar Boolean x-arg, default 0.
>> If x-:1 then it returns the imaginary part of (".y)
>> It accept "Excel-type" numerals and converts them to J numerals, e.g.
>> '3/4' --> '3%4'
>> '-5.1E-9' --> '_5.1e_9'
>> It's designed to accept whatever the (non-J-savvy) TABULA user throws at
>> it, without crashing or failing to deliver something appropriate. It's
>> tooled-up with diagnostics.
>>
>> I've rephrased the suspect definition of: eval and released math/uu version
>> 2.1.24 on JAL.
>> Please upgrade math/uu with pacman, run TABULA and verify:
>>
>> VERSION_uu_
>> 2.1.24
>> eval_uu_
>> 3 : 0"1
>>
>>
>>
>>
>>
>> 0 eval y
>> :
>> EVAL__=:''
>> if. 0=#y do. BADFLOAT [EVAL__=: 'empty'
>> elseif. _1=4!:0<y do. BADFLOAT [EVAL__=: 'unassigned id'
>> elseif. 0=4!:0<y do. x evalRC y
>> elseif. do.
>> x evalRC '/%-_Ee'charsub ,>y
>> end.
>> )
>>
>> Even if this fixes eval, the construct: (default&$: : (4 : 0)"1) is used
>> elsewhere,
>> viz to define (in locale 'uu'): format, formatOUT, cnvi, deslash, dotted,
>> slash1, ucode, ucods, udat,
>> make_units, s4x, spout, viewtables, uu.
>> I've not altered these, so some of these may be missing too.
>>
>> If all of these are present, and intact, but eval is still undefined, then
>> maybe it isn't a bug in j901, but something it does differently that
>> exposes a bug of my own.
>>
>> Ian Clark
>>
>> On Sat, 8 Jun 2019 at 07:19, 'robert therriault' via Chat <
>> [email protected]> wrote:
>>
>>> Hi Ian,
>>>
>>> I looked at the script and I wondered about those blank lines. I also
>>> tried messing around with various declarations of eval, but each attempt
>>> failed at different points. I am on my iPad for the next 24 hours so I am
>>> not in a position to figure it out. If you could let me know the role eval
>>> plays in the script, it would be helpful, as it shows up in a number of
>>> different places. If I had a guess, I would say that the issue may have
>>> something to do with the way that the verb is declared. Standard approach
>>> to me would be to have 0&$: on the second line and follow with a single
>>> line of : to separate monad and dyad, but I don’t see why your approach
>>> would not work and definitely it does for j807.
>>>
>>> All I have for now, maybe more if I play a bit with it on Sunday.
>>>
>>> Cheers, bob
>>>
>>> Sent from my iPad
>>>
>>>> On Jun 7, 2019, at 6:49 PM, Ian Clark <[email protected]> wrote:
>>>>
>>>> Bob -- I don't know what's going on here. And not being able to run j90,
>>> I
>>>> can't find out.
>>>>
>>>> Am I hitting a bug in j901 interpretation?
>>>> j901 (but not j807) just seems to be ignoring the definition of eval,
>>> which
>>>> is (sic!):
>>>>
>>>> eval=: 0&$: : (4 : 0)"1
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> EVAL__=:''
>>>> if. 0=#y do. BADFLOAT [EVAL__=: 'empty'
>>>> elseif. _1=4!:0<y do. BADFLOAT [EVAL__=: 'unassigned id'
>>>> elseif. 0=4!:0<y do. x evalRC y
>>>> elseif. do.
>>>> x evalRC '/%-_Ee'charsub ,>y
>>>> end.
>>>> )
>>>>
>>>> The empty lines may be confusing the interpreter. They are caused by
>>>> decommenting during the build process. You might try editing
>>>> ~addons/math/uu/uu.ijs to remove the blank lines, and see if that makes a
>>>> difference.
>>>>
>>>> I'm also suspicious of how j901 might be interpreting the header line:
>>>> eval=: 0&$: : (4 : 0)"1
>>>> The verb definition is rather on the complicated side. You might try
>>>> additional parentheses:
>>>> eval=: (0&$: : (4 : 0))"1
>>>> or replacing the "def" line with a simpler way of defining a monad/dyad
>>>> with defaulted (x).
>>>>
>>>> It just puzzles me that j901 can skate through the definition of eval
>>> when
>>>> loading uu.ijs without either creating the verb or raising an error
>>>> condition.
>>>>
>>>> Another possibility (though I don't see how) is that eval_uu_ is indeed
>>>> getting defined, but too late to save
>>>> uvalu=:eval openv
>>>> from crashing with a value error.
>>>>
>>>> The above line is executed by start_uu_ as part of the verb: make_units.
>>>> But it's not actually start_uu_ that gets executed, but something like
>>>> start__uun, because locale 'uu' is a class that math/cal instantiates.
>>>> Might that be concealing the definition of eval_uu_?
>>>>
>>>> Without an AVX computer, I'm just floundering around in the dark.
>>>> (@Henry -- do you read the Chat forum? Or should I cross-post this to the
>>>> general forum?)
>>>> If I don't get an answer to this, I shall have to edit RELEASE=:… in
>>>> math/uu/manifest.ijs to state it is not supported by J releases later
>>> than
>>>> j807.
>>>>
>>>> Ian
>>>>
>>>> On Fri, 7 Jun 2019 at 21:19, 'robert therriault' via Chat <
>>>> [email protected]> wrote:
>>>>
>>>>> Same situation for j901, although from the error report it looks like
>>> you
>>>>> added a line. J807 seems to load without error.
>>>>>
>>>>> Cheers, bob
>>>>>
>>>>> load 'math/tabula'
>>>>> |value error: eval
>>>>> | uvalu=:eval openv
>>>>> |[-1867] /users/bobtherriault/j901/addons/math/uu/uu.ijs
>>>>> test ''
>>>>> +++ BUILTIN TEST OF UU [CAL, TABULA]
>>>>> --- VERSION of UU -- 2.1.23
>>>>> --- VERSION of CAL -- 2.1.21
>>>>> --- VERSION of TABULA -- 2.1.12
>>>>> --- TP*_z_ paths:
>>>>> ┌────┬────────────────────────────────────────────┐
>>>>> │TPAR│/users/bobtherriault/tabula-user/ttarchive │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPAT│/users/bobtherriault/j901/addons/math/tabula│
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPCA│/users/bobtherriault/j901/addons/math/cal │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPCL│/users/bobtherriault │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPMC│/users/bobtherriault/j901/addons/math/cal │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPMT│/users/bobtherriault/j901/addons/math/tabula│
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPMU│/users/bobtherriault/j901/addons/math/uu │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPNG│/users/bobtherriault/j901/addons/math/tabula│
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPSA│/users/bobtherriault/j901/addons/math/cal │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPTA│/users/bobtherriault/j901/addons/math/tabula│
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPTT│/users/bobtherriault/tabula-user │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPUC│/users/bobtherriault/j901/addons/math/uu │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPUF│/users/bobtherriault/j901/addons/math/uu │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPUM│/users/bobtherriault/j901/addons/math/uu │
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPUT│/users/bobtherriault/j901/addons/math/tabula│
>>>>> ├────┼────────────────────────────────────────────┤
>>>>> │TPUU│/users/bobtherriault/j901/addons/math/uu │
>>>>> └────┴────────────────────────────────────────────┘
>>>>>
>>>>>> On Jun 7, 2019, at 1:11 PM, Ian Clark <[email protected]> wrote:
>>>>>>
>>>>>> Please use pacman to upgrade math/uu to 2.1.23
>>>>> ----------------------------------------------------------------------
>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>
>>>> ----------------------------------------------------------------------
>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>> ----------------------------------------------------------------------
>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>
>
> ---
> This email has been checked for viruses by Avast antivirus software.
> https://www.avast.com/antivirus
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm