Hi Arthur,
I also find the leading invisible axis confusing at times. My solution was to
write the addon 'jig' which, in the jqt IDE, allows you to use tooltips and an
SVG display to make some of these issues more understandable. I also created a
lab that takes you through the user interface if you are interested. Henry's
'dissect' is also an analytical tool that creates a display with some of this
information and much more.
For your second issue with 5!:1 and 5!:0, this may help.
atom=.'a'
5!:1 'atom'
|domain error
| 5!:1'atom'
5!:1 <'atom' NB. needs the name to be boxed
┌─────┐
│┌─┬─┐│
││0│a││
│└─┴─┘│
└─────┘
( 5!:1 <'atom') 5!:0 ''
|syntax error
| (5!:1<'atom')5!:0''
( 5!:1 <'atom') 5!:0 NB. 5!0 doesn't need an argument as it is an
adverb that returns the inverse of 5!:1
a
Cheers, bob
> On Aug 14, 2020, at 20:58, Arthur Anger <[email protected]> wrote:
>
> One problem I have encountered is "invisible" leading unit axes. I can find
> them by applying ShapeOf to an object at each boxing level, but I thought
> that they should show up in an Atomic Representation covering all levels. I
> don't find them there:
> atom=: 'a' [ singlet=: ,'a'
> ($ atom); $ singlet
> ┌┬─┐
> ││1│
> └┴─┘ 5!:1 'atom' ; 'singlet'
> ┌─────┬─────┐
> │┌─┬─┐│┌─┬─┐│
> ││0│a│││0│a││
> │└─┴─┘│└─┴─┘│
> └─────┴─────┘
> I don't see how the shape difference is captured in the Atomic
> Representation. There must be yet another level of description.
>
> Furthermore, I expected that I could retrieve the original forms, but must
> not understand the documentation properly:
> (5!:1 'atom') 5!:0 ''
> |domain error
> | ( 5!:1'atom')5!:0''
>
> Thanks for any enlightenment.
> --Art
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm