Erlang C C++ Makefile Java HTML Other
Latest commit 485bc1f Jul 22, 2016 @psyeugenic psyeugenic Merge branch 'egil/erts/fix-maps-hashing/ERL-199/OTP-13763' into maint
* egil/erts/fix-maps-hashing/ERL-199/OTP-13763:
  erts: Update maps entropy tests
  erts: Fix internal hashing entropy for maps
  erts: Fix whitespaces
Failed to load latest commit information.
HOWTO Adjust generated XML so it respects current DTD May 25, 2016
bin The R13B03 release. Nov 20, 2009
bootstrap Update primary bootstrap Jul 12, 2016
erts erts: Update maps entropy tests Jul 21, 2016
lib Merge branch 'imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/O… Jul 21, 2016
make wx: Prepare for using Erlang types and specs Jul 7, 2016
plt The R13B03 release. Nov 20, 2009
system Merge branch 'schwartz/system/doc_fix' into maint Jul 15, 2016
xcomp ose: Remove all code related to the OSE port Jul 10, 2015
.gitattributes Stop including in .gitignore files in the source tar files Aug 18, 2010
.gitignore Merge branch 'dgud/tools/emacs-xref/PR-1051' May 20, 2016
.mailmap Add .mailmap file Feb 14, 2010
.travis.yml Update configuration Oct 2, 2015
AUTHORS The R13B03 release. Nov 20, 2009
LICENSE.txt Change license text to APLv2 Jun 18, 2015 Remove test_server as a standalone application Feb 17, 2016
OTP_VERSION Updated OTP version Jul 14, 2016 Simplify the rules for submitting patches Jun 15, 2016
TAR.include Move README and INSTALL to HOWTO folder Jul 19, 2012 Merge branch 'egil/erts/tracing-beam-lttng/OTP-10282' Apr 6, 2016 Change license text to APLv2 Jun 18, 2015
otp_build Delete dead code in `otp_build` script Jun 3, 2016
otp_patch_apply Change license text to APLv2 Jun 18, 2015
otp_versions.table Merge branch 'maint-19' into maint Jul 15, 2016
prebuild.delete Regenerate bootstrap/{erl,erlc} when switching target Aug 9, 2010
prebuild.skip OTP-8323 Cross compilation improvements and other build system Feb 3, 2010


Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecom, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.

OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems. It includes its own distributed database, applications to interface towards other languages, debugging and release handling tools.


BEAM is the name of the virtual machine where all Erlang code is executed. Every compiled Erlang file has the suffix .beam. The virtual machine is sometimes referred to as the emulator.

ERTS is the Erlang Runtime System where the BEAM, kernel and standard libraries amongst others are included.

More information can be found at

Building and Installing

Information on building and installing Erlang/OTP can be found in the $ERL_TOP/HOWTO/ document.

Contributing to Erlang/OTP

Here are the instructions for submitting patches.

In short:

  • Submit your patch by opening a new Pull Request.

  • Go to the JIRA issue tracker at to see reported issues which you can contribute to. Search for issues with the status Contribution Needed.

Bug Reports

Please look at the instructions for submitting bugs reports.

Copyright and License


Copyright Ericsson AB 2010-2014. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.