Ruby 2.7.0がリリース - Pattern MatchingやREPLの改良、Compaction GCの導入など

S 20191226 94310

Ruby開発チームは12月25日、Ruby 2.7シリーズの最初の安定版となる「Ruby 2.7.0」をリリースしました(ruby-lang.org)。現在公式サイトよりソースコードをダウンロードすることができます。

Ruby 2.7は毎年クリスマスに公開されているRubyのメジャーバージョンアップ版で、多くの新しい機能やパフォーマンスの改善が含まれています。

Ruby 2.7では、関数型言語で広く使われているPattern Matching(パターンマッチ)という機能の実験的な導入が行われ、複雑な条件の比較が完結に記述できるようになっています。

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の複数行編集昨日のサポートやrodc連携機能の追加、断片化したメモリをデフラグするCompaction GCの導入などが行われています。

その他、キーワード引数の通常の引数からの分離、デフォルトのブロックの仮引数としての番号指定パラメータの試験的導入、開始値省略範囲式の試験的導入、各要素の出現回数をカウントするEnumerable#tallyの追加、レシーバをselfとしてprivateメソッドを呼び出すことを許容する変更、Enumerator::Lazy#eagerの追加、JITのパフォーマンスの改良など、さまざまな新機能や改良が行われています。

変更点の詳細はNEWSコミットログで確認可能です。

Pc タイトル Ruby
公式サイト http://www.ruby-lang.org/ja/
ソフトアンテナ https://www.softantenna.com/softwares/1964-ruby
説明 オブジェクト指向スクリプト言語。

スポンサーリンク