今日はコードが表示されます
#! cruby 1.9
lam = lambda do |(a,b),c|
#blahblah
end
一見等しい
lam = lambda do |l,c|
a,b = *l
#blahblah
end
この構文の「正式名称」はありますか?
はい、それは破壊と呼ばれます。
では、破壊とは何ですか?私が見つけた最も簡潔な定義は、Common LisptheLanguageからのものです。デストラクチャリングを使用すると、通常は単一の変数に値をバインドできる場所であればどこでも、変数のセットを対応する値のセットにバインドできます。これはClojureの強力な機能であり、非常にエレガントなコードを記述できます。Clojureの機能の詳細については、このテーマに関するJayFieldのブログ投稿を確認することをお勧めします。Rubyでの破棄は、Clojureほど強力ではありませんが、それでもいくつかのクールなことを行うことができます。