Erlang is not a tinkerers language. If you want to tinker you want Scheme, Clojure or Haskell, which to a far greater extent plays around with new ways of doing things in programming languages.
Erlang is about providing a stable platform and controlled additions. The decision to remove parameterized modules must be balanced against the fact that you are maintaining an experimental extension and that it complicates the compiler. So the decision was made to remove them completely from the language in order to pave the way for a better solution.
One of Joe Armstrongs ideas is that if you add a new feature to the language, you must remove one as well. So the choice is all about balancing the effort required to keep parts of the implementation working.
It isn't that Evan Miller as not been heard and taken seriously. Believe me, the decision is not a quick one made just for the sake of making such a choice.
In Erlang, pmods are problematic because the language has no type system and they seriously mess with readability of program code. They also make it harder to grep in code, and there are very simple ways to work around the lack of them. And they are not the feature we need to make the language better. There are a large amount of other features which would be far better to have.
I'm well aware of the technical merits of the decision and generally agree with it (I upvoted you because of the clear explanation, btw). What rubs me the wrong way are comments like (emphasis mine):
"And they are not the feature WE need to make the language better"
and
"Looking over Elixir, I tend to agree with Tristan -- it seems to have
all the syntactic sugar that creative, non-hardcore, easily frightened
developers might like"[0]
You seem to have forgotten to quote the next paragraph which says, "In seriousness, it looks like a nice language -- I wonder if it, or the Ruby, Python, JavaScript "front-end" toolsets, might be a better fit for extending Erlang applications to programmers who are looking for a kinder, gentler syntax?"
Garret spends a fair amount of energy trying to make Erlang more accessible.
Erlang is not a tinkerers language. If you want to tinker you want Scheme, Clojure or Haskell, which to a far greater extent plays around with new ways of doing things in programming languages.
Erlang is about providing a stable platform and controlled additions. The decision to remove parameterized modules must be balanced against the fact that you are maintaining an experimental extension and that it complicates the compiler. So the decision was made to remove them completely from the language in order to pave the way for a better solution.
One of Joe Armstrongs ideas is that if you add a new feature to the language, you must remove one as well. So the choice is all about balancing the effort required to keep parts of the implementation working.
It isn't that Evan Miller as not been heard and taken seriously. Believe me, the decision is not a quick one made just for the sake of making such a choice.
In Erlang, pmods are problematic because the language has no type system and they seriously mess with readability of program code. They also make it harder to grep in code, and there are very simple ways to work around the lack of them. And they are not the feature we need to make the language better. There are a large amount of other features which would be far better to have.