Erlang/OTP 19

這個版本的 Erlang/OTP 可以從原始碼建置,或是使用適用於您作業系統的預先建置套件或第三方工具(例如 kerlasdf)安裝。

docker run -it erlang:19

重點

  • 編譯器、stdlib:
    • 新的前處理器巨集 ?FUNCTION_NAME?FUNCTION_ARITY
    • 新的前處理器指令 -error(Term)-warning(Term) 分別會導致編譯錯誤或警告。
  • gen_statem 一個新的狀態機行為
  • mnesia_ext:將外部儲存解決方案外掛到 mnesia
  • crypto:在 OpenSSL 中使用 EVP 介面,通常可帶來更好的效能並支援硬體加速
  • ssh:效能改進,使用新的 gen_statem 行為
  • ssl:增強的錯誤記錄訊息
  • dialyzer:對 map 的支援已大幅擴展,包括型別規格語法和型別分析。
  • erts:
    • erlang:open_port(spawn, ...) 快 3-5 倍
    • 追蹤功能,大幅改進(可擴展性、速度、在發送/接收上的比對規格、支援 lttng 等等)
    • 改進的 dirty schedulers
    • 每個程序可配置的 message_queue 處理
    • 快速載入多個模組
    • max_heap_size 程序標誌
  • erts/kernel:實驗性支援 Unix Domain Sockets
    範例:gen_udp:open(0, [{ifaddr,{local,"/tmp/socket"}}])