F#での 'do'キーワードの微妙な使い方の1つは、unit(別名ステートメント)を返す式に注釈を付けることです。例えば、私は関数型でこれをして、戻り値の型が単位であることを明確にし、コンパイラに型チェックを指示します。例:F#でのバインドの適切なスタイル
let restart agent = do agent.Post Restart
しかし、「do」キーワードを支配するものがF#コミュニティにあるのは不明です。この例では「を実行」キーワードを使用する適切な方法は何
は:
// Annotate each statement
let move source destination =
do copy source destination
do clear source
// Annotate the statements as one block
let move source destination =
do
copy source destination
clear source
// Just annotate the "return" statement
let move source destination =
copy source destination
do clear source
// Perhaps don't annotate at all?
let move source destination =
copy source destination
clear source
偉大な答え!私はFS0020について認識していますが、特にユニット表現が副作用を意味するため、このような使い方について考え、読者の目を引くことを余儀なくされているので、この場合は明示的にすることをお勧めします。セミコロンについて言えば、別の選択肢があります。明確な情報源 – monoceres