+1 from me.

-bt

On Tue, Jul 30, 2019 at 12:50 PM Ben Wilson <benwilson...@gmail.com> wrote:

> I think having Enum.filter(list, &Function.identity/1) actually reads
> pretty well. It avoids the issue with putting it in Kernel, and provides a
> very explicit name which speaks to Bruce's goal of naming concepts.
>
> On Tuesday, July 30, 2019 at 12:47:08 PM UTC-4, Allen Madsen wrote:
>>
>> I don't have a strong opinion on this function's inclusion. It's not
>> mandatory that it live in Kernel though. It could exist on Function.
>>
>> Allen Madsen
>> http://www.allenmadsen.com
>>
>>
>> On Tue, Jul 30, 2019 at 12:29 PM Chris McCord <ch...@chrismccord.com>
>> wrote:
>>
>>> I’m just catching up on this thread now, but I’m in the “not valuable
>>> enough to be added” camp. I’ve personally never needed such an abstraction
>>> – on my own or while teaching. Also, an anon function serves the purpose
>>> when needed without introducing a new concept. From the beginner
>>> perspective, I think `identify` adds more noise where it isn’t needed. Even
>>> following this thread and reading other lang usage, I still find the name
>>> awkward and struggle to see it being a net benefit to my code vs what I’d
>>> happily write today. Given how trivial it is to return the value yourself
>>> in a concise and clear way, I don’t think the value of it squatting in
>>> kernel is enough to justify an addition to the std lib.
>>>
>>> On Jul 21, 2019, at 8:47 AM, Bruce Tate <br...@grox.io> wrote:
>>>
>>> I want to speak to the beginners argument.  I am not guessing. I spend
>>> 6-8 hours teaching and mentoring every week, and it's more when school is
>>> in. Concepts are easier to teach when those concepts have names and big
>>> concepts can be broken down into smaller ones. The students I teach are
>>> about 80% new to FP and about 40% new to programming in general.
>>>
>>> I will take the advice of mixing in FP.identity if it cuts against the
>>> grain of what Elixir is about.
>>>
>>> Thanks to all for making Elixir the best it can be... let's keep it
>>> civil. I think it makes a lot of sense to take José's suggestion and
>>> collect some of these concepts into a library and prove their worth there,
>>> to language learners and otherwise.
>>>
>>> -bt
>>>
>>> On Mon, Jul 15, 2019 at 5:12 AM Andrea Leopardi <an.le...@gmail.com>
>>> wrote:
>>>
>>>> My 2 cents. To me a strong argument against this is that &identity/1
>>>> still looks confusing to newcomers with the capture syntax (how many "why
>>>> can't I just write identity like in Js questions do we get after all), so
>>>> summed with the other arguments against it makes me not want to add this to
>>>> the language personally.
>>>>
>>>> On Mon, 15 Jul 2019 at 09:30, Masoud Ghorbani <msud.g...@gmail.com>
>>>> wrote:
>>>>
>>>>> Isn't possible to have something like JavaScript arguments which
>>>>> correspond with a list of parameters passed to function?
>>>>> its more handy to lookup a parameter in a list or map until working
>>>>> with a function to get a given parameter.
>>>>>
>>>>> On Tuesday, July 2, 2019 at 11:10:45 PM UTC+4:30, José Valim wrote:
>>>>>>
>>>>>> Thanks Chris, it is important that someone being counter arguments,
>>>>>> even if they can be disproved. :)
>>>>>>
>>>>>> I definitely see how such a small function can be useful but, at the
>>>>>> same time, I am not convinced about the name "identity".
>>>>>>
>>>>>> I found it curious that Clojure actually have an identity function
>>>>>> because the definition of Identity they use when talking about values and
>>>>>> change is a more complex one (and one that really stuck with me):
>>>>>>
>>>>>> *> By identity I mean a stable logical entity associated with a
>>>>>> series of different values over time*
>>>>>>
>>>>>> https://clojure.org/about/state#_working_models_and_identity
>>>>>>
>>>>>> Of course, my interpretation above is likely uncommon and there are
>>>>>> other interpretations of identity that would fit nicely.
>>>>>>
>>>>>> Anyway, to move the discussion forward, can someone do a more
>>>>>> complete survey on what this function are called in many of the other
>>>>>> languages? I just want to make sure we do our due diligence before adding
>>>>>> it to the language.
>>>>>>
>>>>>> Thank you,
>>>>>>
>>>>>> *José Valim*
>>>>>> www.plataformatec.com.br
>>>>>> Skype: jv.ptec
>>>>>> Founder and Director of R&D
>>>>>>
>>>>>>
>>>>>> On Tue, Jul 2, 2019 at 8:25 PM Christopher Keele <christ...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Derp, I knew that. Good point.
>>>>>>>
>>>>>>> On Tue, Jul 2, 2019 at 9:55 AM Michał Muskała <mic...@muskala.eu>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Because Elixir is a lisp-2 language, variables and functions are in
>>>>>>>> different "namespaces". This means you can have local variables with 
>>>>>>>> names
>>>>>>>> of local functions without any issues, but it also means you need 
>>>>>>>> different
>>>>>>>> syntax when you want to call a function contained in a variable. Or
>>>>>>>> formulated differently - variables can't shadow functions. For example,
>>>>>>>> consider:
>>>>>>>>
>>>>>>>> bar = &foo/0
>>>>>>>> bar.() #=> 1
>>>>>>>> bar() #=> 2
>>>>>>>> def foo(), do: 1def bar(), do: 2
>>>>>>>>
>>>>>>>> Having a Kernel.id/1 function would not preclude you from using 
>>>>>>>> variables called id.
>>>>>>>>
>>>>>>>>
>>>>>>>> Michał.
>>>>>>>> On 2 Jul 2019, 18:41 +0200, Christopher Keele <christ...@gmail.com>,
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>> I'd cast my vote against this. The proposal seems to be:
>>>>>>>>
>>>>>>>> 1. Create a function named 'id' or some such
>>>>>>>> 2. Put it in the Kernel namespace (so it need not be prefixed)
>>>>>>>>
>>>>>>>> I've been doing a lot of python lately and they have a lot of
>>>>>>>> things like this, including the same 'filter' global function 
>>>>>>>> mentioned in
>>>>>>>> this thread.
>>>>>>>>
>>>>>>>> Points against:
>>>>>>>>
>>>>>>>> 1. It'd suck to not be able to use 'id' as a variable name, and
>>>>>>>> would conflict with a lot of existing code.
>>>>>>>> 2. Alternative names to 'id' or namespacing it are not shorter than
>>>>>>>> '&(&1)'
>>>>>>>> 3. '&(&1)' is more open to change with requirements
>>>>>>>> 4. Adopting 'id' within Kernel would encourage adding more utility
>>>>>>>> functions to it, exacerbating 1, like the proposed 'filter' function
>>>>>>>> 5. Not adopting it within the Kernel would be hard, as there's no
>>>>>>>> real appropriate place for it elsewhere in standard lib, unlike Enum's
>>>>>>>> 'filter'
>>>>>>>>
>>>>>>>> Generally it's a nice idea, but I can't think of a great way to
>>>>>>>> make it work, and it'd open the floodgates to more utility functions 
>>>>>>>> that
>>>>>>>> I've come to find grating in day-to-day python development.
>>>>>>>>
>>>>>>>> Just my two cents,
>>>>>>>> Chris K
>>>>>>>>
>>>>>>>> --
>>>>>>>> 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-l...@googlegroups.com.
>>>>>>>> To view this discussion on the web visit
>>>>>>>> https://groups.google.com/d/msgid/elixir-lang-core/fffd5b76-4385-40de-93bd-148f1b94bb27%40googlegroups.com
>>>>>>>> <https://groups.google.com/d/msgid/elixir-lang-core/fffd5b76-4385-40de-93bd-148f1b94bb27%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> You received this message because you are subscribed to a topic in
>>>>>>>> the Google Groups "elixir-lang-core" group.
>>>>>>>> To unsubscribe from this topic, visit
>>>>>>>> https://groups.google.com/d/topic/elixir-lang-core/tB61BHYIH1s/unsubscribe
>>>>>>>> .
>>>>>>>> To unsubscribe from this group and all its topics, send an email to
>>>>>>>> elixir-l...@googlegroups.com.
>>>>>>>> To view this discussion on the web visit
>>>>>>>> https://groups.google.com/d/msgid/elixir-lang-core/b2149582-b8ba-4759-99ac-a634f73f3243%40Spark
>>>>>>>> <https://groups.google.com/d/msgid/elixir-lang-core/b2149582-b8ba-4759-99ac-a634f73f3243%40Spark?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>> --
>>>>>>> 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-l...@googlegroups.com.
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/d/msgid/elixir-lang-core/CAD9kT2R41gmZXU9_YAqAdyJQDP-M37j-mgUet-okoeBzF%3DdMDA%40mail.gmail.com
>>>>>>> <https://groups.google.com/d/msgid/elixir-lang-core/CAD9kT2R41gmZXU9_YAqAdyJQDP-M37j-mgUet-okoeBzF%3DdMDA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>> --
>>>>> 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-l...@googlegroups.com.
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/elixir-lang-core/2bb429a8-e583-48c1-a335-8660c115b24f%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/elixir-lang-core/2bb429a8-e583-48c1-a335-8660c115b24f%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> --
>>>>
>>>> Andrea Leopardi
>>>> an.le...@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-l...@googlegroups.com.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/elixir-lang-core/CAM9Rf%2BJEN7vuwxxZFkrB8NytCCaSPAKtroMeA1sqe91n5SoFXg%40mail.gmail.com
>>>> <https://groups.google.com/d/msgid/elixir-lang-core/CAM9Rf%2BJEN7vuwxxZFkrB8NytCCaSPAKtroMeA1sqe91n5SoFXg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>>> --
>>>
>>> Regards,
>>> Bruce Tate
>>> CEO
>>>
>>>
>>> <https://bowtie.mailbutler.io/tracking/hit/f8218219-d2a8-4de4-9fef-1cdde6e723f6/c7c97460-016e-45fb-a4ab-0a70318c7b97>
>>>
>>> Groxio, LLC.
>>> 512.799.9366
>>> br...@grox.io
>>> grox.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-l...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/elixir-lang-core/CAFXvW-65ztTOMoVhZ407PghmYA0OBcuVhDatcjYx6Xw7f52pMQ%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/elixir-lang-core/CAFXvW-65ztTOMoVhZ407PghmYA0OBcuVhDatcjYx6Xw7f52pMQ%40mail.gmail.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-l...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/elixir-lang-core/702CFF39-BCFF-416F-BF28-81A5E1516903%40chrismccord.com
>>> <https://groups.google.com/d/msgid/elixir-lang-core/702CFF39-BCFF-416F-BF28-81A5E1516903%40chrismccord.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/586eb969-e70d-44cb-98df-47b8f6c188d0%40googlegroups.com
> <https://groups.google.com/d/msgid/elixir-lang-core/586eb969-e70d-44cb-98df-47b8f6c188d0%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 

Regards,
Bruce Tate
CEO

<https://bowtie.mailbutler.io/tracking/hit/f8218219-d2a8-4de4-9fef-1cdde6e723f6/c7c97460-016e-45fb-a4ab-0a70318c7b97>

Groxio, LLC.
512.799.9366
br...@grox.io
grox.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-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/CAFXvW-6DfS2m2s2JO0s6j0MMdXbzd4ivaUsBLkGv_i0YOjY%2BYA%40mail.gmail.com.

Reply via email to