temp用意して入れ替えて、などしない。"world.";```</p>F#では否定が!ではなくnotなのですね。x).ToList();```</p>リストを扱うとC#と大分差が出てきます。第一に、空リストは、C#だと該当するものは作れない。objectで代替することにしましたが、多分正しくありません。listBはただの整数リストなわけですが、F#だと;で区切るようです。一応、配列とリストは違うということで、C#側のコードはListにしていますがListとも違うので、まあ、気分だけ。listCの::はConsということで、一つの値とリストを連結するものです。C#に該当する関数はありません。1)で長さ1のシーケンスを作って連結、という手を取ることにしました。F#は[1..10]で最小値-最大値の連続したリストが作れるのですが、これはC#のEnumerable.Rangeとは、違います。Rangeの第二引数は最大値ではなく個数なので。言って、個数よりも最大値のほうが使いやすいと思うのだけどなー。いうことにしています。最後のリスト内包表記は、うん、ええと、私は苦手です。値の動きが右行ったり左行ったりなのが嫌です。Linqのほうが好き。Tutorialには書いてあるんですが、これintなのでlistじゃないでしょ!紛らわしい。引数のリストxs(リストは通常変数名にxsとかysとかを用いるようです)が空配列の時は0を、そうでない時はyとysに分解して、ysの方は再帰して足し合わせる。