タグ

ブックマーク / www.ruby-lang.org (3)

  • Ruby 2.6.0-preview3 Released

    Posted by naruse on 6 Nov 2018 Ruby 2.6.0に向けた3つ目のプレビューである、Ruby 2.6.0-preview3がリリースされました。 Ruby 2.6.0-preview3は、リリース前に出されるRelease Candidateに向けて最新の機能を試せるようにするためリリースされています。 JIT Ruby 2.6ではJIT (Just-in-time) コンパイラが導入されました。 JITコンパイラはあらゆるRubyプログラムの実行を高速化することを目的としています。 他言語の一般的なJITコンパイラと異なり、RubyのJITコンパイラはC言語のソースコードをファイルとしてディスクに書き、通常のCコンパイラを用いてネイティブコードに変換することでJITコンパイルを行うという手法を用いています。(参考: MJIT organization by

    slay-t
    slay-t 2018/11/07
  • Ruby 2.5.0 リリース

    Posted by naruse on 25 Dec 2017 Ruby 2.5シリーズの最初の安定版である、Ruby 2.5.0がリリースされました。 Ruby 2.5.0には、多くの新しい機能やパフォーマンスの改善が含まれています。 その一部を以下に紹介します。 新機能 rescue/else/ensure が do/end ブロック内にも直接書けるようになりました。 [Feature #12906] yield_self が追加されました。与えられたブロックをそのコンテキストでyieldします。tapと異なり、yield_self はブロックの値を返します。[Feature #6721] 分岐カバレッジとメソッドカバレッジの計測がサポートされました。分岐カバレッジは分岐が実行されたかどうかを表します。またメソッドカバレッジはメソッドが呼び出されたかどうかを測定します。テストスイートを

  • Ruby 2.1.1 に含まれる Hash#reject の不具合について

    Posted by sorah on 10 Mar 2014 Translated by sorah Ruby 2.1.0 まで、Hash を継承したクラスの reject メソッドはその継承したクラスのオブジェクトを返す挙動になっていました。 しかし、Ruby 2.1.1 で意図せずその挙動が変更され、継承したクラスの場合でも必ず Hash クラスのオブジェクトが返る挙動に変更されてしまっています。 class SubHash < Hash end p Hash.new.reject { }.class #=> 2.1.0: Hash, 2.1.1: Hash p SubHash.new.reject { }.class #=> 2.1.0: SubHash, 2.1.1: Hash (正確にはインスタンス変数など他の属性もコピーされなくなっています。) Ruby 2.1.0 からバージ

  • 1