高次関数についてちょっと混乱しています。私がよく理解しているかどうかを知るために愚かな例をやりたかったのですが、まだエラーなしでコンパイルできない、つまり何かが欠けていると思います。私の非常に基本的な例は次のとおりです.2つの数値を加算した関数を作成し、前の関数を使用して他の数値を合計する関数を作成します。Haskell高次関数
Sum2 :: Double -> Double -> Double
Sum2 a b = a + b
Sum3 :: (Double -> Double -> Double) -> Double -> Double
Sum3 a b c = (Sum2 a b) + c
test1:: Double
test1 = Sum3 2.0 3.0 4.0
ここでの質問は何ですか? –
あなたの例は、別の関数を呼び出す関数です。これは高次ではなく、関数を引数として取るか、関数から関数を返す必要があります。 – melpomene
さて、私は混乱しているかもしれませんが、私はsum3の引数でsum2を呼び出すことによって高次を行っていると思いました。それはハスケルで私の最初の日であり、私はいくつかのコンセプトをミックスしてクリアしています。ご回答有難うございます。 – Babas