Erlang/OTP R16B has been released! Erlang/OTP R16B has been released. OTP R16B is a major release with a number of new features, improved characteristics and also some minor incompatibilities. We would like to thank all of you that tested the beta release (R16A) and gave us valuable feedback. See the Readme file and the Documentation for more details.

R16B Readme File

R16B Source File (89.6 MB)

R16B Binary File (89.6 MB)

R16B Binary 64 File (90.7 MB)

R16B Html Documentation File (31.3 MB)

R16B Man Pages File (1.2 MB)

Some of the highlights are:

  • Optimized handling of processes in the VM
  • New internal process table allowing for parallel reads and writes
  • optimized run queue management
  • optimized process state changes
  • "Non-blocking" code loading
  • New internal port table, and rewrite of scheduling of port tasks.
  • Dynamic allocation of port structures, allowing the default for maximum ports to be raised to 65536 (from 1024)
  • Support for UTF-8 encoded Unicode characters in source files.
  • Inets application: The http client now support HTTPS through a proxy
  • Asn1 application: Major cleanup of back ends and optimizations of mainly decode for PER and UPER.
  • Support for parameterized modules (but an alternative solution provides) and packages removed
  • All built in functions BIF's (even if they are implemented in C as part of the VM) are now visible in the source code of the module they belong to, including their type specs.
  • The Wx application now compiles and is usable with the unstable development branch of wxWidgets-2.9. This means that wx can now be built on 64 bit MacOsX as well.

Compiling Erlang from source

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.

Finding a source version

Follow this link that presents all released source versions, a link to the GitHub source tag, and to the README.

Pre-built Binary Packages

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. 

  • For Homebrew on OS X: brew install erlang
  • For MacPorts on OS X: port install erlang
  • For Ubuntu and Debianapt-get install erlang
  • For Fedorayum install erlang
  • For FreeBSDpkg install erlang


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).