2017年6月23日星期五

Erlang/OTP 20.0 发布,动态类型编程语言


Linuxeden 开源社区 --Erlang
Erlang

Erlang/OTP 20.0 是一个新的主要版本,带来了新功能、一些特征以及不兼容性的改进。

与第二次发布的 RC 版相比,只有很小的变化,下面列出了其中的一部分:

  • ERTS:
    • erlang:term_to_binary/1 更改了所有 atoms 的编码,由 ATOM_EXT 变为 ATOM_UTF8_EXT 和 SMALL_ATOM_UTF8_EXT。因此只有包含 unicode 字符的 atom 才使用 UTF8 标签编码,其他的 atoms 像以前一样编码为 ATOM_EXT

以下是 OTP 20 中的一些重要更新:

Erts:

  • Dirty schedulers enabled and supported on VM with SMP support.
  • support for “dirty” BIFs and “dirty” GC.
  • erlang:garbage_collect/2 for control of minor or major GC
  • Erlang literals are no longer copied when sending messages.
  • Improved performance for large ETS tables, >256 entries (except ordered_set)
  • erlang:system_info/1 atom_count and atom_limit
  • Reduced memory pressure by converting sub-binaries to heap-binaries during GC
  • enif_select, map an external event to message
  • Improvements of timers internally in the VM resulting in reduced memory consumption and more efficient administration for timers

Compiler:

  • Code generation for complicated guards is improved.
  • Warnings for repeated identical map keys. #{'a'=>1, 'b'=>2, 'a'=>3} will warn for the repeated key a.
  • By default there is now a warning when export_all is used. Can be disabled
  • Pattern matching for maps is optimized
  • New option deterministic to omit path to source + options info the BEAM file.
  • Atoms may now contain arbitrary unicode characters.
  • compile:file/2 has an option to include extra chunks in the BEAM file.

更新内容较多, 详情点此查阅

下载地址:

发布主页

Erlang 是一个结构化,动态类型编程语言,内建并行计算支持。最初是由爱立信专门为通信应用设计的,比如控制交换机或者变换协议等,因此非常适合于构建分布式,实时软并行计算系统。

转自 http://ift.tt/2tYgegn

The post Erlang/OTP 20.0 发布,动态类型编程语言 appeared first on Linuxeden开源社区.

http://ift.tt/2tZ4aLT

没有评论:

发表评论