問題タブ [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.
programming-languages - Schemeでのカレー関数の実装
次のことをするとどうなりますか?
私はこれができることを理解しています:
そして今、私はカレーを使うことができます。私が興味を持っているのは、関数の定義です。ラインはありますか
xを引数として新しいラムダを作成し、それを1で呼び出しますか?それとも、それよりも賢く、既存のものを再利用するだけですか。(たとえば、私がそうする場合(curried 0)
、その((func x) 1)
行は次のようになります(curried 1)
-PLAIスキームはこれを行いますか?)
lisp - Notepad ++でlisp/schemeをコンパイルする
私は現在 Lisp にはまっていますが、残念ながら Windows でしかコーディングできません。Notepad++ にスクリプトの解釈を任せて、出力をコンパイラ ウィンドウに表示することはできますか?
はいの場合、どの通訳者を使用するのが最適ですか?
ありがとう!
emacs - 非常に多くの括弧を使用して効率的に Lisp を入力するにはどうすればよいでしょうか?
できるだけホームローをキープするようにしています。
すべての括弧を入力すると、そこからかなり離れます。
私は Emacs を使っています。括弧自体は問題ありません。私はそれらに満足しています。そして、それらを自動的に入力するモードは好きではありません。
角かっこをかっこに、またはその逆に再マッピングすることを考えました。これは良い考えですか?他のみんなは何をしますか?
scheme - Scheme の apply 関数で AND を使用する
以下が機能しないのはなぜですか?
以下はうまくいきますが。
これは R5RS と R6RS の両方に当てはまりますか?
scheme - DrScheme と mzscheme: 定義の扱い
私が持っている 1 つの長期プロジェクトは、SICP のすべての演習に取り組んでいます。最近の演習で少し奇妙なことに気付きました。ハフマン エンコーディング ツリーをテストしています。DrScheme で次のコードを実行すると、期待どおりの結果が得られます。
ただし、(load "2.67.scm") を呼び出すか、mzscheme -f 2.67.scm を実行して、mzscheme でこの同じコードを実行すると、次のように報告されます。
私の質問は:なぜですか?mzscheme と drscheme がプログラム定義をロードするための異なる規則を使用しているからでしょうか? プログラムコードは以下です。
debugging - 本番機能プログラムをデバッグした実際の経験はありますか?
大規模な関数型プログラムの欠陥を診断するために使用されるツールと方法に興味があります。どのようなツールが便利ですか? 私の現在の理解では、'printf' デバッグ (たとえば、ログの追加と再デプロイ) が通常使用されるものです。
機能するシステムのデバッグを行ったことがあれば、オブジェクト指向または手続き型言語で構築されたシステムのデバッグと何が違うのでしょうか?
lisp - LISPを学ぶための最良の方法は何ですか?
私はPython、PHP、Java、Cで数年前からプログラミングをしていて、ハッカーとペインターを読み終えたばかりなので、LISPを試してみたいと思います。
私が知っていることとはまったく異なること、そしてそれは簡単ではないことを理解しています。また、LISPの周りのコミュニティと開発ははるかに少ないと思います(私が間違っている場合は訂正してください)。だから私の質問は:LISPを学ぶための最良の方法は何ですか?
本を買ったり、時間をかけたりしてもかまいません。無駄にしたくないだけです。
「最終的な」アイデアは、Web開発にLISPを使用することですが、それはそれほど一般的ではないことを私は知っています...最初の本やチュートリアルを選び、そうでないかもしれないことに多くの時間を費やす前に、学習を計画するのは良いことです。最善の方法である!
回答ありがとうございます!
編集:私はPractical Common Lispを読み、次のようになりました:...長く、ハードで、面白く、間違いなくLispで転がりました。その後、小さなスキームを読みました。短く、楽しく、プログラミング全体にとって非常に優れていました。ですから、最初に小さなスキームを読んでから、(数時間でその価値があります)lisp(またはスキームやその他の方言)が探しているものではないと判断した場合でも、非常に楽しい時間を過ごすことをお勧めします再帰についての新しい考え方!
macos - Emacs 内でスキーム インタープリターを動作させるにはどうすればよいですか?
私は SICP を使用していますが、インタラクティブな Python インタープリターに似たインタープリターを使用して、講義を見たり本を読んだりしているときに遊んでみたいと思っています。さらに、このインタープリターを Emacs 内で実行して、スキーム コードのファイルと対話型インタープリターなどの間を行き来できるようにしたいと考えています。
ただし、私は Emacs にかなり慣れていないため、これを機能させることも、機能させるために使用する明確な手順を見つけることもまだできていません。
M-x run-scheme
少なくとも私が望むものとまったく同じように聞こえるインタラクティブなインタープリターを開くようにセットアップできるはずですが、現時点ではこれが戻っSearching for program: no such file or directory, scheme
てきて、どのファイルを正確に把握することができませんでしたこれを修正する場所を配置する必要があります。
GNU Emacs 22.1.1 (mac-apple-darwin, Carbon Version 1.6.0)
OS X 10.5 インストール DVD からインストールした状態で実行しています。
multithreading - OS X の Bigloo スキームでネイティブ スレッド サポートを有効にするにはどうすればよいですか?
ソースから Schemeをコンパイルしようとしていますが、OS X 10.5 (Leopard) でBigloo
ネイティブ スレッド サポートを有効にする方法がわかりません(このプラットフォームではスレッド化が機能しないことをどこにも読んでいません)。./configure
を実行./configure --enable-sqlite --enable-web --enable-ssl --enable-pthreads --enable-fthreads
しましたが、構成の概要で常に次のようになっています。
Bigloo
を使用したいのですがHop
、そのように作成されたバイナリを使用して実行しようとすると、常に警告が表示されます。
scheme - 整数をリストに変換しますか?
私は現在、整数をリストに変換しようとしています。
例えば
1234 => 1、2、3、4で構成されるリスト
私はこれを持っています:
残念ながら、#と\が追加されます。これは数字の文字列表現だと思います。これらの記号を削除するにはどうすればよいですか。整数を並べ替えて、リストを出力する必要があるので。
上記のコマンドの出力は次のとおりです。
(#\ 1#\ 2#\ 3#\ 4)