If I recall correctly this library wraps the values and does not offer
compile time checks, which is the inverse of what I'm after.

I want unwrapped values and compile time checks :)

Cheers,
Louis

On Sun, 25 Feb 2018, 16:00 OvermindDL1, <overmind...@gmail.com> wrote:

> There are at least 2 others that I know of, and I can find those for you
> too tomorrow if you want them, they have different features and focuses,
> but the one that immediately comes to mind is:
> https://github.com/expede/algae
>
> Expede on GitHub has a lot of cool and useful little 'core' elixir
> libraries in my opinion.
>
> On Feb 24, 2018 06:46, "Louis Pilfold" <louispopin...@gmail.com> wrote:
>
>> Hi
>>
>> I started to implement such a library, but I would much prefer to use an
>> existing one. I was unable to find any, wild you be able to share some
>> links?
>>
>> Thanks,
>> Louis
>>
>> On Fri, 23 Feb 2018, 18:09 OvermindDL1, <overmind...@gmail.com> wrote:
>>
>>> There are some library that add sum types to Elixir that do 'some'
>>> compile-time checks (like case's and so forth).  It would be useful built
>>> in to elixir (though not any of the current library implementations) but
>>> the libraries already do support much of it.
>>>
>>>
>>> On Friday, February 16, 2018 at 6:35:03 AM UTC-7, Ben Wilson wrote:
>>>>
>>>> Can you elaborate on the safety provided by doing `%Struct{} = ` on a
>>>> function? There are no compile time checks that calls to that function are
>>>> actually of that struct type, just runtime checks on the data. Put another
>>>> way this isn't really a type check, but an assertion.
>>>>
>>>> On Friday, February 16, 2018 at 6:38:07 AM UTC-5, maen...@joshmartin.ch
>>>> wrote:
>>>>>
>>>>> Hey Louis,
>>>>>
>>>>> I think it should include compile time checks. Mostly I would expect
>>>>> those for function headers, case blocks and with blocks.
>>>>>
>>>>> Dialyzer already checks many of those conditions, but I would like to
>>>>> go a step further.
>>>>> Your mentioned library looks really interesting. Making it work
>>>>> together with existing type specifications would be really cool.
>>>>>
>>>>> With for example structs, I can achieve safety really easy by adding 
>>>>> *%Struct{}
>>>>> = my_input* to the function header.
>>>>>
>>>>> I would like to have a mechanism that works similarly, but
>>>>> additionally checks uncovered types of a sum. (If you would for example 
>>>>> not
>>>>> cover the None of a Maybe)
>>>>>
>>>>> I think that this could tremendously improve the code quality.
>>>>>
>>>>> Cheers,
>>>>> Jony
>>>>>
>>>>> Am Freitag, 16. Februar 2018 11:57:00 UTC+1 schrieb Louis Pilfold:
>>>>>>
>>>>>> Hey Jony
>>>>>>
>>>>>> Would this involve some form of compile time type checking for these
>>>>>> values? If not we already have them in the form of tuples.
>>>>>>
>>>>>> @type result :: {:ok, string()} | {:error, string()}
>>>>>>
>>>>>> If you want compile time checks this would be more difficult. I've
>>>>>> experimented a little with compile time checks with macros, check it out
>>>>>> here -> https://github.com/lpil/sum
>>>>>>
>>>>>> Cheers,
>>>>>> Louis
>>>>>>
>>>>>> On Fri, 16 Feb 2018 at 10:33 <maen...@joshmartin.ch> wrote:
>>>>>>
>>>>>>> Hi all,
>>>>>>>
>>>>>>> First I want to thank you all for your great work on the elixir
>>>>>>> language!
>>>>>>>
>>>>>>> Have there been some thoughts to introduce Tagged Unions into elixir?
>>>>>>> I would really love to use sum types like Either or simple enums in
>>>>>>> my daily work and have some support of the language in handling them.
>>>>>>>
>>>>>>> What do you think about this?
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Jony
>>>>>>>
>>>>>>> --
>>>>>>> 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/4052d8d9-6eda-46c9-b259-fb0f2e041120%40googlegroups.com
>>>>>>> <https://groups.google.com/d/msgid/elixir-lang-core/4052d8d9-6eda-46c9-b259-fb0f2e041120%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/d1ac20e5-9198-47d1-91c4-cf6d6b0e733a%40googlegroups.com
>>> <https://groups.google.com/d/msgid/elixir-lang-core/d1ac20e5-9198-47d1-91c4-cf6d6b0e733a%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/CABu8xFC0kWY2ncPW0tm5MbyMj8WFa%2BD2v6bBamdB-1fyk7qu5A%40mail.gmail.com
>> <https://groups.google.com/d/msgid/elixir-lang-core/CABu8xFC0kWY2ncPW0tm5MbyMj8WFa%2BD2v6bBamdB-1fyk7qu5A%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-lang-core+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-core/CAJhqboFaJ1Nww0HwsBxrwu1%2Bhxhg0u-v2ZY7%2BF975A21O9Q6KQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/elixir-lang-core/CAJhqboFaJ1Nww0HwsBxrwu1%2Bhxhg0u-v2ZY7%2BF975A21O9Q6KQ%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-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/CABu8xFAaBcr44CoPJ3Ugq6Sj-j9AsS1-iBi5bmikdp3zapEyhg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to