タグ

lambdaとocamlに関するjjzakのブックマーク (1)

  • 第16回 すべてのものは関数である

    すべてのものは…である SmalltalkやRubyなど,いわゆる生粋のオブジェクト指向言語では,「すべてのものはオブジェクトである」(everything is an object)と言われることがある。JavaC++などと異なり,整数の「123」や浮動小数の「4.56」といった,基データ型の値もオブジェクトとして扱うことができるからだ(ちなみに,現在のJavaには自動ボックス化という機能があり,基データ型からオブジェクト型への変換が自動で行われる場合も多い。しかし,両者の差異が全くなくなったわけではない。例えば123.toString()のようなメソッド呼び出しはできない)。 では,オブジェクト指向言語のまねをして,関数型言語において「すべてのものは関数である」と言うことはできるだろうか? もちろん,オブジェクト指向と違って,関数型プログラミングはあくまで「数学的な(=副作用のな

    第16回 すべてのものは関数である
  • 1