I generally don't like using equality test on union types because that 
makes your code more prone to errors - later on you might decide to add / 
remove some types from union type.

On Friday, December 9, 2016 at 4:57:48 PM UTC+1, Nick H wrote:
>
> You can also do equality tests on type values, which means in your first 
> two cases you can use an if statement.
>
> if someValue == A then
>   stuff1
> else
>   stuff2
>
> This only works if your type values aren't storing any data.
>
> On Fri, Dec 9, 2016 at 7:25 AM, Petr Huřťák <[email protected] 
> <javascript:>> wrote:
>
>> Hi,
>>
>> I would like hear some discussion on grouping of branches in `case of` 
>> statement . Currently it is not possible to use one branch for multiple 
>> conditions.
>>
>> Something along these lines:
>>
>> case someTypeValue of
>>     A ->
>>         -- code
>>
>>     B ->
>>     C ->
>>     D ->
>>         -- different code
>>
>>
>> Current alternative is this
>>
>> case someTypeValue of
>>     let
>>         stuff2 =
>>             -- code      
>>     in
>>         A ->
>>             -- different code
>>
>>         B ->
>>             stuff2
>>
>>         C ->
>>             stuff2
>>             
>>         D ->
>>             stuff2
>>
>>
>> Which is unnecessarily verbose and harder to read.
>>
>> One question is how this would work when there in cases where matched 
>> patterns have some values attached to them
>>
>> case someTypeValue of
>>     A ->
>>         -- stuff1
>>
>>
>>     B _ ->
>>     C _ _ ->
>>     D _ _ _ ->
>>         -- stuff2
>>
>> How is this handled in other languages like OCaml or Haskell?
>>
>> NOTE: moved from 
>> https://groups.google.com/forum/#!topic/elm-dev/DtUT2ieYTDo
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Elm Discuss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups "Elm 
Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to