問題タブ [chez-scheme]
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.
list - スキーム:リスト内の重複要素を検出する
R6RSまたはChezSchemev7.9.4には、リストに重複する要素が含まれているかどうかをチェックするライブラリ関数がありますか?
または、セットに組み込みの機能(重複する要素を許可しない)がありますか?これまでのところ、ここで例を見つけることしかできませんでした。
それに関する問題は、それが実際にはChezSchemeライブラリの一部ではないように見えることです。これの独自のバージョンを作成することもできますが、特にこれがいかに基本的な操作であるかを考えると、よく知られており、テストされ、保守されているライブラリ関数を使用したいと思います。
したがって、単純な「これらの組み込み関数を使用する」または「組み込みライブラリがこれを実装しない」だけで十分です。ありがとう!
scheme - Chez スキームの割り当て: --program と --script の比較
次のChez Schemeコードを考えてみましょう。
それを実行します:
うわー、8 バイトしか割り当てられていないと報告されています。
--program
の代わりにオプションを使用して、もう一度実行してみましょう--script
。
ええ、800000 バイトが割り当てられています。
違いは何ですか?
エド
recursion - 暗号化[プチシェスキーム]
実行しようとしているプログラムについて質問がありました。Encryptは、メッセージ、公開鍵、および秘密鍵を受け取り、公開鍵のメッセージの文字が秘密鍵の文字に変更されたメッセージを返します。
たとえば、(encrypt "abcd" "abcd" "efgh")は "efgh"を返し、(encrypt "abcl" "abcd" "efgh")は "efgl"(公開されていないメッセージからの手紙-キーは同じままです)。
これを解決するためにいくつかのヘルパープログラムを作成しましたが、実行しようとすると「車の例外、__はペアではありません」というエラーが表示され続けます。しかし、何が問題なのかわかりません。誰かがポインタを持っているなら、私に知らせてください。ありがとう!
scheme - Andmap\ormap - Chez スキーム
Chez スキームでの andmap & ormap 操作に関する情報を見つけようとしました。
それでも、これらの操作の使用法と、それとマップの違いはわかりません。
performance - 整数除算を行う最速の方法は何ですか?
スキームを使用すると、次の関数を使用する必要があります。(すべての引数は自然数[0、inf))
ただし、この関数は頻繁に呼び出され、十分に機能していません(速度に関して)。目的の動作を実装するためのより効率的な方法はありますか(numとdenomの整数除算、denomがゼロの場合は安全な値を返します)?
注、私はChezスキームを使用していますが、これは完全なChezではなくrnrsのみをインポートするライブラリで使用されています。
scheme - Chezスキームでのマッチの使用
スキームでマッチを使用する方法を学ぼうとしています。非常に短い問題 (つまり、長さの定義はわずか 2 行) ではどのように機能するかはある程度理解できますが、複数の入力がある問題やヘルパー プログラムではそうではありません。たとえば、共用体を定義する一般的な方法は次のとおりです。
両方のプログラムで一致を使用してこれを行うにはどうすればよいですか? (または、2 つのプログラムが必要でしょうか?)
algorithm - RR' - NN' = 1 を解くためのユークリッド アルゴリズム。 Python または Petite Chez スキームで Fermat テストを実装するための Montgomery アルゴリズムによるべき乗剰余
これは、Scheme を使用して教えられたプログラミング入門クラスの個人的な課題ですが、Python の例も同様に満足しています。
次のように、スキームで剰余累乗のバイナリメソッドを既に実装しています。
Chez スキームには python の pow (base expo modu) に似た実装がないため、これが必要です。
現在、剰余乗算を解くモンゴメリー法を実装しようとしています。例として、私は持っています:
RR' - NN' = 1 の解き方を理解しようとしています。R' の答えは 64 であり、N' は 81 である必要がありますが、ユークリッド アルゴリズムを使用してこの答えを得る方法がわかりません。 .
scheme - Petite Chez スキーム (スレッド化) 2 つのリストの違いは何ですか?
プチ シェ スキーム (スレッド) で。myq と myqq という名前の 2 つのリストを定義しました。
これは結果です:
私の質問は:
myq と myqq が等しいことを示します。同じコマンドを実行する理由:
違う結果につながる?さらに、なぜ(set-car! (cdr myqq) 'b)
結果が になるのかわかりません。myqq の車を変更することはないので、((b) b)
結果は になるはずです。((ignored) b)
emacs - コンパイルパッケージがchezスキームにロードされていません
小柄なchezスキームをインストールし、.el構成ファイルを次のように使用しました-私の.emacsファイル:
私が使用しているscheme-setup.elファイルは次のとおりです。
https://github.com/tiljeset/emacs/blob/master/scheme-setup.el
今、私がするとき
でコンパイルするとC-c C-k
、次のエラーが表示されます。
REPLで。この問題の原因は何ですか?
同じエラーが発生します。