Congratulations on a fine piece of work.
Henry Rich
On 11/14/2020 12:15 AM, Arthur Anger wrote:
In August I wrote, 'One problem I have encountered is "invisible" leading unit
axes.' Raul Miller responded with, '... Here's a cruder mechanism, which borrows from
the apl2 display mechanism -- stuffing the shape of each array into its formatted
representation.' Bob Therriault then suggested his addon 'jig' and Henry Rich's
'dissect', which display structural information when operating in the JQT environment.
Not wishing to spend a lot of time learning another layer of environment, I spent a lot of time
instead on embellishing Raul's "mechanism", while gaining experience in the use of
recursion--and noting the often disruptive prevalence of "invisible" leading unit axes,
frequently encountered after opening boxed values.
My script now resides in File:CTScan.ijs, offering a computerized tomographic
scan of all the internal components of a J data value. It reports atop each
subarray its depth, level, shape, and datatype. It offers options to constrain
analysis to limited portions of the components, and to vary the format of the
display. Additionally, the content-formatting routine, which performs some
modest compaction in the display of certain types of higher-rank or nested
arrays, can be called independently by other applications.
Here are two brief examples; a greater variety will be found in the script's
'help' note:
NB. Much of this structure is unclear in the default display, unlike the
scan--
] samp=: ((< (^ 1) , o. 1) ; 0 3 $ 'abc') ,: a: ; (<< i. 1 1 1 2)
┌─────────────────┬─────┐
│┌───────────────┐│ │
││2.71828 3.14159││ │
│└───────────────┘│ │
├─────────────────┼─────┤
│┌┐ │┌───┐│
│││ ││0 1││
│└┘ │└───┘│
└─────────────────┴─────┘
1 1 1 CTScan samp
┌0\2: 2 2bx────────────────────────────┐
│┌1\1: bx──────────┐ ┌1\0: 0 3ch┐ │
││┌2\0: 2fl───────┐│ └──────────┘ │
│││2.71828 3.14159││ │
││└───────────────┘│ │
│└─────────────────┘ │
│┌1\1: bx───┐ ┌1\1: bx─────────┐│
││┌2\0: 0bl┐│ │┌2\0: 1 1 1 2in┐││
│││ ││ ││0 1 │││
││└────────┘│ │└──────────────┘││
│└──────────┘ └────────────────┘│
└──────────────────────────────────────┘
0 0 0 CTScan samp
┌0\2: 2 2bx────────────────────
┌1\1: bx────────┌1\0: 0 3ch
┌2\0: 2fl───────└──────────
│2.71828 3.14159
└───────────────
┌1\1: bx─ ┌1\1: bx───────
┌2\0: 0bl ┌2\0: 1 1 1 2in
│ │0 1
└──────── └──────────────
Please send bug reports directly to [email protected]. Complaints and suggestions
for possible improvements, however, may deserve wider discussion. Thanks.
--Art
----------------------------------------------------------------------
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