Looking at it further, I realise you need do disclose the result in order
to make them equivalent:

*      IOTA ← {⊃∘.,/⍳¨⍵}*

Regards,
Elias

On 2 March 2016 at 10:19, Elias Mårtenson <loke...@gmail.com> wrote:

> I don't know about a loop, but wouldn't this do the same thing?
>
> *    IOTA ← {∘.,/⍳¨⍵}*
>
> Regards,
> Elias
>
> On 2 March 2016 at 09:57, Christian Robert <christian.rob...@polymtl.ca>
> wrote:
>
>> I have this function,
>>
>>       ∇IOTA[⎕]∇
>>     ∇
>> [0]   z←IOTA v
>> [1]   z←⍳↑v
>> [2]   v←1↓,v
>> [3]  Loop: →(0=⍴v)/0
>> [4]   z←z∘.,⍳↑v
>> [5]   v←1↓v
>> [6]   →Loop
>>     ∇
>>
>>       ]boxing 24
>>
>>       IOTA 0
>> ┌⊖┐
>> │0│
>> └─┘
>>       IOTA 10
>> ┌10──────────────────┐
>> │1 2 3 4 5 6 7 8 9 10│
>> └────────────────────┘
>>       IOTA 2 3
>> ┌3────────────────┐
>> 2┌2──┐ ┌2──┐ ┌2──┐│
>> ││1 1│ │1 2│ │1 3││
>> │└───┘ └───┘ └───┘│
>> │┌2──┐ ┌2──┐ ┌2──┐│
>> ││2 1│ │2 2│ │2 3││
>> │└───┘ └───┘ └───┘│
>> └∊────────────────┘
>>       IOTA 2 3 5
>> ┌5──────────────────────────────────────┐
>> 2┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐│
>> ││1 1 1│ │1 1 2│ │1 1 3│ │1 1 4│ │1 1 5││
>> 3└─────┘ └─────┘ └─────┘ └─────┘ └─────┘│
>> │┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐│
>> ││1 2 1│ │1 2 2│ │1 2 3│ │1 2 4│ │1 2 5││
>> │└─────┘ └─────┘ └─────┘ └─────┘ └─────┘│
>> │┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐│
>> ││1 3 1│ │1 3 2│ │1 3 3│ │1 3 4│ │1 3 5││
>> │└─────┘ └─────┘ └─────┘ └─────┘ └─────┘│
>> │                                       │
>> │┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐│
>> ││2 1 1│ │2 1 2│ │2 1 3│ │2 1 4│ │2 1 5││
>> │└─────┘ └─────┘ └─────┘ └─────┘ └─────┘│
>> │┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐│
>> ││2 2 1│ │2 2 2│ │2 2 3│ │2 2 4│ │2 2 5││
>> │└─────┘ └─────┘ └─────┘ └─────┘ └─────┘│
>> │┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐ ┌3────┐│
>> ││2 3 1│ │2 3 2│ │2 3 3│ │2 3 4│ │2 3 5││
>> │└─────┘ └─────┘ └─────┘ └─────┘ └─────┘│
>> └∊──────────────────────────────────────┘
>>
>>
>>
>> my question is: can such a function can be written in Lambda style ?
>> (especially in gnuapl)
>>
>> eg:
>>
>> IOTA ← { ... }
>>
>> That IOTA function simulate the behavior of "⍳" on "Dyalog APL" and
>> NARS2000 and more interpretors when the argument is a vector.
>>
>>
>> thanks,
>>
>> Xtian.
>>
>>
>>
>>
>

Reply via email to