else ステートメントの前の行は明らかにユニットを期待していましたが、代わりにブール値を取得しました。私はF#を始めたばかりですが、これを理解することはできません.
私は以前に Stackoverflow を使用したことがなく、コードボックスがまだ私を混乱させているので、レイアウトと少し戦っています! 元のスペースは正しくインデントされていると思います。
let m = Dictionary<int, int>()
let rec fib i =
match i with
| 1 -> i
| 0 -> i
| _ ->
if m.ContainsKey(i) then
if m.[i] > 0 then
m.[i]
else
let x = fib(i - 1) + fib(i - 2)
m.Add(i, x)
m.[i]
これらの投稿でスペースを維持する方法を誰かが教えてくれたら、私は感謝します!