問題タブ [function-composition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2663 参照

haskell - Haskell ドット演算子

Haskell で単純な平均関数を開発しようとしています。これはうまくいくようです:

しかし、次のバージョンが機能しないのはなぜですか?

0 投票する
7 に答える
22644 参照

haskell - Haskellの関数合成(。)と関数適用($)のイディオム:正しい使用法

私はRealWorldHaskellを読んでいて、終わりに近づいていますが、スタイルの問題が、(.)および($)演算子との関係で私を悩ませてきました。

他の関数を組み合わせた関数を書くときは、次のように書きます。

しかし、これらの関数の最後に何かを適用すると、次のように記述されます。

しかし、本はそれを次のように書くでしょう:

今、私にはそれらは機能的に同等に見えます、それらは私の目にはまったく同じことをします。しかし、私が見れば見るほど、人々が本のように機能を書いているのを見ることができます:(.)最初に作曲し、最後にのみ($)、ロットを評価するための値を追加するために使用します(多くのドル作曲では誰もそれをしません) 。

($)すべての記号を使用するよりもはるかに優れた本の方法を使用する理由はありますか?それとも、私が得ていないいくつかのベストプラクティスがここにありますか?それとも不要なので、まったく気にする必要はありませんか?

0 投票する
1 に答える
2412 参照

function - 機能合成 VS 機能応用

  1. 関数構成の例を挙げられる人はいますか?
  2. これが関数合成演算子の定義?

    /li>

これは、2つの関数を取り、関数を返すことを示していますが、誰かがロジックを英語で次のように表現したことを覚えています

男の子は人間 -> アリは男の子 -> アリは人間

  1. 関数合成に関連するこのロジックは何ですか?
  2. 関数適用と合成の強い結合の意味と、どちらがより強い結合か?

助けてください。

ありがとう。

0 投票する
2 に答える
306 参照

function - 関数適用から関数合成までの Haskell 型エラー

この質問は、antal sz が回答したこのFunction Composition VS Function Applicationに関連しています。

どうやってこれを手に入れることができますか?

次のコードに関数合成の型エラーがあるのはなぜですか?

しかし、これには型エラーはありません

関数合成を利用するには、ポイントフリー関数を書く必要がありますか? 関数合成の使い方がまだよくわかりません。

助けてください。ありがとう。

0 投票する
2 に答える
328 参照

f# - 関数合成を適切に使用していますか?

関数型プログラミングの機能を理解するために、いくつかの基本的な関数をまとめました。これらを組み合わせて複雑な正規表現を作成できます。いくつかのテストの後、これが機能することがわかりましたが、機能する言語で恐ろしいコードを書くことができます。これはプロの F# プログラマーが書いているようなコードですか、それとも私が機能を悪用しているのでしょうか?

注: test具体的には私が言及しているものです。

0 投票する
1 に答える
1727 参照

c# - 構成された関数をシリアライズしますか?

これはうまくいきます:

ただし、これは次のことを行いません。

実行時シリアライゼーション例外をスローします。Type 'MyProjectName._Default+<>c__DisplayClass3' in Assembly 'MyProjectName, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable.

今回はこれを回避できますが、なぜこれが起こっているのかを理解したいので、将来、シリアル化の前に関数を作成するしかない場合は、解決策があります。

0 投票する
3 に答える
1359 参照

haskell - Haskell: 2 つの浮動小数点引数を持つ関数の作成が失敗する

type の関数を取得するために、(Floating a) => a -> a -> atype の関数を使用してtype の関数を構成しようとしています。次のコードがあります。(Floating a) => a -> a(Floating a) => a -> a -> a

ただし、GHCI でコンパイルすると、次のエラーが発生します。

コメントアウトされたバージョンのtestBothコンパイルが実行されることに注意してください。(Floating a)奇妙なことに、すべての型シグネチャから制約を削除するか、 andの代わりにtest1take だけに変更すると、コンパイルされます。xxytestBoth

StackOverflow、Haskell wiki、Google などを検索しましたが、この特定の状況に関連する関数構成の制限については何も見つかりませんでした。なぜこれが起こっているのか誰にも分かりますか?

0 投票する
1 に答える
830 参照

function - Haskellのジェネリック関数の合成

私はここを読んでいて、たとえば、次の関数定義がある場合に気づきました。

次の式は無効です:

コンポジションの関数が1つのパラメーターのみを持たなければならないのは非常に奇妙です。

Haskellで最も一般的なものを定義する際に問題があるため、または他の理由があるため、この制限はありますか?

私はHaskellを初めて使用するので、おそらく役に立たない質問をしています。

0 投票する
3 に答える
5295 参照

functional-programming - ocaml の複合関数

関数型言語、特に Ocaml で複合関数を定義するにはどうすればよいですか? たとえば、別の関数の結果の否定を計算する関数を作成した場合、つまり次のようになります。 not(f(x))wheref(x)はブール値を返します。どうすれば定義できますか?

0 投票する
7 に答える
867 参照

haskell - Haskell で関数合成を使用しようとするとエラーが発生する

私は最近 Haskell を学び始めたばかりで、より具体的には、関数合成、部分関数、マップ、フィルター、およびセクション化のトピックについてです。演習の 1 つで、twoFilters関数合成を使用して関数を変更するよう求められます。

いくつかのウィキを読んだことがありますが、.正しく動作させるのにかなり苦労しています。私が理解しているように、b . aアルファベット順に関数を実行し、結果を返すことで機能します。つまりx = foo a、そしてfoo b of x. ただし、次の2つのフィルター関数を使用していくつかの「バリエーション/可能性」を適用した後、エラーのためにコンパイルできません。

これらの 2 つは、私が最も自信を持っていた失敗した試みです。

推論のどこが間違っているのでしょうか?