3

アップデート

一般的な質問は、F# の詳細な構文を正しく使用する方法です。Verbose syntax は、OCaml の構文に近い構文、つまりコンマが多い構文などです。

古いテキスト

F#に近い詳細な構文を使用するために、軽い構文をオフにしたいと考えていますOCaml

次のコードを書きました

#light "off"

let k=3.14;;

letでエラーが発生しました:

Unexpected keyword 'let' or 'use' in implementation file

軽い構文のない正しい実装ファイル構造は何ですか?

4

2 に答える 2

2

問題は、これを.fsiファイル内に書き込んだことです。これはFSharpインターフェイス定義ファイルです。fsi.exe(FSharp Interactive)とは何の関係もありません。

「実装ファイルの予期しないキーワード「let」または「use」」というメッセージはtellです-インターフェース定義が期待されていました。単に.fs拡張機能を使用してください。

MLコードを再利用する場合は、ファイル拡張子をに変更し、最初にディレクティブを.ml追加して#nowarn "62"、従来の警告を無視することを検討してください。

#nowarn "62"
#light "off"

let div2 = 2;;

let f x = 
    let r = x % div2 in
      if r = 1 then 
        begin "Odd"  end 
      else 
        begin "Even" end
于 2013-01-23T18:37:31.197 に答える
1

何も問題はありませんが...なぜ2つ;? コンパイルしていますか、それとも fsi で実行していますか?

于 2013-01-22T14:58:34.850 に答える