Right. Here's a variation on Elias's solution that gets IOTA ⍬ right,
but doesn't handle the singleton cases correctly!

IOTA ← {⊃∘.,/(⍳¨⍵),⊂⊂⍬}

On 3 March 2016 at 01:08, Nick Lobachevsky <ibeam2...@gmail.com> wrote:
> There is at least one other degenerate case, namely the "legacy"
> singleton, or one element vector.  With a scalar argument, monadic
> iota returns a result depth one.  With a vector argument, iota returns
> a result depth two.  Except when there is only one element.
>
>       ≡⍳⍳0 ⍝ can't find zilde
> 2
>       ≡⍳⍳1 ⍝ singleton vector case returns result depth one
> 1
>       ≡⍳,1
> 1
>       ≡⍳,2
> 1
>       ≡⍳,42
> 1
>       ≡⍳(15⍴1)⍴1 ⍝ matrix singleton thankfully fails
> RANK ERROR
>       ≡⍳⍳2
> 2

Reply via email to