I missed enumerate() for a while,  and was happy I found it.  I find it
amusing how satisfying a few missing keystrokes can be.

On a related but different note, from a similar influence, I keep wanting
to pass blocks to iterators.  Any chance that will ever happen?

I realize that do..end blocks are used currently as syntactic sugar for
methods that take a function as the first arg (e.g. open(), map()), and the
same functionality can be achieved with three letters and two braces (map),
but it still seems somewhat cleaner to write:

enumerate(a) do i,x
...
end

over

map(enumerate(a)) do i,x
...
end

which are really just equivalent, as we know, to

for i,x, in enumerate(a)
...
end

Are there technical reasons this is a bad idea to assume?

Cameron

On Thu, May 15, 2014 at 1:01 PM, John Myles White
<johnmyleswh...@gmail.com>wrote:

> I kind of suspect Stefan, like me, would instinctively call this operation
> `each_with_index`.
>
>  -- John
>
> On May 15, 2014, at 6:33 AM, Kevin Squire <kevin.squ...@gmail.com> wrote:
>
> One nice thing about Julia is that she borrows many (though not all) good
> ideas from other languages. In this case, enumerate came from Python
> (although it likely has other incarnations).
>
> Cheers!
>    Kevin
>
> On Thursday, May 15, 2014, Billou Bielour <jonathan.bie...@epfl.ch> wrote:
>
>> I was thinking the same thing the other day, when using *for x in xs* I
>> often find myself needing an index at some point and then I have to change
>> the for loop, or write an index manually.
>>
>> Enumerate is exactly what I need in this case.
>>
>> +1 for Julia
>>
>>
>

Reply via email to