Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
関数型プログラミングでは、Ocaml特に関数が作成されるときに、すべてへの参照non-local variableが作成されるため、非ローカル変数がスコープ外にある場合でも使用できます。これはクロージャと呼ばれます。 また、cプログラミング言語には、変数のメモリ位置を参照するポインタの概念があります。 クロージャとポインタの違いはスコープにあります。それで全部ですか?
Ocaml
non-local variable
c
クロージャを実装するには、のコンパイラ/インタプリタは、OCaml参照されるすべての変数のコピーと関数へのポインタを含む構造体を割り当てる必要があります。ではC、関数ポインタは単なるポインタであるため、割り当てはありません。
OCaml
C