An example of what it could look like.
In F#, you can group cases together which have the same parameter type
match x with
| A i ->
// stuff1
| B s | C s | D s ->
// stuff2 on s
However you cannot group together cases with different parameters types
match x with
| A i | B s | C s | D s -> // error
However in F# multiple parameters to an ADT are tuples, and you can use
underscore for the whole tuple.
On Friday, December 9, 2016 at 9:25:29 AM UTC-6, Petr Huřťák 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].
For more options, visit https://groups.google.com/d/optout.