OTP-6505 There is a new escript program that can be used for writing
scripts in Erlang. Erlang scripts don’t need to be compiled
and any arguments can be passed to them without risk that
they are interpreted by the Erlang system.
OTP-6546 Dialyzer (in the modes where either source or BEAM code which
contains debug_info is analyzed) spits out line information
for all discrepancies. This has been a major change, worth of
increasing the version number.
We warn users that *considerably* more discrepancies are
identified by this version of Dialyzer compared with previous
ones and applications. If, for some reason, warnings
generated by previous versions of Dialyzer are preferable,
the command line option –old_style can be employed.
— HIGHLIGHTS ————————————————————
OTP-6505 There is a new escript program that can be used for writing
scripts in Erlang. Erlang scripts don’t need to be compiled
and any arguments can be passed to them without risk that
they are interpreted by the Erlang system.
这个 escript 让我想起了 groovy/jruby 之于 java 7 。支持脚本的编程语言,可以用它来做些什么呢?
OTP-6546 Dialyzer (in the modes where either source or BEAM code which
contains debug_info is analyzed) spits out line information
for all discrepancies. This has been a major change, worth of
increasing the version number.
We warn users that *considerably* more discrepancies are
identified by this version of Dialyzer compared with previous
ones and applications. If, for some reason, warnings
generated by previous versions of Dialyzer are preferable,
the command line option –old_style can be employed.
这个应该是编译过程中的优化,Debug信息当中的行号,被单独处理。也是此次版本号升级的主要原因。
Escript 这东西,可是第一次听说。有空找找文档看一下
简单看了一下,貌似仅仅是无需编译就能够执行erl文件,语法这些都是一致的。
尝试了一下能否在运行时改变代码后改变行为,不可以。。看来加载进去之后跟erl加载没有什么两样
EScript还是比较初级的版本,估计也会推出reload或hotdeploy之类的特性(erlang本身都可以,没有理由在他基础之上的EScript不可以)。
目前想到,可以用来做系统中部分的“定制逻辑”。在部署的时候,可以根据具体情况调优。