./lang/erlang-doc, Documentation for Erlang, a concurrent functional programming language

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 22.1, Package name: erlang-doc-22.1, Maintainer: pkgsrc-users

Erlang is a programming language which has many features more commonly
associated with an operating system than with a programming language:
concurrent processes, scheduling, memory management, distribution,
networking, etc.

This package provides the documentation for Erlang and its components.

Required to run:

Required to build:

Master sites:

Version history: (Expand)

CVS history: (Expand)

   2019-11-23 23:57:19 by David H. Gutteridge | Files touched by this commit (1)
Log message:
erlang-doc: fix PLIST for 22.1 version bump
   2019-11-23 09:08:36 by Makoto Fujiwara | Files touched by this commit (1)
Log message:
(lang/erlang-doc) regen distinfo for 22.1
   2019-08-01 13:43:01 by Nia Alarie | Files touched by this commit (11) | Package updated
Log message:
erlang: Update to 22.0.7

Erlang/OTP 22 is a new major release with new features and improvements as well \ 
as incompatibilities.

For a deeper dive into the hightligts of the OTP 22 release, you can read our \ 
blog here:


Potential Incompatibilities

    gen_* behaviours: If logging of the last N messages through sys:log/2,3 is \ 
active for the server, this log is included in the terminate report.
    reltool: A new element, Opts, can now be included in a rel tuple in the \ 
reltool release specific configuration format: {rel, Name, Vsn, RelApps, Opts}.
    All external pids/ports/refs created by erlang:list_to_pid and similar \ 
functions now compare equal to any other pid/port/ref with same number from that \ 
    The old legacy erl_interface library is deprecated as of OTP 22, and will be \ 
removed in OTP 23. This does not apply to the ei library.
    VxWorks is deprecated as of OTP 22 and will be removed in OTP 23.


    Support for Erlang Distribution protocol to split the payload of large \ 
signals into several fragments.
    ETS option write_concurrency now also effects and improves scalability of \ 
ordered_set tables.
    The length/1 BIF used to calculate the length of the list in one go without \ 
yielding, even if the list was very long. Now it yields when called with long \ 
    A new (still experimental) module socket is introduced. It is implemented as \ 
a NIF and the idea is that it shall be as "close as possible" to the \ 
OS level socket interface.
    Added the NIF function enif_term_type, which helps avoid long sequences of \ 
enif_is_xyz by returning the type of the given term. This is especially helpful \ 
for NIFs that serialize terms, such as JSON encoders, where it can improve both \ 
performance and readability.


    The compiler has been rewritten to internally use an intermediate \ 
representation based on Static Single Assignment (SSA). The new intermediate \ 
representation makes more optimizations possible.
        The binary matching optimizations are now applicable in many more \ 
circumstances than before.
        Type optimizations are now applied across local function calls, and will \ 
remove a lot more redundant type tests than before.
    All compiler options that can be given in the source file can now be given \ 
in the option list on the command line for erlc.
    In OTP 22, HiPE (the native code compiler) is not fully functional. The \ 
reasons for this are new BEAM instructions for binary matching that the HiPE \ 
native code compiler does not support. If erlc is invoked with the +native \ 
option, and if any of the new binary matching instructions are used, the \ 
compiler will issue a warning and produce a BEAM file without native code.

Standard libraries:

    Cover now uses the counters module instead of ets for updating counters. The \ 
new function cover:local_only/0 allows running Cover in a restricted but faster \ 
local-only mode. The increase in speed will vary depending on the type of code \ 
being cover-compiled, as an example the compiler test suite runs more than twice \ 
as fast with the new Cover.
    A simple socket API is provided through the socket module. This is a low \ 
level API that does *not* replace gen_[tcp|udp|sctp]. It is intended to \ 
*eventually* replace the inet driver. It also provides a basic API that \ 
facilitates the implementation of other protocols than TCP, UDP and SCTP. Known \ 
issues are; No support for the Windows OS (currently), a small term leakage. \ 
This feature will be classed as experimental in OTP 22.
    SSL: now uses the new logger API, including log levels and verbose debug logging.
    SSL: Basic support for TLS 1.3 Server for experimental use.
    crypto: The new hash_info/1 and cipher_info/1 functions returns maps with \ 
information about the hash or cipher in the argument.
   2019-07-03 09:26:36 by Nia Alarie | Files touched by this commit (3)
Log message:
Use https for erlang.org
   2019-04-23 20:47:17 by Nia Alarie | Files touched by this commit (9) | Package updated
Log message:
lang/erlang: Update to 21.3.6

Highlights from erlang 21.2 to 21.3:

        The standard logger handler, logger_std_h, now has a new internal
        feature for log rotation. For full information see the documentation.

        The Reason part of the error return from the functions connect and
        handshake has a better and documented format. This is a potential
        incompatibility. See the documentation.
        Refactoring of state handling has improved the TLS application data
        throughput and reduced CPU overhead
        Code optimizations has reduced CPU load for encryption/decryption,
        especially for Erlang's distribution protocol over TLS
        Now supports active N

        Support for plugin of a user supplied socket implementation has been added.

        The HTML reference documentation now shows the OTP version where
        modules and functions were first introduced. Versions of OTP older than \ 
R13B04 is not shown in the reference
   2019-01-23 13:46:22 by Nia Alarie | Files touched by this commit (3) | Package updated
Log message:
erlang-doc: Update to 21.2
   2018-09-13 11:02:52 by Jonathan Perkin | Files touched by this commit (2)
Log message:
erlang-{doc,man}: Fix DEPENDS to handle DIST_VERSION_PATCH.
   2018-07-03 13:01:21 by Filip Hajny | Files touched by this commit (13) | Package updated
Log message:
lang/erlang*: Update to 21.0

Potential Incompatibilities
- All Corba applications are now moved from the OTP repository
- A new Corba repository will be created https://github.com/erlang
- New applications ftp and tftp, moved from inets
- ssl no longer supports 3_DES cipher suites or RSA-key exchange
  cipher suites by default
- Erlang:monitor on a primitive node (erl_interface, jinterface, etc)
  will no longer fail with badarg exception. Instead a monitor will be
  created, but it will only supervise the connection to the node.

- Enhanced IO scalability
- Support for usage of distribution controller processes for
  alternative transports, routing etc
- compact instructions on 64bit systems for code below 4GB 20% less
  memory for loaded code
- Rewrite of the efile-driver with NIFs and "Dirty schedulers"
  resulting in faster file operations
- non-smp VM removed
- link and monitor optimized for scalability
- os:getenv/putenv now work on thread-safe emulation. No longer in
  sync with libc getenv(3). Manual synchronization will be needed.

- Misc compiler optimizations including contributions from the Elixir
  team resulting in 10% improvements in benchmarks
- "Tuple calls" have been removed from the run-time system.
- Code such as f({ok, Val}) -> {ok, Val} is now automatically
  rewritten to f({ok, Val} = Tuple) -> Tuple. this reduces code size,
  execution time, and removed GC pressure.
- More information in stacktrace from a number of operators
- erlang:get_stacktrace/0 deprecated to be replaced with try ... catch
  C:R:Stacktrace -> ...
- Creation of small maps with literal keys optimized.
- A new predefined macro OTP_RELEASE and preprocessor directives -if
  and -elif

- DTLS is now supported in the SSL application
- Enhanced support for distribution over TLS
- "unsecure" ciphers removed from defaults in SSL and SSH.
- A new option value defined to facilitate implementing exec servers.
  Old option kept for compatibility, but now gives errors on stderror.

Standard libraries:
- New API for logging, logger
- New uri_string module for parsing URIs according to "The standard"
- New function lists:search(list,fun/1) -> {ok, Value} | false
- Changed default behaviour of .erlang loading. escript, erlc,
  dialyzer and typer no longer load an .erlang at all.