struct
structure라고 불린다. structure는 단순히 definition의 연속이다.
structure가 signature에 선언된 value에 대한 정의를 제공한다.
ocaml 코드
struct (* definitions *) end
sig
signature라고 불린다. signature는 단순히 declaration의 연속이다.
모듈 type definition에 의해 이름이 bound되기 전 까지 anonymous하다.
structure의 definition은 signature에 선언되어 있는 형식 요건을 충족해야 한다.
ocaml 코드
sig (* declarations *) end
Sig는 signature이다. f라는 이름의 value의 타입이 int -> int라고 선언되어 있다.
M1이 Sig에 정의된 f에 대한 정의를 제공한다. 따라서 M1의 f는 int x를 받아서 int (x+1)을 결과로 준다.
마찬가지로 M2의 f는 int x를 받아서 int x를 결과로 준다.
이 글은 제가 Ocaml을 공부하며 작성한 글로 정확하지 않은 부분이 있을 수 있습니다.
728x90
'Ocaml' 카테고리의 다른 글
OCaml 의 Record 타입 (0) | 2021.09.03 |
---|---|
OCaml의 Queue 1 (0) | 2021.09.02 |
OCaml의 tree 1 (0) | 2021.08.31 |
OCaml의 option 타입 (+function) (0) | 2021.08.31 |
OCaml의 print (0) | 2021.08.30 |
댓글