問題タブ [the-little-schemer]
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.
scheme - Little Schemer: length0 と mk-length
小さな計画者は、165ページで次のように関数の長さを0のままにします。しかし、これはどのように機能しますか?長さラムダが引数として渡された長さラムダ自体で長さラムダを評価する mk-length lambda に渡されているようです。したがって、一番下に評価されるのは、ラムダ自体の長さだけです。しかし、長さラムダはカリー化された 2 つのパラメータを取ります:と. それでは、どのように意味をなすのでしょうか?(length (cdr l))
length
length
l
(length (cdr l))
scheme - スキームで関数を返す
The Little Schemerで遊んでいて、作業しながらアイデアを試しています (すべてがうまくいくわけではありません)。ちょうど今、私は第 6 章 (ヘルパー関数を紹介する場所) にいて、一歩が手の届くところにあると感じています。その一歩を踏み出す方法がわかりません。
本のコードは次のとおりです。
次のヘルパーが定義されています。
そして、この単純化が行われます:
私が見ることができる単純化は、すべてが有効であると仮定しているため、ボイラープレートnexp
を繰り返す必要がないということです。((eq? (operator-i nexp) ...
次のようなものが機能するはずです。
...そうでないことを除いて。Exception: attempt to apply non-procedure ...
(+、x、^ のいずれか) でエラーになります。
で関数を呼び出そうとしていることを認識しないことが問題であることがわかります(operator-i nexp)
。
返す関数を適用したいことをインタプリタに明確にするにはどうすればよい(operator-i nexp)
ですか?
他のヒントも大歓迎です(私はプチシェスキームを使用しています)。
lambda - ラムダ式を使用してSchemeで関数を定義する理由は何ですか?
私はダニエル・フリードマンのリトル・シェマーの本を読んでいます。本のすべての関数がラムダ式で書かれている理由がわかりません。
2 つの関数は同じことを行いますが、2 番目の関数の方が優れています。どこでもラムダを使用する理由に興味があります。
この場合、DrRacket を使用しました。
emacs - Emacs と The Little Schemer の最適なスキーム実装は?
Geiser を試しましたが、次のエラー メッセージが表示され続けます。
ちなみにWindows7です。また、これが私の .emacs の Geiser パスです。
Google は有用なものを何も返さず、Emacs や Geiser にもあまり詳しくないため、これを修正する方法がわかりません。最終的にTLSを開始できるように、これまたはより優れた/より簡単なSchemeの実装について助けていただければ幸いです。
scheme - 小さな計画者 - セマンティック
私はちょうどThe Little Schemerを読み始めたところです。いくつかの単語を理解するのに問題があります。
27ページには、次のように書かれています。
方程式の法則?
原始式?2 つの引数を取ります。それぞれが数値以外のアトムでなければなりません。"
脚注には次のように書かれています:実際には、一部の数値は eq? の引数になる可能性があります。
私は自分のスキームインタープリターとしてracket-minimalを使用しています。に評価さ(eq? 10 10)
れ#t
ます。
TOYSの章には、似たような問題がたくさんあります。
著者は、must (太字でマーク) と脚注で何を意味していましたか?
ide - Dr. Racket IDE のインタプリタ画面をクリアするにはどうすればよいですか?
The Little Schemer を始めたばかりで、非常に基本的な Dr. Racket IDE の質問があります。
通訳者画面をクリアするにはどうすればよいですか?
画面を上にスクロールする現在の動作ではなく、以前に入力した項目 (Bash など) を表示するように上向き矢印を設定するにはどうすればよいですか?
おそらく、これらのアクションの専門用語がわからないため、検索結果が空白になります。
syntax - Little Schemer の「S 式」述語
リトル・シェイマーは尋ねます。しかし、どのようにテストするのですか?
構文的に、次のような他のステートメントをテストする方法を取得します
と
これをテストする方法が完全にはわかりません...
戻るだけなので...
とにかく、S式をテストする方法を知ることは私を悩ませています
だから、いつものように、どんなイルミネーションも大歓迎です