
Why switch is better than if-else - ingve
https://mortoray.com/2019/06/29/why-switch-is-better-than-if-else/
======
pmontra
And languages with multiple function definitions for different arguments are
even better

    
    
        def(arg = value_0) { ... }      
        def(arg = value_1) { ... }
        def(arg = value_2) { ... }
        def(arg) { ... }
    

Example: Elixir.

~~~
mortoray
I agree. General purpose pattern matching in both expressions and function
dispatch is a great feature.

------
willio58
Author says, regarding if-else, “We aren’t certain here whether we mean to
cover all possible values, or only these values in particular”. I don’t really
get what that means.

I never feel confused when looking at an if-else statement which values I’m
targeting. Do they just give a bad example in this post?

~~~
s_m_t
The proceeding lines make that clearer for me.

In my mind a switch statement is like "here is an execution path for every
state this enumeration can hold" (like the author says, compiler or ide may
warn you about missing cases) while an if else is a bit more general than
that. With an if else you might only be checking for a few specific
conditions.

