Dear Fred,
While your code does help in one area, it has a problem in another, i.e.:
Your code says there are three but to the programmer there are only two. The '' is just there to make the rest work. I suppose you can just remember that and change your indexes everywhere and hope someone else reading the code gets it.
Also, in:
( unbox unbox unbox box box box 6 ) ≡ ⊃ ⊃ ⊃ ⊂ ⊂ ⊂ 6
They are not equivalent at all. Each box adds additional levels of nesting as the programmer is specifying. Each ⊂ above is a null function. This is actually the main point. box always gives you an additional level of nesting regardless of data. ⊂ always gives you an additional level of nesting unless your data happens to be a scalar. What you end up with is dependent on the data. It is almost like saying that:
x times y gives the result of multiplying x by y, unless x is 88 then we add.
The operation shouldn't be dependent on the data.
Additionally, you would have to either encapsulate your idiom into a function or remember the extra steps everywhere - and remember when to use it and when not to use it.
I am sure there are many ways to skin a cat, or solve this problem. I think mine is cleaner.
Thanks for your input!
Blake