Ruby 2.6 の変更点 - Method と Proc

Ruby2.6アドベントカレンダーの12日目の記事です。 qiita.com Method Method#<<, Method#>> 追加 Proc Proc#<<, Proc#>> 追加 Method Method#<<, Method#>> 追加 https://bugs.ruby-lang.org/issues/6284 このメソッドオブジェクトと他のメソッドやProc等(#c…

Ruby 2.6 の変更点 - KeyError, NameError, NoMethodError

Ruby2.6アドベントカレンダーの11日目の記事です。 qiita.com KeyError KeyError.new に :receiver, :key オプション追加 NameError NameError.new に :receiver オプション追加 NoMethodError NoMethodError.new に :receiver オプション追加 KeyError KeyE…

Ruby 2.6 の変更点 - IO

Ruby2.6アドベントカレンダーの10日目の記事です。 qiita.com IO ファイルオープン時のモードに x 追加 IO ファイルオープン時のモードに x 追加 https://bugs.ruby-lang.org/issues/11258 ファイルを作成用にオープンするには w を指定しますが、これはファ…

Ruby 2.6 の変更点 - Exception

Ruby2.6アドベントカレンダーの9日目の記事です。 qiita.com Exception Exception#full_message に :highlight, :order オプション追加 Exception Exception#full_message に :highlight, :order オプション追加 https://bugs.ruby-lang.org/issues/14324 2.…

Ruby 2.6 の変更点 - TracePoint

Ruby2.6アドベントカレンダーの8日目の記事です。 qiita.com TracePoint TracePoint#parameters 追加 TracePoint#enable に :target, :target_line キーワード引数追加 TracePoint TracePoint#parameters 追加 https://bugs.ruby-lang.org/issues/14694 メソ…

Ruby 2.6 の変更点 - Kernel

Ruby2.6アドベントカレンダーの7日目の記事です。 qiita.com Kernel Kernel#then 追加 Kernel#Complex, Kernel#Float, Kernel#Integer, Kernel#Rational に :exception オプション追加 Kernel#system に :exception オプション追加 Kernel#system と Kernel#…

Ruby 2.6 の変更点 - Enumerator と Enumerable

Ruby2.6アドベントカレンダーの6日目の記事です。 qiita.com Enumerator Enumerator#+, Enumerator#chain 追加 Enumerator::ArithmeticSequence 追加 Enumerator::Lazy#filter 追加 Enumerable Enumerable#chain 追加 Enumerable#to_h にブロックを渡すとキ…

Ruby 2.6 の変更点 - Hash

Ruby2.6アドベントカレンダーの5日目の記事です。 qiita.com Hash Hash#merge, merge!, update が複数の引数を受けつける Hash#to_h にブロックを渡すとキーと値を変換できる Hash#filter, Hash#filter! の追加 Hash Hash#merge, merge!, update が複数の引…

Ruby 2.6 の変更点 - Dir, File, FileUtils

Ruby2.6アドベントカレンダーの4日目の記事です。 qiita.com Dir Dir#each_child, Dir#children 追加 Dir.glob で \0 が非推奨 File File.read, .binread, .write, .binwrite, .foreach, .readlines が | で始まっていても外部コマンドを実行しない FileUtil…

Ruby 2.6 の変更点 - Array

Ruby2.6アドベントカレンダーの3日目の記事です。 qiita.com Array Array#union 追加 Array#difference 追加 Array#filter, Array#filter! 追加 Array#to_h にブロックを渡すとキーと値を変換できる Array Array#union 追加 https://bugs.ruby-lang.org/issu…

Ruby 2.6 の変更点 - 言語仕様その2

Ruby2.6アドベントカレンダーの2日目の記事です。 qiita.com 言語仕様 キーワード引数のハッシュのキーがシンボルでない場合はエラー 変数名と同じブロックパラメーターでの警告を削除 原因となった例外も出力 言語仕様 キーワード引数のハッシュのキーがシ…

Ruby 2.6 の変更点 - 言語仕様その1

Ruby2.6アドベントカレンダーの1日目の記事です。 qiita.com Ruby は毎年クリスマスにバージョンが上がります。 今年も順調にいけば 12/25 に Ruby 2.6 がリリースされる予定です。 2.6 がリリースされるまで毎日少しずつ変更点を見ていきます。 ソースは NE…

Windowsの端末まわりをいじる

前回の続き。 デスクトップ環境はWindowsなんだけど、結局は端末エミュレータからLinuxにsshしてるので、端末環境を整備。 昔はよく Tera Term を使ってたけど、ユニコード絵文字が表示できないみたいなのでやめ。 やっぱり昔よく使ってた Putty と、あと RL…

Windows のキーボードまわりをいじる

今まで十何年か Linux デスクトップ環境で過ごしてきたんだけど、最近いろいろ環境が変わったのを気に、デスクトップ環境を Windows にしようかと思ったり。 といっても、最低限のカスタマイズは必要なので色々とやる。 「A」の左隣のキーを CapsLock から C…

逆ポーランド記法

ふと、逆ポーランド記法ってのがあったなーと思い出したんだけど、アルゴリズムを全然忘れてたのでネットで検索して、Rubyで実装してみた。 参考にしたページ→ 数式を逆ポーランド法に変換するための事柄 class ReversePolish # 演算子の優先度 OP = { '+' =…