関数とメソッドの関係
関数とメソッドは概念として非常に近いが、その関係は言語によってさまざま 関数とメソッドが別もの
オブジェクト指向だとメソッドしかないことはよくある
クラスの中にしかメソッドが書けなかったり
関数型だと関数しかないことはめちゃくちゃある
そもそも関数型言語はオブジェクト指向的な要素がないがち
OCamlは一応ある、F#も.NETとの兼ね合いである
手続き型だと手続き (procedure) がち
そもそもCの関数は手続きで~~
メソッドの実体が関数
JavaScriptだとオブジェクトに属する関数、特に this にアクセスするものがメソッドと呼ばれる MDNだと Number.parseInt みたいなのも静的メソッド扱いだ Java的な見方をすればそうかも
まずオブジェクトと第1級関数がある
関数の実体がオブジェクト
Scalaでは apply をもつオブジェクトは f() みたいにできるので関数とよばれる まずオブジェクトとメソッドがある
メソッドは関数の一種