Hi Bill, Are
max =: 100 tss =: 0 1 0 0 0 , (3 5$5$0 1), (0 0 0 1 0 ) small enough? In this case "try ts" still crashes. In case it's useful, I reducing the "try" verb as well, with the following results: max=: 100 padrifshort=: ]`(max (,,[) ])@.(>&#) ts =: 0 1 0 0 0 1 0 0 0, (7 9$9$0 1), (0 0 0 1 0 0 0 1 0) NB. all of the below crash with bus error NB. try=: [: ( [+2 <./\ padrifshort)&.>/\@|. [: </. 0 (<0 0)} ] NB. try=: [: ( [+2 <./\ padrifshort)&.>/\@|. [: </. ] NB. try=: [: (2 <./\ padrifshort)&.>/\@|. [: </. ] NB. try=: [: (2 <./\ padrifshort)&.>/\ [: </. ] NB. try=: [: (2 <./\ ])&.>/\ [: </. ] NB. try=: [: (2 >./\ ])&.>/\ [: </. ] NB. try=: [: (2 <./\ ])&.>/\ </. try=: [: (2 <./\ ])&.>/\ </. NB. the following do not crash NB. try=: [: (>&#)&.>/\ [: </. ] NB. try=: [: (padrifshort)&.>/\ [: </. ] NB. try=: [: (2 <./\ ])&.>/ [: </. ] NB. try=: [: (2 #\ ])&.>/\ [: </. ] try ts I hope this helps. Jan-Pieter On Thu, Jan 6, 2022, 23:18 bill lam <[email protected]> wrote: > It's likely a 32-bit arm unaligned memory access issue. Can you check if it > will also crash for a small max and ts ? > > On Fri, 7 Jan 2022 at 3:39 AM Jan-Pieter Jacobs < > [email protected]> > wrote: > > > I was trying to debug my implementation of Dijkstra's algorithm and ran > > into this J crash: > > > > (AoC Day 15 spoiler ahead -- well sort off, the solution is not entirely > > correct, hence the debugging :p) > > > > ts is a snaking path of 0's from 0 0 to 9 9, and try1 (should) implement > > Dijkstra's algorithm for finding a path with a minimal sum of the nodes > > crossed. Something in my implementation is wrong (hints welcome), but > the J > > bug turned up when I wanted to debug this approach by adding a \ to keep > > intermediate results, which causes a bus error: > > > > try=: [: ([ + 2 <./\ padrifshort)&.>/\@|. [: </. 0 (<0 0)} ] > > ts =: 0 1 0 0 0 1 0 0 0, (7 9$9$0 1), (0 0 0 1 0 0 0 1 0) > > try1=: [: ([ + 2 <./\ padrifshort)&.>/@|. [: </. 0 (<0 0)} ] > > max=: 2e9 > > padrifshort=: ]`(max (,,[) ])@.(>&#) > > try1 ts NB. "works" no crash, but result is wrong. > > ┌─┐ > > │2│ > > └─┘ > > try ts > > Bus error > > NB. J crashed. > > > > For an explanation of the code, see ( > > http://www.jsoftware.com/pipermail/programming/2022-January/059538.html > ). > > > > My J version: > > JVERSION > > Engine: j903/j32/android > > Release-a: commercial/2021-12-17T11:10:19 > > Library: 9.03.08 > > Platform: Android 32 (armeabi-v7a) > > Installer: unknown > > InstallPath: /mnt/sdcard/Android/data/com.jsoftware.j.android/files > > Contact: www.jsoftware.com > > > > Jan-Pieter > > ---------------------------------------------------------------------- > > 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
