問題タブ [lisp]
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.
syntax - Lisp DO 変数構文の推論
Peter Seibel のPractical Common Lispで、彼は次の例を挙げています。
ループ内で nums を使用しているが、ステップ形式を与えていないため、どのように機能するかを確認できます。これを行うのではなく、変数定義に数値を入れる理由は次のとおりです。
ちゃんとした理由があると確信していますが、まだわかりません。
lisp - Lispで再帰関数をメモ化するにはどうすればよいですか?
私はLisp初心者です。Collatz列の項数を計算するための再帰関数をメモしようとしています ( Project Eulerの問題 14 用)。私のコードはまだです:
memoize 関数は、 On Lispブックで提供されているものと同じです。
このコードは、メモ化されていないバージョンと比較して実際にはスピードアップしません。これは、関数のメモ化されていないバージョンを呼び出す再帰呼び出しが原因であると考えられますが、これは一種の目的を無効にします。その場合、ここでメモ化を行う正しい方法は何ですか? 元の関数へのすべての呼び出しでメモ化されたバージョン自体を呼び出して、特別な m-collatz-steps シンボルの必要性をなくす方法はありますか?
編集:コードを修正しました
これは私のコードにあったものです。編集の前に、私が誤って入れたもの:
そのエラーを見て別のアイデアが浮かび、この最後の defvar 自体を使用して、再帰呼び出しを次のように変更してみました
これはメモ化 (約 60 秒から 1.5 秒への高速化) を実行しているように見えますが、元の関数を変更する必要があります。元の機能を変更する必要のない、よりクリーンなソリューションはありますか?
lisp - SICPを介して作業するための最良のScheme実装は何ですか?
私はPLTスキームを使用していますが、いくつかの問題があります。SICPを介して作業するためのより良い実装を知っている人はいますか?
lisp - Lisp (または AutoLisp) を使用して、連想リストのパフォーマンスはどの程度ですか?
私は、長い連想構造を使用して重い幾何学的処理を行う AutoLisp プロジェクトを行っています。そのため、連想リストの集中的な使用タイミングの結果に興味があります。実装はどの程度単純/複雑ですか? いくつかのデータ構造またはドット ペアの通常のリストを使用しますか? bツリーなどの拡張機能はありますか?
macros - Lisp マクロが特別な理由は何ですか?
プログラミング言語に関する Paul Graham のエッセイを読むと、 Lisp マクロが唯一の方法だと思うでしょう。多忙な開発者として、他のプラットフォームで作業しているため、Lisp マクロを使用する特権はありませんでした。バズを理解したい人として、この機能が非常に強力な理由を説明してください.
また、これを Python、Java、C#、または C 開発の世界から理解できるものに関連付けてください。
web-applications - Lisp で書かれた Web アプリケーションを提供するための好ましい方法は何ですか?
Lisp Web アプリケーションを提供する Nginx (私の好みの Web サーバー) 用のモジュールを調査してきましたが、何も見つかりませんでした。
Nginx 用のモジュールはありますか、または Lisp Web アプリケーションを提供するためのより良い方法はありますか? もしそうなら、それらは何ですか?
lisp - Common Lisp プロジェクト用の ASDF ファイルを自動的に作成する
これを行うライブラリはありますか?Common Lisp をいじってみると、これは初心者の参入障壁を下げるのに最も役立つものの 1 つに思えます。ASDF は、ラピッド プロトタイピングや開発用ではなく、主に展開用に設計されているようです。comp.lang.lisp のスレッドをたどると、CL のパッケージ システムは強力であるが、Python の単純なモジュール システムのような使いやすさに欠けていることに人々は同意しているようです。使いやすさではなくパワーのために設計されているという意味で、FAIL です。
私が間違っているかどうかを知ってうれしいです。私が正しければ、ASDF の上に Python モジュールのようなシステムを構築しようとした人が誰もいないことに驚いています。
lisp - DrScheme で使用する言語を選択するにはどうすればよいですか?
最近、PLT Scheme と DrScheme をダウンロードしました。DrScheme を開くと、言語を選択するように求められます。しかし、私はどのオプションにも精通していません。また、ヘルプ ガイドでは、どのオプションを簡単に選択できるかを詳しく説明していません。
まず、DrScheme と PLT Scheme は本当に Lisp や Scheme を学ぶのに必要なツールなのでしょうか? もしそうなら、異なる言語は何ですか、またどの言語を使用する必要がありますか?
lisp - このスキーム関数をより明確に表現するにはどうすればよいでしょうか?
この関数は私が書いたものですが、単純な再帰と繰り返しを使用して、これをより明確に表現するにはどうすればよいでしょうか?
申し訳ありませんが、作成関数を定義するのを忘れていました。
また、この関数は、f と正の整数 n を計算する手続きを入力として取り、f の n 回目の繰り返し適用を計算する手続きを返します。
lisp - ユーザーが書いているものと関数が出力するものをLtkに表示させるにはどうすればよいですか?
関数の種類は次のようなものです。
Ltk のドキュメントを読みましたが、テキスト ウィジェットの使用例はないようです。