2

私は SML の学習を始めたばかりで、まだそのエラー メッセージを理解する過程にあります。

以下の関数定義を入力しようとすると

val rec : real->real = fn 0.0 => 0.0 | n:real => 1.0/n;

次のエラーが表示されます。

stdIn:25.9-25.17 Error: syntax error: deleting  COLON ID ARROW
stdIn:25.24-25.33 Error: syntax error: deleting  FN REAL DARROW
stdIn:25.38 Error: syntax error found at BAR

誰かが私が間違っていることを指摘できますか?

ありがとうございました。

4

1 に答える 1

4

コードに 2 つのエラーがあります。

  1. と型注釈の間val recには、定義している値の名前が必要です。
  2. sでパターン マッチングを使用することはできませんreal。s は不正確であるためreal、等価型ではないため、それらにも使用できません=。等しいかどうか実数を比較するために使用する必要がありますReal.==(または、より良い:それらを等しいかどうか比較するのではなく、代わりにいくつかのデルタと比較してください)。
于 2011-06-23T17:31:58.817 に答える