See an earlier discussion on a similar 
idea: https://groups.google.com/forum/#!topic/elixir-lang-core/eE_mMWKdVYY

On Friday, January 20, 2017 at 3:12:37 PM UTC-5, Paul Schoenfelder wrote:
>
> Sorry Josh, I should have replied to your original proposal. What I was 
> getting at is that you can already use the existing Enum sorting functions 
> with Dates, just by providing a sorter function, you don't have to convert 
> to/from. As José mentioned though, there isn't any way to make Enum.sort/1 
> itself work on structs, it's up to the struct implementor to define 
> functions which can be easily used with `Enum.sort_by` to make them 
> sortable, such as `DateTime.to_unix`. There have been previous 
> conversations on the mailing list about this subject, but I don't believe 
> any of them got to a point where there was a viable implementation.
>
> Paul
>
>
> On Fri, Jan 20, 2017 at 2:03 PM, Josh Crews <crews...@gmail.com 
> <javascript:>> wrote:
>
>> Hi. I love Timex so much!
>>
>> Regarding work around... I guess?
>>
>> What do you think of the main thread question, "should Enum.sort work on 
>> Date types"?
>>
>> On Friday, January 20, 2017 at 1:42:20 PM UTC-6, Paul Schoenfelder wrote:
>>>
>>> Probably easier to use `Enum.sort_by(dates, &DateTime.to_unix/1)`, no?
>>>
>>> Paul
>>>
>>> On Fri, Jan 20, 2017 at 1:39 PM, Josh Crews <crews...@gmail.com> wrote:
>>>
>>>> Current behavior:
>>>>
>>>>
>>>> iex(3)> [~D[2017-01-04], ~D[2017-04-03], ~D[2017-01-05]] |> Enum.sort
>>>>
>>>> [~D[2017-04-03], ~D[2017-01-04], ~D[2017-01-05]]
>>>>
>>>>
>>>> Proposed:
>>>>
>>>> iex(3)> [~D[2017-01-04], ~D[2017-04-03], ~D[2017-01-05]] |> Enum.sort
>>>>
>>>> [~D[2017-01-04], ~D[2017-01-05], ~D[2017-04-03]]
>>>>
>>>>
>>>> What I'm currently doing is:
>>>>
>>>> iex(4)> [~D[2017-01-04], ~D[2017-04-03], ~D[2017-01-05]] |> 
>>>> Enum.map(&(Date.to_erl/1)) |> Enum.sort |> Enum.map(&(Date.from_erl!/1))
>>>>
>>>> [~D[2017-01-04], ~D[2017-01-05], ~D[2017-04-03]]
>>>>
>>>>
>>>> which is working great, but would be cool to have Enum.sort work on 
>>>> Date types too.
>>>>
>>>> -- 
>>>> 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/5cb8a9f9-ee03-497e-87d6-7bd9633b2f78%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/elixir-lang-core/5cb8a9f9-ee03-497e-87d6-7bd9633b2f78%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 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 <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/elixir-lang-core/8a996168-b548-4730-a2a6-baa38a88d712%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/elixir-lang-core/8a996168-b548-4730-a2a6-baa38a88d712%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 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/a20f87db-6137-42b8-9943-1d88aa141cc5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to