What use is `case` sneak- binding?
Wed Aug 18 14:17:44 CEST 2021
Apologies if I'm just missing something obvious or I'm missing some key
context, but to me your message/question contains a lot of unfamiliar
terminology and hyperbole which makes it hard to understand what you're
What is "sneak-binding"? Sneaky "slot machine" nature?
It would be really helpful if you could give a more concrete example of
what you dislike about case (the less ellipsis the better!), and a similar
piece of code rewritten following your suggestion (I _think_ you're making
a suggestion without message, but I'm not actually entirely sure..)
On Wed, 18 Aug 2021 at 13:04, Michael P. <empro2@REDACTED> wrote:
> What use is the sneaky "slot-machine" nature of
> how `case` treats pattern unboundies
> Does it simplify the implementation of `case`?
> OC, `case` has to _try_ to match the patterns and cannot
> simply dump every new binding. Unbinding on badmatch or
> repeating the matching or transferring new bindings
> after success in some subscope might complicate
> the implementation. And sounds a bit like backtracking,
> and Erlang was designed with a 'no backtracking' premise ...
> yet there cannot be any side-effects as the only expression
> allowed in patterns is 'variables', the `case` switch
> is evaluated only once anyway ... and now I have shipped
> off the brink of my tiny world.
> Giving `case` the '(let)' after 35 years hits "the legacy wall".
> What would one lose when the "slot-machine" scared
> one into some
> Switch = ...,
> Result = (fun Case(...) when ... -> ...;
> Case(...) when ... -> ...
> Normality is merely a question of quantity,
> not of quality.
> Normalität ist nur eine Frage von Quantität,
> nicht von Qualität.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions