[erlang-questions] Local namespaces in case/try
Thomas Lindgren
thomasl_erlang@REDACTED
Tue Jul 10 17:23:04 CEST 2012
----- Original Message -----
> From: Joe Armstrong <erlang@REDACTED>
> ...
> There is no ultimate authority. Change is driven by the interplay of
> several factors:
>
> - consensus (ie general agreement that something is good)
> - payment (the people who finance Erlang pay to have something done)
> - voluntary effort (individuals make changes, which are then adopted)
True. Still, I might agree with the OP in that Erlang probably would gain by having a "chief architect" or someone
along those lines to make the final decision. (Also regarding BIFs, APIs, ...)
> As regards the changes you suggest:
>
> 1) Millions of lines of code have been written with the assumption
> that if you see a variable twice
> in the same lexical scope it has the same value. Changing this would
> mean that all old code
> must be retested and modified.
On the other hand, there _are_ ways to deprecate things these days. Erlang has replaced
the original type tests with long-winded ones, for instance. Aren't the old tests even illegal
nowadays?
Another more interesting example is that of how users were discouraged from exporting variables from cases.
I think this policy was changed (for whatever reason) by nagging, ie, making the compiler warn when it occurred.
The same could be done by emitting a warning when an already bound variable is matched.
I personally wouldn't mind, actually -- this is IMO a marginal feature and appears to occasionally confuse
even skilled practitioners, for instance on a silent pattern match failure.
Best,
Thomas
More information about the erlang-questions
mailing list