akkun_choi pedia
mindia › akkun_choi pedia › 単語

ファーストクラスオブジェクト

akkun_choi · 2010-08-24 更新 · 履歴(1)

C言語では、数値や配列や構造体はファーストクラス。関数はそうではない
Smalltalkでは、関数はファーストクラス。

JavaScriptのFunctionもそうかな?
Pythonの関数もファーストクラスらしい。

Rubyのメソッドは全てオブジェクトに所属するため、メソッド単独では存在できない。だから正確にはファーストクラスではない。MethodオブジェクトはJavaと同じく単なるリフレクションだろう。Procオブジェクト自体はファーストクラス。

Scalaのメソッドは引数にそのまま入れられるけど、変数に入れられないからファーストクラスではない。

参考
http://d.hatena.ne.jp/nishiohirokazu/20100724/1279999839
http://tsumuji.cocolog-nifty.com/tsumuji/2010/08/ruby-python-108.html
http://yugui.jp/articles/741
http://wota.jp/ac/?date=20100426

タグ