I’m not opposed to the idea, but wouldn’t that map be easily done with:

    Map.new(Enum.with_index(data), fn {v, k} -> {k, v} end)

The biggest advantage of Map.new(Enum.index(data)) is that the number of
tuple creations is halved.

-a

On Tue, Dec 8, 2020 at 4:10 PM José Valim <jose.va...@dashbit.co> wrote:

> The main reason for an index function is to make it easier to build a map:
>
>     Map.new Enum.index(data)
>
> I agree the duplicity between noun and verb is undesirable though.
>
> On Tue, Dec 8, 2020 at 9:52 PM Kelvin Raffael Stinghen <
> kelvin.sting...@gmail.com> wrote:
>
>> I can't see why not just `x |> Stream.with_index() |> Stream.map(fn {v,
>> i} -> {i, v} end)`... I mean, lots of proposals for similar functions got
>> denied because it would be easy to develop a lib that does it cause Elixir
>> is awesomely extensible, so why bothering add another variant? Do you have
>> to do that too many times on Elixir core or something like that?
>>
>> Em terça-feira, 8 de dezembro de 2020 às 17:44:45 UTC-3, gva...@gmail.com
>> escreveu:
>>
>>> If this is related to the mystery benchmark tweets, José, then I guess
>>> I'm in favor of the proposal :-)
>>>
>>> I do prefer Felipe's name of `Enum.indexed/1` though. While `index` can
>>> be a verb, it's ambiguous with the noun. `indexed` is clearly a past tense
>>> verb.
>>>
>>> -Greg Vaughn
>>>
>>> > On Dec 8, 2020, at 2:13 PM, José Valim <jose....@dashbit.co> wrote:
>>> >
>>> > I considered the option but I prefer to avoid using options that
>>> change the return type.
>>> >
>>> > On Tue, Dec 8, 2020 at 9:11 PM Felipe Stival <v0i...@gmail.com>
>>> wrote:
>>> > I'm not sure. Sounds a bit ambiguous, couldn't this be an option for a
>>> new Enum.with_index/3?
>>> >
>>> > Em ter., 8 de dez. de 2020 às 17:05, José Valim <jose....@dashbit.co>
>>> escreveu:
>>> > I would like to propose an Enum.index/2 function. It behaves like
>>> with_index/2 but the index is the first argument:
>>> >
>>> > iex> Enum.index([:a, :b, :c])
>>> > [{0, :a}, {1, :b}, {2, :c}]
>>> >
>>> > I am hoping it reads "index" this tuple (hence the index as the first
>>> element. While with_index means attach an index information to each element
>>> (hence the second element). Is this sound?
>>> >
>>> > Thank you,
>>> >
>>> >
>>> > --
>>> > You received this message because you are subscribed to the Google
>>> Groups "elixir-lang-core" group.
>>> > To unsubscribe from this group and stop receiving emails from it, send
>>> an email to elixir-lang-co...@googlegroups.com.
>>> > To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4K6h7c1UbiEfoEsyCXGJRbO8he%3DFJ84yxC%2B3-GOo-2MwQ%40mail.gmail.com.
>>>
>>> >
>>> >
>>> > --
>>> >
>>> > Felipe Stival, Electrical Engineering Student
>>> > Santa Maria, Rio Grande do Sul
>>> > Brasil
>>> > v0idpwn.github.io
>>> >
>>> >
>>> > --
>>> > You received this message because you are subscribed to the Google
>>> Groups "elixir-lang-core" group.
>>> > To unsubscribe from this group and stop receiving emails from it, send
>>> an email to elixir-lang-co...@googlegroups.com.
>>> > To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/elixir-lang-core/CAKC64%2Bx4zERK_axkS2puMT9Qa8dJKYEh_Z3QNDf977eJG0-6aw%40mail.gmail.com.
>>>
>>> >
>>> > --
>>> > You received this message because you are subscribed to the Google
>>> Groups "elixir-lang-core" group.
>>> > To unsubscribe from this group and stop receiving emails from it, send
>>> an email to elixir-lang-co...@googlegroups.com.
>>> > To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4Kj%3DS54yn-1jmoaG%2BKEab9ZLpagHYDfpNEu%2BSbtTdj%2B4g%40mail.gmail.com.
>>>
>>>
>>> --
>> You received this message because you are subscribed to the Google Groups
>> "elixir-lang-core" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to elixir-lang-core+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/elixir-lang-core/84a8a35f-13b7-4b83-95b5-2c414df6cc04n%40googlegroups.com
>> <https://groups.google.com/d/msgid/elixir-lang-core/84a8a35f-13b7-4b83-95b5-2c414df6cc04n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "elixir-lang-core" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to elixir-lang-core+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4LVZ%2BDSd3tuUe-Y0Rczn1p8aL69-mDYNVYtoBy_P%3D6kRA%40mail.gmail.com
> <https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4LVZ%2BDSd3tuUe-Y0Rczn1p8aL69-mDYNVYtoBy_P%3D6kRA%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Austin Ziegler • halosta...@gmail.com • aus...@halostatue.ca
http://www.halostatue.ca/http://twitter.com/halostatue

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elixir-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/CAJ4ekQttydio6-34Rn_BkuYBRTMF%3DyfL7j2bNiwY2RuQjqMrEQ%40mail.gmail.com.

Reply via email to