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

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


Branch: CURRENT, Version: 22.0, Package name: erlang-doc-22.0, 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:
[lang/erlang]

Required to build:
[pkgtools/cwrappers]

Master sites:


Version history: (Expand)


CVS history: (Expand)


   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:

http://blog.erlang.org/OTP-22-Highlights/

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 \ 
node.
    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.

Erts:

    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 \ 
lists.
    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.

Compiler:

    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:

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

    SSL:
        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

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

    OTP:
        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
        documentation
   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.

Erts:
- 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.

Compiler:
- 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

Security:
- 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.
   2018-03-16 12:45:30 by Filip Hajny | Files touched by this commit (6) | Package updated
Log message:
lang/erlang: Update to 20.3.

ssl:
- Added new API functions to facilitate cipher suite
  handling

erts, observer:
- More crash dump info such as: process binary virtual
  heap stats, full info for process causing out-of-mem
  during GC, more port related info, and dirty scheduler
  info.

inets:
- Add support for unix domain sockets in the http client.
   2017-12-13 15:45:20 by Filip Hajny | Files touched by this commit (8) | Package updated
Log message:
Update lang/erlang* to 20.2.

Some highlights:

crypto, ssl:
- The crypto API is extended to use private/public keys
  stored in an Engine for sign/verify or encrypt/decrypt
  operations.
- The ssl application provides an API to use this new
  engine concept in TLS.

ssh:
- SSH can now fetch the host key from the private keys
  stored in an Engine. See the crypto application for
  details about Engines.

ssl:
- A new command line option -ssl_dist_optfile has been
  added to facilitate specifying the many options needed
  when using SSL as the distribution protocol.

stdlib:
- Improve performance of the new string functionality
  when handling ASCII characters.

Full release notes:

  http://www.erlang.org/download/otp_src_20.2.readme