시리즈/OCaml
ocaml 문법
빅또리
2021. 3. 18. 11:52
🐫 문제 풀다가 새롭게 알게 된 문법 정리
입력
read_int ( )
//입력 끝까지 한줄씩 읽어들여서 List로 만들어 반환
let rec read_lines () =
try let line = read_line () in
int_of_string (line) :: read_lines()
with
End_of_file -> []
출력
print_newline ( ) : \n 출력
print_endline line : 자바 println 같은 것. line의 타입은 반드시 string
print_타입명 x : 예를들면 print_int 5
Printf.printf "Hello : %d " 5
반복문
여태까지 모르고 무조건 재귀로만 구현했었는데 반복문이 있긴 있었나보다
파일 로드
(1) 인터프리터에 로드
#use "logic.ml"
(2) 컴파일해서 사용하기
모듈처럼 사용할 logic.ml 파일을 컴파일한 logic.cmo를
ocaml 명령으로 실행하거나 ocamlc로 컴파일 할때 같이 적어주기
ocamlc -c logic.ml // 사용할 파일 컴파일해서 .cmo 로 만들기
ocaml logic.cmo test.ml // ocaml 명령어로 실행
ocamlc -o test test logic.cmo test.ml // 혹은 컴파일하기
네임 스페이스를 제거하고 싶으면 test.ml 파일 위쪽에 이렇게 적어준다.
open Logic
그러면 예를들어 Logic.f 대신 그냥 f 로 적을 수 있다.