>>150
>逆に、他の言語で可能だけどRubyじゃできない書き方って何かあるの?
Ruby と競合するLLで、かつ関数型というパラダイムに限定すれば、
「関数は一級市民ではない」という制限がある
これは Ruby の世界だと「メソッドがオブジェクトではない」と
言い換えることができる
具体的なコードを Python で示そう:
(注:以下は Python を例にしているが、JavaScriptでも同様なコードは書ける)
>>> def add(x, y): return x + y # 関数 add を定義
... ^D
>>> add(1, 2) # 関数へ実引数 (1, 2) を適用
3
>>> f = add # 関数は値(=一級市民)だから、それを別の変数 f として宣言
>>> f(1, 2) # 変数 f へ実引数 (1, 2) を適用しても add と同じ結果になる
3
それに対して Ruby では:
irb(main):001:0> def add(x, y); x + y; end # メソッド add を定義
=> :add
irb(main):002:0> f = add # メソッドは値(=一級市民)ではないから..(略
ArgumentError: wrong number of arguments (given 0, expected 2)
from (irb):1:in `add'
from (irb):2
from /opt/local/bin/irb:11:in `<main>'
探検
Ruby 初心者スレッド Part 61 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
210デフォルトの名無しさん
2017/09/11(月) 22:10:48.79ID:8y57wnUU■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 人間の髪の毛は押し出されるのではなく「引っ張られる」ことで成長する [少考さん★]
- 【原因は日本】元外交官ら高市首相答弁の撤回要求 「被害者のように振る舞っても事態は打開されない」… [BFU★]
- 高市首相「多様なコメの増産を進める」 方針転換への懸念払拭狙いか [どどん★]
- (社説)スパイ防止法の策定 民主社会の基盤を崩さないか:朝日新聞 [少考さん★]
- グリコが「ポッキー」など600万個自主回収 チョコに香辛料の香り [少考さん★]
- 【国内総生産】実質GDP、年2.3%減に下方修正 設備投資落ち込み 7~9月期改定値 [ぐれ★]
- バカウヨ高市早苗自民党は戦争回避の為の外交努力の一切を放棄しているよね 中国父さんのミサイル絨毯爆撃で死にたくないよおお😭 [817148728]
- 愛国者「日本が好きで何が悪いの?」 [834922174]
- 【雑談】暇人集会所part42
- 地方創生☆チクワクティクスでひなビタお🏡を萌え起こしめう!
- 高市「減反します」→叩かれたため「多様なコメの増産を進める!」と言い始める😮 [931948549]
- 元外交官や大学教授「原因は高市が作った。発言を撤回せよ」記者会見を開く [931948549]
