5

これまで SML でプログラミングしたことがなく、SML/NJ を使用しています。実行する各プログラムの最後に、次のように表示され続けます。

val it = () : unit

これは何を意味するのでしょうか?それは私が間違っていることですか?

4

2 に答える 2

4

itコードによって返される結果の名前です。() : unit副作用ベースのものから返される簡単なプレースホルダー値です。

プロンプトでより一般的な表現である何かを入力すると、より明白になります。

- 2 * 7;
  val it = 14 : int
于 2013-10-22T22:42:16.960 に答える
2

また、印刷の副作用にも使用できます。

fun printpos n = 
    if n <= 0 then (print "not positive!\n") 
    else (print (Int.toString n); print "\n");

 printpos ~1;
 printpos 1;

(* Output:
val printpos = fn : int -> unit
not positive!
val it = () : unit
1
val it = () : unit
*)
于 2016-10-11T19:21:30.630 に答える