Linuxeden 开源社区 --
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 keya
. - 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
没有评论:
发表评论