IEX History Not Enabled by Default?

I saw the feature in Erlang a while back when 20 was released, i.e.

and wonder why this is not on by default?

One of those small things that improve quality of life on the command line no end : )

Suspect it’s coming in 1.6 - just curious.


It’s the conservative, caution approach taken by the OTP team when introducing new features. The default is not to break stuff. This is a new feature, and it might break some stuff, i.e. on systems that do not have the writable filesystem, I suppose. Hence the default is to preserve old behavior and allow users to turn on new one.


It’s exactly what @hubertlepicki said - it’s a cautionary approach. The feature is considered experimental and was released to the public, in a way, as a “public beta”. Once it’s confirmed it works properly and does not interfere with other things, it might be enabled by default.

There are multiple examples of introducing features in Erlang that way - dirty schedulers and gen_statem are probably the largest “latest” examples that are currently stabilised in the main release.