오보에블로그

4. OCaml 모듈 실행 본문

Prev./Lab

4. OCaml 모듈 실행

(OBO) 2019. 1. 31. 14:24
728x90

4. OCaml 모듈 실행

모듈은 OCaml에서 자주 사용되는 기능이다.

파일 명을 amoudule.ml , bmodule.ml 이라고 정의 한다면, 자동으로 Amodule , Bmodule가 정의 되고  각 모듈들은 해당파일 내에 입력한 내용을 제공하게 된다.


<두 파일 (모듈) 을 통해 실행 >

예시)))


amodule.ml 파일 내용:

let hello () = print_endline "Hello"


bmodule.ml 파일 내용:

Amodule.hello ()


터미널에서 해당 파일의 위치로 이동하여

OBO-MacBook-Pro:ocamlcode obo$ ocamlopt -c amodule.ml

OBO-MacBook-Pro:ocamlcode obo$ ocamlopt -c bmodule.ml

OBO-MacBook-Pro:ocamlcode obo$ ocamlopt -o hello amodule.cmx bmodule.cmx

OBO-MacBook-Pro:ocamlcode obo$ ./hello

Hello


하면 다음과 같이 "Hello" 가 출력되는것을 볼수 있다.


<서브모듈 실행 >


예시)))

example.ml 파일 내용:


module Hello = struct
let message = "Hello"
let hello () = print_endline message
end

let goodbye () = print_endline "Goodbye"
let hello_goodbye () =
Hello.hello ();
goodbye ();;


hello_goodbye ()


터미널에서 해당 파일의 위치로 이동하여

OBO-MacBook-Pro:ocamlcode obo$ ocamlopt -c example.ml

OBO-MacBook-Pro:ocamlcode obo$ ocamlopt -o hello example.cmx

OBO-MacBook-Pro:ocamlcode obo$ ./hello

Hello

Goodbye


가 실행됨을 볼 수 있다.


-------------------------------------------------------후기----------------------------------------------------------

모듈에대해 배운건 한참전인데, 실행시키는 법을 몰라서 애먹다가 어제 찾아보고, 오늘 여러번의 시도 끝에 알아냈다..(별거 아닌건데 한참 돌아간느낌..) 원래 난 OCaml을 실행할때 OCaml 자체를 실행시키고 #use "파일명.ml";; 이런식으로 컴파일 및 실행을 하다보니까 더 헷갈렸던것같다.

728x90

'Prev. > Lab' 카테고리의 다른 글

7. OCaml의 자잘한 문법  (0) 2019.02.04
6. OCaml 백준 9498  (0) 2019.01.31
5.Ocaml 입출력  (0) 2019.01.31
0.Ocaml 설치(개발환경 만들기)  (0) 2019.01.12
1.Ocaml이란?  (0) 2019.01.12