On further testing, it crashed because domain error raised inside event loop.
try replace P_C_paint=: [: or P_C_paint=: 3 : 0 1+'a' ) both crashed. > On 26 Jan 2022, at 1:42 PM, bill lam <[email protected]> wrote: > > oop sorry, I forgot to revert a change. > > Should be this one. > > require'gl2' > > L0=: 50 NB. initial length > A0=: 1r8p1 NB. initial angle: pi divided by 8 > dL=: 0.9 NB. shrink factor for length > dA=: 0.75 NB. shrink factor for angle > N=: 14 NB. number of branches > > L=: L0*dL^1+i.N NB. lengths of line segments > > NB. relative angles of successive line segments > A=: A0*(dA^i.N) +/\@:*("1) _1 ^ #:i.2 ^ N > > NB. end points for each line segment > P=: 0 0+/\@,"2 +.*.inv (L0,0),"2 L,"0"1 A > > NB. P_C_paint=: gllines_jgl2_ bind (10 <.@+ ,/"2 P-"1<./,/P) > P_C_paint=: gllines_jgl2_@<.@(10 + ,/"2 P-"1<./,/P) > NB. P_C_paint=: gllines_jgl2_@:<.@(10 + ,/"2 P-"1<./,/P) > > wd 0 : 0 > pc P closeok; > setp wh 250 300; > cc C isigraph; > set C sizepolicy expanding; > pas 0 0; > pshow; > ) > >> On 26 Jan 2022, at 1:16 PM, Henry Rich <[email protected]> wrote: >> >> On my system gllines is >> >> chkgl2@:('"C:/j903/bin/jqt.dll" gllines >+ i *i i' cd (; #))"1 >> >> for which passing an atom to an argument of type *i would be a domain error. >> >> Henry Rich >> >> >> On 1/26/2022 12:07 AM, bill lam wrote: >>> The issue is that >>> gllines_jgl2_ 01 >>> SHOULD raise a domain because incorrect number of parameters. The dll call >>> never executed and shouldn't crash. >>> >>> On Wed, 26 Jan 2022 at 1:04 PM Henry Rich <[email protected]> wrote: >>> >>>> gllines_jgl2_@<. 1 2 3.3 >>>> >>>> will execute as >>>> >>>> gllines_jgl2_ 01 >>>> gllines_jgl2_ 2 >>>> gllines_jgl2_ 3 >>>> >>>> which is an error. >>>> >>>> gllines_jgl2_@:<. 1 2 3.3 >>>> >>>> will execute as >>>> >>>> gllines_jgl2_ 1 2 3 >>>> >>>> which is what was intended. >>>> >>>> Henry Rich >>>> >>>> >>>> >>>> On 1/26/2022 12:00 AM, bill lam wrote: >>>>> gllines should already checked it received 2 parameters other 15!:0 would >>>>> raise a domain error fir incorrect number of parameters. >>>>> see the prototype of gllines in previous email. >>>>> >>>>> On Wed, 26 Jan 2022 at 12:57 PM Henry Rich <[email protected]> wrote: >>>>> >>>>>> gllines was being given one atom at a time, and it couldn't draw any >>>> lines. >>>>>> Henry Rich >>>>>> >>>>>> On 1/25/2022 11:55 PM, bill lam wrote: >>>>>>> Replace @ with @: worked. >>>>>>> >>>>>>> Any theory why it crashed with @ ? >>>>>>> >>>>>>>> On 26 Jan 2022, at 12:19 PM, Henry Rich <[email protected]> wrote: >>>>>>>> >>>>>>>> P_C_paint=: gllines_jgl2_@<.@(10 + ,/"2 P-"1<./,/P) >>>>>>>> >>>>>>>> seems wrong: I suggest >>>>>>>> >>>>>>>> P_C_paint=: gllines_jgl2_@:<.@(10 + ,/"2 P-"1<./,/P) >>>>>>>> >>>>>>>> Henry Rich >>>>>>>> >>>>>>>> >>>>>>>> On 1/25/2022 9:50 PM, bill lam wrote: >>>>>>>>> prototype of gllines is >>>>>>>>> gllines=: chkgl2 @: (('"',libjqt,'" gllines >',(IFWIN#'+'),' i *i i') >>>>>> cd (;#)) "1 >>>>>>>>> so that it expected integer array but a floating point data type was >>>>>> fed. JE should either signal a data type error or automatically do the >>>>>> converting, but that is another issue/bug. >>>>>>>>> I changed the line to >>>>>>>>> P_C_paint=: gllines_jgl2_ bind (10 <.@+ ,/"2 P-"1<./,/P) >>>>>>>>> then it work ok. >>>>>>>>> >>>>>>>>> However, your line still crashed. >>>>>>>>> P_C_paint=: gllines_jgl2_@<.@(10 + ,/"2 P-"1<./,/P) >>>>>>>>> >>>>>>>>> I suspected it couldn't coerce data to integer but I have no idea >>>>>> what's wrong. >>>>>>>>> >>>>>>>>>> On 20 Jan 2022, at 11:15 PM, Raul Miller <[email protected]> >>>>>> wrote: >>>>>>>>>> http://www.rosettacode.org/wiki/Fractal_tree#J >>>>>>>>>> >>>>>>>>>> The J implementation of the rosettacode fractal tree task now >>>> crashes >>>>>>>>>> (OSX Mojave 10.14.6) >>>>>>>>>> >>>>>>>>>> JVERSION >>>>>>>>>> Engine: j903/j64/darwin >>>>>>>>>> Release-a: commercial/2021-12-16T15:16:37 >>>>>>>>>> Library: 9.03.08 >>>>>>>>>> Qt IDE: 1.9.5/5.15.2(5.15.2) >>>>>>>>>> Platform: Darwin 64 >>>>>>>>>> Installer: J903 install >>>>>>>>>> InstallPath: /users/rauldmiller/applications/j903 >>>>>>>>>> Contact: www.jsoftware.com >>>>>>>>>> >>>>>>>>>> The xywh wd command and the rightmove and bottommove parameters are >>>> no >>>>>>>>>> longer valid. Simply removing them from the wd command list is >>>>>>>>>> sufficient to cause the crash. >>>>>>>>>> >>>>>>>>>> Alternatively, an updated wd command list also causes the crash: >>>>>>>>>> >>>>>>>>>> pc P closeok; >>>>>>>>>> setp wh 250 300; >>>>>>>>>> cc C isigraph; >>>>>>>>>> set C sizepolicy expanding; >>>>>>>>>> pas 0 0; >>>>>>>>>> pshow; >>>>>>>>>> >>>>>>>>>> The crash happens in the paint event handler (the qt window comes up >>>>>>>>>> fine with P_C_paint=: ]). >>>>>>>>>> >>>>>>>>>> Simplifying the represented data with N=:2 still produces the crash >>>>>>>>>> >>>>>>>>>> P_C_paint=: gllines_jgl2_@<.@(10 + ,/"2 P-"1<./,/P) >>>>>>>>>> >>>>>>>>>> still produces the crash. >>>>>>>>>> >>>>>>>>>> A stack backtrace looks like this: >>>>>>>>>> >>>>>>>>>> 0 CoreFoundation 0x00007fff4f8dfa7d >>>>>>>>>> __exceptionPreprocess + 256 >>>>>>>>>> 1 libobjc.A.dylib 0x00007fff7a10ea17 >>>>>>>>>> objc_exception_throw + 48 >>>>>>>>>> 2 CoreFoundation 0x00007fff4f8df8af >>>>>>>>>> +[NSException raise:format:] + 201 >>>>>>>>>> 3 AppKit 0x00007fff4d6fc411 >>>>>> _NSRunModal + 156 >>>>>>>>>> 4 AppKit 0x00007fff4d2e5bb8 >>>>>>>>>> -[NSApplication runModalSession:] + 241 >>>>>>>>>> 5 libqcocoa.dylib 0x0000000114623ed6 >>>>>>>>>> >>>> _ZN21QCocoaEventDispatcher13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE >>>>>>>>>> + 614 >>>>>>>>>> 6 QtCore 0x000000010fd6facf >>>>>>>>>> _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE + 431 >>>>>>>>>> 7 QtWidgets 0x0000000111ddae9e >>>>>>>>>> _ZN7QDialog4execEv + 526 >>>>>>>>>> 8 QtWidgets 0x0000000111e18a72 >>>>>>>>>> >>>> _ZL17showNewMessageBoxP7QWidgetN11QMessageBox4IconERK7QStringS5_6QFlagsINS1_14StandardButtonEES7_ >>>>>>>>>> + 354 >>>>>>>>>> 9 libjqt.dylib 0x000000011150247a >>>>>>>>>> >>>> _Z2mbNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_ >>>>>>>>>> + 12026 >>>>>>>>>> 10 libjqt.dylib 0x0000000111544c35 _ZL3wd1v >>>> + >>>>>> 10821 >>>>>>>>>> 11 libjqt.dylib 0x000000011154219b wd + 91 >>>>>>>>>> 12 libj.dylib 0x00000001166452b8 stdcalli >>>> + >>>>>> 280 >>>>>>>>>> 13 libj.dylib 0x0000000116636f85 jtcdexec1 >>>>>> + 4965 >>>>>>>>>> 14 libj.dylib 0x0000000116634ddc jtcd + >>>> 1164 >>>>>>>>>> On a tangentially related note, the links to doc.qt.io embedded in >>>>>>>>>> >>>> https://code.jsoftware.com/wiki/Guides/Window_Driver/ChildClasses#Styles_and_set_commands_common_to_all_controls >>>>>>>>>> are now invalid. >>>>>>>>>> >>>>>>>>>> FYI, >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Raul >>>>>>>>>> >>>> ---------------------------------------------------------------------- >>>>>>>>>> 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 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 >>>>>> ---------------------------------------------------------------------- >>>>>> 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 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 >> >> >> -- >> 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
