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