Erlang/OTP 23 is a new major release with new features, improvements as well as a few incompatibilities.
erl_interface
: Removed the deprecated parts of erl_interface
(erl_interface.h
and essentially all C functions with prefix erl_
).erlang:get_stacktrace/0
BIF now returns an empty list instead of a stacktrace. erlang:get_stacktrace/0
is scheduled for removal in OTP 24.ssh:
openssh-key-v1
. This is now supported with the exception of handling encrypted keys.SSL:
The possibility to run Erlang distribution without relying on EPMD has been extended. To achieve this a couple of new options to the inet distribution has been added.
-dist_listen false
Setup the distribution channel, but do not listen for incoming connection.-erl_epmd_port Port
Configure a default port that the built-in EPMD client should return.A first EXPERIMENTAL socket
backend to
gen_tcp
and inet
has been implemented. gen_udp
and gen_sctp
will follow.
Putting {inet_backend, socket}
as first option to listen()
or connect()
makes it easy to try this for existing code
erpc
in kernel which implements an enhanced subset of the operations provided by the rpc
module. Enhanced in the sense that it makes it possible to distinguish between returned value, raised exceptions and other errors. erpc
also has better performance and scalability than the original rpc
implementation. This by utilizing the newly introduced spawn_request()
BIF. Also the rpc
module benefits from these improvements by utilizing erpc
when possible.123_456_789
, 16#1234_ABCD
.h/1,2,3
-- Print the documentation for a Module:Function/Arity
.ht/1,2,3
-- Print the type documentation for a Module:Type/Arity
.pg
with a new implementation of distributed named process groups is introduced. The old module pg2
is deprecated and scheduled for removal in OTP 24.For more details see http://erlang.org/download/otp_src_23.0.readme
Pre built versions for Windows can be fetched here: http://erlang.org/download/otp_win32_23.0.exe http://erlang.org/download/otp_win64_23.0.exe
Online documentation can be browsed here: http://erlang.org/documentation/doc-11.0/doc The Erlang/OTP source can also be found at GitHub on the official Erlang repository, https://github.com/erlang/otp
OTP-23.0.README file (109537 bytes)
otp_doc_html_23.0.tar.gz file (36238699 bytes)
otp_doc_man_23.0.tar.gz file (1383486 bytes)
otp_src_23.0.tar.gz file (88865562 bytes)
otp_win32_23.0.exe file (89028009 bytes)
otp_win64_23.0.exe file (90666409 bytes)
You can build Erlang from source on your own, following the building and installation instructions. Or use the Kerl script. Kerl is a script that lets you easily build Erlang with a few commands. Follow the instructions to build.
Information about all released OTP versions since OTP 17.0 can be found at the OTP Versions Tree page. This information includes a link to the GitHub source tag, and a link to the README. As of OTP 23, Windows binaries can also be downloaded from here for all patches.
Most OS package managers provide pre-built binary packages. You can also download the latest stable releases from Erlang Solutions. Erlang Solutions provides pre-built binary packages for OS X, Windows, Ubuntu, Debian, Fedora, CentOS, Raspbian and other operating systems.
Since OTP 18.0, Erlang/OTP is released under Apache License 2.0. The older releases prior to 18.0 were released under Erlang Public License (EPL), a derivative work of the Mozilla Public License (MPL).
PDF files are included in the Windows installer and in the HTML documentation tarballs, starting with theR13B03 release.
There is a file containing MD5 checksumsfor all files in the download directory, also reachable through rsync rsync.erlang.org::erlang-download