2020/11/05 今週の気になった bugs.ruby のチケット

内容は適当です。
今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。
あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。

[Feature #17292] Hash Shorthand / Punning

  • { a: a, b: b, c: c }{ a:, b:, c: } みたいなショートハンドでかけるようにする提案
# Hash Punning
a = 1
b = 2
c = 3

{ a:, b:, c: }
# => { a: 1, b: 2, c: 3 }
# Method Punning
def method_name(a:, b:, c:)
  a + b + c
end

a = 1
b = 2
c = 3

method_name(a:, b:, c:)
# => 6
  • 同じような提案は昔から存在しているが当時は Reject されている
  • 今回チケットを立てたモチベーションとしてはパターンマッチで似たような構文がかけるようになったので構文的な違和感がなくなってきたんじゃないか?という感じ
# 今後はこのようなコードがかけるようになる
user = { name: "homu", age: 14 }
case user
in { name:, age: }
end

user => { name:, age: }

merge, fix されたチケット