問題タブ [let]

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

functional-programming - 一連の let 定義

私は OCaml の初心者で、次のような一連の let に問題があります。

しかし、許可の間に、Hashtbl.iter と単位を返す他の関数を使用します。私が行った場合:

コンパイラでエラーが発生します。しかし、もしそうなら:

コンパイラはエラーを発生させず、「h」が使用されていないことを示す警告のみを発生させます。問題なくそれを行うための最良の方法は何ですか?ありがとう。

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

clojure - Let フォームでの左から右へのバインド順序

私はClojure の喜びで破壊の例に取り組んでいますが、私を驚かせた例に出くわしました。これらはどちらも同じ出力を生成します。

最初の形式は私の直感に反していました。なぜなら、束縛と優先順位が左から右に起こると考えると、「すべて」に割り当てる前に range-vec が定義されないからです。2 番目の形式である range-vec は既に定義されており、2 番目の let ステートメントで all に割り当てられています。これは、これまでに知っている規則に従っているようです。シンボルがバインドされた時期とその順序はいつわかりますか?

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

recursion - スキーム:リバースは何の影響も受けていません

これと同じものを出力します:

私の単語が反転されてから計算されないのはなぜですか?

入力: (キー '(xyz))

出力: 2475 (両方の方法で)

なぜこれが起こるのかわかりません。なぜこれが起こっているのか、誰か助けてください。

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

list - Haskell - リスト内包表記 - 入力要素を取得する

入力がリストの場合、リストの理解に問題があります。

これらすべてのIII演習では、次の使用は許可されていません: mapfilterおよびconcat!!!


パートI

要件:

関数は、型が 型であるトリプルf1のリストを取得しますxs(a, b, cs)abInt c[Int]

関数はペアのリストを生成する必要があります(a · b, b + c)。cs のすべての c AND 生成されたリストには、最初の要素が 2 番目の要素よりも大きいペアのみが表示される必要があり(a · b) > b + cます。

例:

次のリストを返す必要があります。

私の試み:

それは正常に機能しますが、入力としてのリストでは機能しません。

だから私はいくつかの方法を試しましたが、残念ながら正しい方法ではありません:-(

最初のアプローチ:

2番目のアプローチ:

3番目のアプローチ:

3つすべてが機能しません!

dave4420 による解決策:


パート II

要件:

関数 g1 は、同じ型のペアのリストを取得し、そこから単純なリストを生成します。

例:

私の試み:

リスト内包表記の出力の a,b の構文が正しくないため、コンパイル エラーが発生します。

ただし、a または b または a+b を返すことができます。

また

これも手伝ってくれませんか?

もう一度ありがとう

第三部がやってくる…

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

lambda - let* をラムダ式として表現する方法 (通常の let ではありません)

スキームに関連する質問があります。let* をラムダ式として実装するにはどうすればよいですか。もっと正確に言うと、「通常の」let については疑問に思っていませんが、ある let 式を別の式の中で使用できるようにする * 付きの let については疑問に思っています。

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

vim - gist-vim: トークンの場所を変更する

gVim と一緒に mattn の gist -vimを使用します。すべてうまく機能しますが、ホームディレクトリにある認証トークンに感謝しません。

そこで、プラグイン ファイルs:configfileを調べ始めたところ、dev が に設定するという変数が見つかりましたexpand('~/.gist-vim')

これにより、トークンの場所を変更するためlet s:configfile = expand('~/some/other/path/gist-vim')に myに含めることができると信じています。vimrc

しかし、うまくいきません。を実行すると devs コマンドが再度呼び出される:Gistので、設定が上書きされますか? コードをフォークしていじり始める前に、質問する必要があると思いました。