Highlights of Erlang/OTP R6B (Erlang 4.9)
This document points at the most important improvements in Erlang/OTP R6B (Erlang 4.9.1). For more detailed information, please check the release notes for the respective applications.
- The JAM machine has been dropped and Erlang/OTP R6B is released for the faster and more efficient BEAM machine only.
- Improved release handling. Applications like Orber does now fully support upgrade in run-time.
- Extended standard support.
- The compiler has been entirely rewritten for this release. It generally generates smaller and faster code than the old compiler.
- An Erlang implementation of the OMG CORBA Transaction service.
- Enhanced support for debugging of runtime failures.
- A facility to collect the last global function calls made by a process is added. The list of calls can be displayed in case of failure.
- A failure in OTP code will now carry with it a stack backtrace to point out the specific location of the error.
- Performance enhancements
- The process dictionary is generally faster and optimized for use with integer keys. This makes storing of debugging information in the dictionary feasible.
- Funs have their own type
Funs are no longer represented as tuples (except when communicating with old
R5-based erlang nodes).
Calling a fun is somewhat faster.
- Enhanced tracing
- The tracing facilities (along with the module dbg) are improved in numerous ways. The performance penalty for call tracing can be mininized as very specific patterns for tracing can be specified and the trace output can be sent to trace ports without ever producing a message in the erlang machine.
- The sequential tracing facility is now also supported in the BEAM virtual machine.
- Potential incompatibilities
- The enhanced exit codes in case of failure, generated by the erlang BIFs and OTP functions, contain additional information. Functions which catch errors and try to match the exit tuple completely have to be rewritten to handle the stack back trace. See the README file of the distribution for further information.
- The code generated for the Java backend is optimized.
- EXIT codes now contains more information about where the error occured.
- The disk_log module has been improved.
- It is now possible to use secure IIOP connections to and from Orber. Orber currently only supports security with the help of SSL.