2017-11-22 34 views
5

OCaml REPL은 모든 표현식의 값과 유형을 표시합니다. 예를 들어, 평가 :이유와 함께 유형 및 값 표시

let rec map f = function 
    | [] -> [] 
    | x::l -> f x :: map f l;; 

을 제공합니다 :

val map : ('a -> 'b) -> 'a list -> 'b list = <fun> 

이 언어를 가르치는 unvaluable입니다.

Reason으로 전환하는 것을 고려하고 있지만 동일한 정보를 얻으려면 어떻게해야합니까?

let rec map = (f) => 
    fun 
    | [] => [] 
    | [x, ...l] => [f(x), ...map(f, l)]; 

Try Reason 어떤 유형도 표시하지 않으며 이유에 대한 REPL이 있는지 확실하지 않습니다.

답변

4

rtopreason-cli과 함께 제공되는 톱 레벨 (OCaml-lingo의 REPL)이며, 실제로는 utop 주위의 얇은 래퍼입니다. 그것은 다음과 같은 유형을 인쇄 할 수 있습니다 :

let map: (('a) => 'b, list('a)) => list('b) = <fun>; 

이 VSCode에서, 멀린은 각 바인딩 위에 표시되는 "CodeLens"당신에게하자 바인딩의 종류를 제공 할 것입니다.

enter image description here

+0

덕분에, 난 그냥 TryReason 연주와 "이유 REPL"을 봤했다. https://github.com/reasonml/reason-cli가 트릭을 만들어야합니다. – Aristide