OCaml을 배우기 시작한 직전에 문자열을 출력하는 것으로 놀고있었습니다. , 단순히 "The day is Monday"가 출력합니다이 open Printf;;
type days =
| Monday
| Tuesday
| Wednesday
| Thursday
| Friday
| Saturday
OCaml을 처음 사용하고 있으며, 큰 OCaml 프로젝트로 건너 뛰려고합니다. 다른 유형을 구성하는 유형을 추적하는 동안 이러한 유형을 어떻게 사용할지 생각하려고 했으므로 크기가 큰 프로젝트에서 사용하는 방법에 매우 가깝다고 생각되는 작은 예제로 분해했습니다. 나는 세 개의 필드로 만든 레코드 유형 expression있는 경우 : 지금은 원하는 경우 le
함수에 대한 수학적 람다 표기법을 사용하여 letrec를 구현하려고하는데 어려움을 겪고 있습니다. 내 임무는하자가 p(e1) U (p(e2) - {x})
으로 정의 될 수 있으며, 내가 성공적으로 발현 freevars을 찾을 수 있도록 구현했습니다 (p(e1) - {f x}) U (p(e2) - {f})
로 그 letrec 정의 할 수 있다고,하지만
간략하게하겠습니다. 나는 현재 내가 따르고있는 코스에 OCaml을 배우고 Linux에서 VS 코드를 사용하여 설치를 위해 intellisense를 사용하려고 노력 중이다. 이를 위해서는 파일을 먼저 만들어야합니다. 문제는 "spellc.ml"파일을 빌드하려고 할 때 언 바운드 값이 있다는 오류가 발생합니다. _build/
src/
...
모든 : 난은 "카레"구문에 다음과 같은 기록 할 수 방법 : (y -> (f -> ((f x -> f 5) (y -> f y) 3)) x + y) 2
: 내가 처음이 같은 시도 let y = 2 in
let f x = x + y in
let f x = let y = 3 in f y in
f 5
그러나 이것은 제대로 평가되지 않는 것 같습니다.
그냥 파일의 정규식을 바꿀 때 re2을 사용하려고하면 테스트는 간단한 문자열로 전달됩니다. 내가 ss.xml로 파일에 내용을 넣을 때 # module Re2 = Re2.Std.Re2;;
# let re = Re2.create_exn "<key>Tags.*<\\/array>" ;;
# let orig = "abc <key>Tags</key><array><
나는 이것을 할 수는 없지만 그 이유를 정확하게 이해하고 싶다. 에서 module M : sig
type 'a t
val call : 'a t -> 'a option
end = struct
type 'a t
let state : ('a t -> 'a option) ref = ref (fun _ -> None)
이 내 현재 디렉토리 구조 소스 코드의 /project
/code (source code)
/build (contains the .exe)
부분이다 . 하지만 결과라는 새 디렉토리를 만들고 그 아래에 출력 파일을 만들고 싶습니다. 새로운 디렉토리 구조 : /project
/code (source code)
/build