問題タブ [r5rs]

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

scheme - assoc のリストを Scheme の別のリストに追加する

手順から取得したリストを別のリストに追加する方法について少し混乱しています。これがassoc私が持っているものです:

出力はちょうど(test)で、なぜそうでないのかわかりません(test a foo)。このように追加することは可能ですか?

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

list - スキームでのLIFOリストの実装

Scheme で LIFO リストを実装するのに問題があります。1 つの要素のみをスタックにプッシュしたいが、複数の要素をプッシュできるようにしたい場合、私のコードは問題なく動作します。これが私のコードです:

これは私の最後の試みです。数えきれないほど多くのアプローチを試みました。「args」から要素を取得して、スタックに 1 つずつ追加する方法がわかりません。「プッシュ」手順はまったく機能しません。最後の行でエラーが発生するだけです (おそらく再帰が間違っています)。私が言ったように、これは私の最後の試みです。

編集:

push!、pop! を実装しようとしました。スタック オブジェクトを引数として取る独立したプロシージャとしてスタックします。ポップ!そしてプッシュ!簡単でしたが、プッシュでした!追加したい要素は、プッシュのリスト内に既にネストされています! そのため、それを make-stack プロシージャに送信すると、ネストされたリストとして表示されます。これを修正するために再帰的な手順を作成しようとしました:

これはループに入るだけで、理由がわかりません...(再帰は私にとって大きな問題です)

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

list - リストが循環しているかどうかを確認する手順 (Scheme)

リストがScheme(R5RS)で循環しているかどうかを確認する組み込みの手順はありますか? そして、リストが循環するのはいつですか(定義ごとに)?これをチェックする手順とその実装方法を見つけようとしましたが、見つけることができませんでした。

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

export - R5RS の「提供」の問題

Racket でプログラムを作成しましたが、コードを R5RS に変更する必要があります。しかし、すぐにエラーが発生します。

Racket に次のコードがありました。

次に、それを R5RS に変更しました。

問題は、この単純なコードを実行してプロシージャ「a-function」を呼び出そうとすると、a-function: undefined; cannot reference an identifier before its definition

この問題は手順のみにあることに気付きました。変数「a-variable」はわかっていますが、手順はわかっていません...

編集:プロシージャを変数として偽装して、彼がそのプロシージャを知っているかどうかを確認しようとしましたが、同じエラーが発生します。

私はよく検索しましたが、問題はまだRacketコードをR5RSにマージしているため、特定のファイルがまだRacketにあり、他のファイルがR5RSにあり、これが原因で問題を引き起こしているに違いないと思います。問題ないはず…)

編集:問題をできるだけ簡単に再構築しました:

R5RS ファイル "a.rkt" :

ラケットファイル:

Racket ファイルを実行すると、「未定義の識別子 ...」というエラーが発生します。

私の先生の 1 人によると、これはラケットのバグです。

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

functional-programming - R5RS で変数を null として初期化するにはどうすればよいですか?

Dr. Scheme でプロジェクトに取り組んでいるときに、次のように変数を null として初期化しました。

R5RSでこれを行うにはどうすればよいですか?

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

list - Scheme の再帰的メソッド

私は(理論的には)再帰を使用しなければならない単純なメソッドをSchemeに持っています。問題は、再帰部分を理解できないように見えることです...「ポインター」と任意の多くの引数を取るプロシージャがあり、引数を1つずつ別のメソッドに渡す必要があります。これが私がこれまでに得たものです:

ここに再帰がないことはわかっていますが、どこに再帰を配置するか/どのように実行するかがわかりません。考えは明らかです。'push-all' 内で呼び出す必要があります。

誰かが私を助けることができれば (そして、このような再帰的な方法を作成する方法についての説明に非常に感謝します)、それは素晴らしいことです.

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

scheme - スキーム定義エラー(短い)

これは私が作っているインタープリターの一部です。このエラーが発生し続けます:

DrScheme バージョン 371、言語標準 (R5RS) を使用しています。

ここで同様の問題:

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

scheme - 内部定義の代替手段は何ですか

私が使用しているラケット/drSCHEMEのバージョンでは、(R5RS)言語を使用した内部定義を使用できません

以下の例のこれら2つのように、エラーメッセージが表示されます

define: 以下の式コンテキストでは許可されません: (define inp (read-command))

編集:上記の定義について、代替手段としてこれを試してみましたが、スタック、リビジョン、および他のコマンドが独自の名前を出力するだけです...