歡迎您光臨本站 註冊首頁

Ruby 2.7.0-rc2 發布,引入模式匹配、壓縮 GC,改進 REPL

←手機掃碼閱讀     admin @ 2019-12-22 , reply:0

Ruby 2.7.0-rc2 發布了,最終版本計劃於 12 月 25 日發布。

此版本引入了許多新特性和性能改進,最值得注意的包括:

  • 模式匹配

模式匹配是函數式編程語言中廣泛使用的特性,如果匹配某一個模式,它可以遍歷給定的對象並分配其值:


require "json"

json = <<END
{
  "name": "Alice",
  "age": 30,
  "children": [{ "name": "Bob", "age": 2 }]
}
END

case JSON.parse(json, symbolize_names: true)
in {name: "Alice", children: [{name: "Bob", age: age}]}
  p age #=> 2
end
  • REPL 改進

綁定的互動式環境 irb 現在支持多行編輯,由 reline 提供支持,reline 是一種與 readline 兼容的純 Ruby 實現。它還提供了 rdoc 集成。在 irb 中,可以顯示給定類、模塊或方法的引用。此外,binding.irb 中顯示的源代碼行和核心類對象的檢查結果現在以顏色區分顯示。

  • 壓縮 GC(Compaction GC)

壓縮 GC 可以對碎片化的內存空間進行碎片整理。一些多線程 Ruby 程序可能會導致內存碎片,從而導致高內存使用率和速度下降。引入了 GC.compact 方法來壓縮堆,此函數壓縮堆中的活動對象,以便可以使用更少的頁,並且堆可能對 CoW 更友好。

  • 位置參數和關鍵字參數的分離

不建議使用關鍵字參數和位置參數的自動轉換,並且在 Ruby 3 中將刪除此轉換。

詳情查看更新說明:

https://www.ruby-lang.org/en/news/2019/12/21/2-7-0-rc2-released


[admin ]

來源:OsChina
連結:https://www.oschina.net/news/112239/ruby-2-7-0-rc2-released
Ruby 2.7.0-rc2 發布,引入模式匹配、壓縮 GC,改進 REPL已經有296次圍觀

http://coctec.com/news/all/show-post-221478.html