[erlang-questions] OTP-9649 and further changes
Björn Gustavsson
bgustavsson@REDACTED
Mon Jan 23 11:25:32 CET 2012
On 1/10/12, Yurii Rashkovskii <yrashk@REDACTED> wrote:
> Hi,
>
> I was wondering if anybody (especially from the OTP team) can shed
> some light on the following subject.
>
> In R15 we've got this:
>
> OTP-9649 Tuple funs (a two-element tuple with a module name and a
> function) are now officially deprecated and will be removed
> in R16. Use 'fun M:F/A' instead. To make you aware that your
> system uses tuple funs, the very first time a tuple fun is
> applied, a warning will be sent to the error logger.
>
> Which is fine.
>
> But I was wondering if there's any word out about the fate of tuple
> modules? The ones like {erlang}:element(1). Are they expected to be
> kept around? (I certainly hope they are :)
>
No, we don't expect to keep them.
As pointed out by others, "tuple modules" is just an implementation
detail of parameterized modules (which is an experimental feature).
We have not reached a decision yet, but in the future we expect
we will do one of two things:
* Remove parameterized modules completely from the compiler
and run-time system.
OR
* Implement parameterized modules properly by creating a new
data type, both to allow better type checking by Dialyzer, and
to possibly improve performance.
/Björn
--
Björn Gustavsson, Erlang/OTP, Ericsson AB
More information about the erlang-questions
mailing list