のは、我々はこの時点フリー機能を持っているとしましょうか? I.私はマップ、constとフリップ関数が何であるか知っています。しかし、このようにまとめても意味がありません。この関数の中ではどういうことが起こっていますか? 毎回同じことを返すようですが、どうしてですか?f1 =フリップコンスタントマップ。この機能はどのように機能しますか?</p> <pre><code>f1 = flip const map </code></pre> <p>私は正確にどのようにそれが動作しませんし、行うことになっているかについて無知だ:
8
A
答えて
5
ハスケルのすべての関数は1つの引数だけを取りますが、別の関数を返すことによって複数の引数を取ることをシミュレートします。だからflip const map
は(flip const) map
と書くこともできます。 const
は通常、第2引数を無視して第1引数を返します。 flip
は引数の順序を逆にするため、flip const
は最初の引数を無視して2番目の引数を返します。したがって、map
は無視され、常に引数を返す関数が返されます。
4
map
以外のものを入れても大した問題ではありません。式flip const
は、const
の引数を反転させるので、常に最初の引数を返すのではなく、2番目の引数を返します。これは、f1 = flip const undefined
を再定義することでテストできます。これにより、undefined
が評価されても例外が発生しますが、同じ動作をすることがわかります。本質的には、flip const undefined = id
。
14
は、それは常にあなたがそれを与えるものを返す理由ですビット
flip const map x = (flip const) map x
= const x map
= x
によりビット、のは、この関数が何をするか見てみましょう!
関連する問題
- 1. このクロージャはなぜ機能しますか?私はそうのようにそれを呼び出すとき</p> <pre><code>function callMessage(msg){ alert(msg); } </code></pre> <p>さて、それは動作しません:
- 2. <:<はどのように動作しますか?
- 3. これはどのように機能しますか? x << = 3 = -8ここで、(バイト)x = 127?
- 4. <iostream>はどのように機能しますか? (C++)
- 5. は、どのように私は<strong>スウィフト3</strong>でこの機能を持っている
- 6. このC++コードスニペットでこの行がどのように機能していますか? <strong>メイン</strong>機能で
- 7. <*>の機能はどのように機能しますか?
- 8. 演算子<<オーバーロードはどのように機能しますか?</p> <pre><code>struct employee { string name; string ID; string phone; string department; }; </code></pre> <p>次の関数はどのように機能するの:
- 9. 私は別の関数で、それに機能を追加している私は、この</p> <pre><code>private listeners: ((name: string) => void)[] = []; </code></pre> <p>のような機能の配列を持っている私は、活字体/ JavaScriptの</p> <p>に問題がbutton.onclick機能
- 10. 私は、それはperlの</p> <p>私がいたを使用して行うことができますどのように</p> <pre><code>String sql = Query1; </code></pre> <p>のようにそれを交換したい行</p> <pre><code>String sql="select * from "+ "emp_data"; </code></pre> <p>のように私が持っている私のファイルでのPerl
- 11. このArrowLoop.loopの定義はどのように機能しますか? <code>ArrowLoop</code>ため
- 12. は私がF1、F2は、引数として<strong>DBH</strong>と<strong>HT</strong>を取り、これらの機能を表現しましょう適用する機能で構成されてデータフレームを持って
- 13. ここで、タイムスタンプ<タイムスタンプは機能していませんか?
- 14. ファイルリダイレクトVS.</p> <pre><code>while(<>){ print; } </code></pre> <p>と私はこのようにリダイレクトしてファイルに渡す必要があります考えています:<code>./sort.pl < wordlist</code>を、それが持っている私はそうのようないくつかのファイルからSTDINにかかる<code>sort.pl</code>という名前のperlスクリプトを持って
- 15. は、私は、このLinuxのコマンドは、私はそれが<strong>OD -c</strong>に<strong>LS</strong>を送信しています知っている</p> <pre><code>ls | od -c </code></pre> <p>を行うかを理解しようとしている
- 16. 私の<a href=""></a>は機能していませんか?
- 17. RxJSは、フィルタは、私は、<code>click</code>イベントをコンソールにしようとしています、そのために私は、この機能を使用しています<code>rxjs</code>に、私は非常に新しい午前フィルタ
- 18. アサーションが失敗したそれらのスレッドで</p> <pre><code>TEST(one, test_one) { vector<thread> threads // ... initialize threads } </code></pre> <p>とどこかを次のように私はテストケースを持っている場合は、どのように私はどのように実行中のすべてのスレッド
- 19. 修正ポイント機能は<code>Control.Monad.State</code>、<code>fix :: (a -> a) -> a</code>から、私は<code>modifyValue</code>にこの小さなコードを持って、<code>fix</code>機能を理解するよう
- 20. 私はAPIスルーこの機能を探しているとチュートリアルだけ <pre><code>gridApi.selection.selectRow($scope.gridOptions.data[0]); </code></pre> <p></p>が、私はこの機能を使用しようとしていた、第1グリッドのinitに最初の行を選択し見つかった
- 21. C#ここで</p> <p>...私は機能がクリックイベントであるように、次のコードを適応しようとしているボタンのクリックイベント
- 22. どのように私はこの1つのよう<code>Float</code>を持っているフロート
- 23. C#が、私はそれにいくつかのものと1つのユーザーコントロールを作成している、と私はそれが1 <code>button</code>で私<code>form1</code>クリックで可能だと<code>button</code><code>form1</code>内の私の<code>usercontrol</code>を開くことはありませんということかどうかを知る必要があり
- 24. どのように私は<code>App</code>を作成してい
- 25. どのように私はこのように、位置</em>の<em>リストを持っている
- 26. "1 << i"のシフトはどのようにPythonで動作しますか?
- 27. どのよう</strong>をcodepenこの<strong>によってレイアウトを行うしようとフレックス
- 28. javascriptのクラスは、私は、プログラミング初心者だと私はjavascriptのクラスをしようとしています、私はオーバーライド機能<strong>onConnMessage</strong>から<strong>boardCastinit</strong>機能を呼び出したい機能
- 29. NATIVESCRIPTでパラメータ化されたイベントを作成する方法は?</p> <p></p> <p>私はこのフォーマットは動作しません、ということを知っている:私は解決しようとしている
- 30. は、どのように私は、このような</p> <pre><code>lista = {2x,3x+4,5,Cos[x]} </code></pre> <p>として、その後のようないくつかのx値のためのリストを得たMathematicaの