Henry wrote: > The problem was with the form [&.>@:(<"0) 'ab' (used in x2b).
x2b is defined as: [: (#~ ([: +./\. ' '&~:))&.> <"1 so I guess that was a typo. But I get the idea. So… no need for me to make any changes to 'format/zulu' just yet. ASIDE: --but when I do, I'll throw away the entire implementation. Zulu addresses an enduring need for the J beginner wanting to develop code for distribution. But it's deprecated for operational use. Zulu is an awful example of the edge-case 'tail' wagging the JAL 'dog'. If we ever get a *usable* addon, or a primitive (?), which comprehensively supports dictionaries, or even just collections of strings, then I hope & pray it eats Zulu for breakfast. Zulu's aims could be met by publishing a 4x4 grid of recommended *consistent* conversions between the 4 common "strings" formats: b - boxed f - LF-separated o - open x - matrix See the lab: Strings conversion package. WHAT'S MORE: A user-facing app doing smart things with LF-separated strings must adopt a policy towards final LF, especially for handling a collection of substrings containing 0 or 1 members. Zulu adopts the wrong policy. And pays for it with lots of slow edge-case code. On Wed, 25 May 2022 at 18:24, Henry Rich <[email protected]> wrote: > Fixed for next beta. The problem was with the form > > [&.>@:(<"0) 'ab' > > (used in x2b). The <"n created virtual blocks but erroneously flagged > them as inplaceable. > > Workaround: replace (<"n) with (<"<"n). > > Henry Rich > > On 5/24/2022 8:25 PM, Ian Clark wrote: > > Note: Addon 'format/zulu' does not crash 903 or earlier. > > > > > > JVERSION > > > > Engine: j904/j64/darwin > > > > Beta-d: commercial/2022-05-19T20:41:44 > > > > Library: 9.04.01 > > > > Qt IDE: 2.0.3/6.2.4(6.2.4) > > > > Platform: Darwin 64 > > > > Installer: J904 install > > > > InstallPath: /applications/j904 > > > > Contact: www.jsoftware.com > > > > > > Addon 'format/zulu' is required by various addons, notably math/tabula. > > > > If loaded directly or indirectly by your ~config/startup.ijs > > > > then JQt will terminate without showing output. > > > > > > jconsole will terminate also, but gives a briefer, clearer crash report: > > > > > > jconsole(2607,0x104ba4580) malloc: *** error for object 0x138091fc0: > > pointer being freed was not allocated > > > > jconsole(2607,0x104ba4580) malloc: *** set a breakpoint in > > malloc_error_break to debug > > > > zsh: abort /Applications/j904/bin/jconsole > > > > > > Saving session... > > > > ...copying shared history... > > > > ...saving history...truncating history files... > > > > ...completed. > > > > > > [Process completed] > > > > > > The crash is caused by execution of a verb: zutest_zulu_ . > > > > This verb gets executed as the final step in loading addon 'format/zulu' > . > > It contributes nothing to the functionality of this suite of string > > utilities, but gives all the working verbs a thorough test. > > > > > > I hope to find out why it crashes before the weekend. Meanwhile, here is > a > > workaround. > > > > It won't affect the operational behavior of the addon, but it's like > > turning off the fire alarms. > > > > Launch either jqt or jcon (any recent version)… > > > > > > STEP 1 > > > > open'~addons/format/zulu/zutest.ijs' > > > > > > STEP 2 > > > > Comment-out lines 64-66: > > > > > > ok1=. ; 0 zutest each ;:'zu z1 z0' > > > > ok2=. ;0j1 zutest each ;:'zu z1 z0' NB. for conversions: a2* > > > > ZUTEST_z_=: ok1 , ok2 > > > > > > STEP 3 > > > > Save the updated script. > > > > > > Now you can triger the crash at will in either JQt or jcon like this: > > > > > > load 'format/zulu' NB. should not crash now > > > > 0 zutest 'zu' NB. crashes > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > > -- > This email has been checked for viruses by AVG. > https://www.avg.com > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
