12月11日~13日,
RubyKaigi 2015初日の基調講演はまつもとゆきひろさんです。
MINASWAN
"MINASWAN"という海外で生まれた標語があります。この言葉,
Rubyコミュニティの徳
ラリー・
- 怠惰 (自分の仕事を楽にするためにはどんな努力でもする)
- 短気 (コンピュータが怠けているのに怒りを感じ,
コンピュータが意図を読みとって動作するようにする) - 傲慢 (他の人が文句をつけないようなものを作る)
これらはすべて怒りの感情に通じています。怒りは制御されている限りにおいてはモチベーションに繋がりますが,
Matz is nice so we are nice
そしてRubyコミュニティには,
この標語についてあまり日本では触れられることがないため,
2. 3.0 の変更点について
RubyKaigi 2015に合わせて 2.
2.
- Did-you-mean
Enumerable#grep_v Hash#fetch_values Numeric#positive?,Numeric#negative?Hash#<=,Hash#<,Hash#>=,Hash#>Hash#to_proc Array#dig,Hash#dig,Struct#dig- Indented here doc
<<~ - Frozen string literals pragma
- Safe navigation operator
詳細については 2.
Frozen string literals
ここでは,
Stringリテラル"literal").freezeしたものとして扱うコマンドラインオプションとマジックコメントが導入されました。この背景にはfreezeにまつわる社会問題があったと,
Ruby 2."literal".freezeが最適化され,Stringオブジェクトを都度生成せずに常に同じオブジェクトを返すようになりました。"literal"が何度も評価されるような場合には"literal".freezeすることでパフォーマンスの向上が見込まれます。
しかしこれにより,"literal"に対して,.freezeをつけるような Pull Requestが散見されるようになりました。確かに高速化はされるのですが,Stringリテラルをimmutableにすることを検討しており,