問題タブ [partial-application]

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 投票する
17 に答える
44918 参照

javascript - JavaScript カリー: 実用的なアプリケーションは何ですか?

私はまだカレーに慣れていないと思います。私はそれが何をするのか、そしてそれを行う方法を理解しています。使うシチュエーションが思い浮かびません。

JavaScript のどこでカリー化を使用していますか (またはそれを使用している主要なライブラリはどこですか)? DOM 操作または一般的なアプリケーション開発の例を歓迎します。

答えの1つはアニメーションに言及しています。のような関数は引数として要素slideUpfadeIn取り、通常はデフォルトの「アニメーション関数」が組み込まれた高次関数を返すカリー化された関数です。いくつかのデフォルトで上位関数を適用するよりも優れているのはなぜですか?

それを使用することの欠点はありますか?

JavaScript のカリー化に関する優れたリソースを以下に示します。

コメントが増えたら追加します。


したがって、答えによると、カリー化と部分適用は一般的に便利な手法です。

高レベル関数を同じ構成で呼び出して頻繁に「改良」する場合は、高レベル関数をカリー化 (または Resig のパーシャルを使用) して、シンプルで簡潔なヘルパー メソッドを作成できます。

0 投票する
15 に答える
59220 参照

language-agnostic - カリー化と部分適用の違いは何ですか?

他の人のカリー化の例はカリー化ではなく、実際には部分適用にすぎないというさまざまな苦情をインターネットでよく目にします。

部分適用とは何か、またはカリー化とどのように違うのかについての適切な説明は見つかりませんでした。一般的な混乱があるようです。同等の例は、ある場所ではカリー化、他の場所では部分適用として説明されています。

誰かが私に両方の用語の定義とそれらがどのように異なるかについての詳細を教えてもらえますか?

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

python - Python 引数バインダー

引数を Python メソッドにバインドして、後で呼び出すために nullary ファンクターを格納するにはどうすればよいですか? C++ のboost::bind.

例えば:

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

f# - F#引数付きの演算子を関数に渡す

部分的に適用された演算子だけを使用して、「2で除算」や「1を減算」などの演算を渡すことができますか。「1を加算」は次のようになります。

何が起こっているのかというと、最初の引数として1が(+)に適用され、2番目の引数としてリスト項目が適用されています。加算と乗算の場合、この引数の順序は重要ではありません。

すべての要素から1を引きたいとしましょう(これはおそらく初心者のよくある間違いです):

最初の引数として(-)に1が適用されるため、の代わりに(list_item - 1)、を取得し(1 - list_item)ます。正の値を減算する代わりに負の値を加算するように書き直すことができます。

Arc言語のように、プレースホルダーを表すのような((-) _ 1)、より表現力豊かな書き方を探しています。_これ1により、の2番目の引数に-なるため、List.mapでは。と評価されlist_item - 1ます。したがって、リストにマップdivide by 2する場合は、次のように記述できます。

これを行うことはできますか、それとも使用する必要があります(fun x -> x/2)か?プレースホルダー構文に最も近いのは、名前付き引数でラムダを使用することのようです。

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

scala - メソッド名の後に _ を付ける必要があるのはなぜですか?

_関数としてメソッドを使用するためにメソッドの後に必要な場合について、私はルールが少し不安定です。Fooたとえば、次の「 」とNil「 」に違いがあるのはなぜ::ですか?

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

scala - scala 部分関数が部分関数でないのはいつですか?

String から部分関数へのマップを作成しているときに、予期しない動作に遭遇しました。部分関数をマップ要素として作成すると、正常に機能します。val に割り当てると、代わりに呼び出されます。チェックを呼び出そうとすると、エラーが発生します。これは期待されていますか?私は愚かなことをしていますか?をコメントアウトしてcheck()、呼び出しを確認します。私はscala 2.7.7を使用しています

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

scala - 部分的に適用された再帰関数

部分的に適用された関数としてfooを作成するにはどうすればよいですか?ここで、すべての再帰呼び出しで名前を渡す必要はなく、単に呼び出すだけfoo(map1)ですか?

0 投票する
6 に答える
57748 参照

python - Python: なぜ functools.partial が必要なのですか?

部分適用はクールです。functools.partialラムダを介して取得できない機能は何ですか?

functoolsどういうわけかより効率的ですか、それとも読みやすいですか?

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

scala - Lift Req オブジェクト

Liftbook には、 apply を使用して Req インスタンスを作成する例があります。

しかし、API ドキュメントを調べると、apply() メソッドが 2 つありますが、この例ではどれがどのように実行されているかわかりません。

また、どのように含め/a/b/a/b/cリクエストする方法はありますcaseか?

また、考えられるすべてのリクエストを 1 つに列挙する方法はありますかcase: 推測 : case Req(List("api", "expense", eid), "", {GetRequest,PostRequest})?

回答ありがとうございます。

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

haskell - ハスケル-カリー化?さらに説明が必要

だから何かのような

なぜこれが機能するのですか?カリー化部分。なぜ変数がないのですか?