問題タブ [racket]
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 - PLT スキーム用のカスタム言語モジュールを作成するための優れたチュートリアルはありますか?
PLT 用のカスタム言語を作成するには、どこから始めればよいですか? ネット上に情報はありますか (または、私が監督しているマニュアルの情報でしょうか?) または、既存の言語パックがそのようなタスクの最良のリファレンスですか?
前もって感謝します!
scheme - なぜ "let" は評価しないのに # を与えるだけなのか
このような簡単なもの:
let 式で Enter キーを押すと、#<promise>
. 私は何を間違っていますか?
scheme - PLT-Scheme 学習リファレンス
2冊のSchemerの本を読み終えた後、私はHtDPに着手しようとしていますが、http://docs.plt-scheme.org/guide資料も発見しました。
前述の書籍は、Scheme に特化しているようで、後者は PLT 固有の拡張機能 (モジュール、require、ブラケット構文など) を対象としています。オンライン マニュアルは優れていますが、購入できるブック フォームがあることを期待していましたか?
そうでない場合、私は確かに詳細なオンライン マニュアルに感謝しています - ただ興味がありました!
scheme - スキームの初歩的な質問
Dr.Schemeに次のステートメントを入れようとしています:
{with {x {+ 5 5}} {+ xx}}
しかし、私はエラーが発生しました:
expand: モジュール内のバインドされていない識別子 in: with
誰でも私を助けることができますか?ありがとう。
scheme - Ghuloum が使用するスキームは何ですか?
Abdulaziz Ghuloum による Compilers: Backend to Frontend (および Back to Front Again) を試しています。フルコース/セミナーで期待されるものから省略されているように見えるので、私は自分で部分を埋めようとしています.
たとえば、DrScheme の R5RS フレーバーで彼のテスト フレームワークを使用しようとしましたが、マクロが気に入らないようです。
私はコースに関する彼の紹介論文An Incremental Approach to Compiler Constructionを読みました。これは、使用されている手法の概要を示しており、「追加の功績」のために実装したい機能を備えたいくつかのスキームについて言及していますが、彼はそうではありません。彼がコースで使用するスキームについては言及しないでください。
アップデート
私はまだ元の質問を掘り下げています(以下のEliによって提案されたPetit Schemeなどのオプションを調査しています)が、Gholoumの仕事に関連する興味深いリンクを見つけたので、ここに含めます.
[Ikarus スキーム]( http://en.wikipedia.org/wiki/Ikarus_(Scheme_implementation))は Ghuloum のアイデアの実際の実装であり、彼の博士号の一部であったようです。仕事。これは、R6RS の最初の実装の 1 つになるはずです。今Ikarusをインストールしようとしていますが、configure スクリプトは私のシステムのlibgmp.soのインストールを認識したくないので、私の問題はまだ解決されていません。
例
次の例は、Pretty Big を使用して DrEd で実行されている PLT 2.4.2 で動作するようです。
requireディレクティブを#lang スキームに置き換えようとすると、エラー メッセージが表示される
これは、 tests-driver.scm のロードに失敗したことが原因のようです。#lang r6rsを使おうとするとREPL が無効になるので、これは本当に使いたいので、Pretty Big を続けようと思います。
Eli Barzilay の患者の助けに感謝します。
lisp - plt-schemeでフレーム%を「破棄/破棄」する方法は?
特定のイベントがトリガーされたときに、以前に表示されたフレームを破棄したい。
リファレンスマニュアルでこれに関することは何も見つかりません。
data-structures - フィールドを表示するために PLT スキームで構造を印刷する方法は?
次のようなコードが欲しいです:
このようなものを印刷するには:
DrScheme または MzScheme repl に「th」と入力すると、出力スタイルを「コンストラクター」に設定して、DrScheme で「かなり大きな」言語を使用しています。これは私が DrScheme で得たものです:
(私は文字通り3つのドットを取得します)
MzScheme では:
project - plt-scheme : キャンバス上のマウス クリック イベントをキャッチする
AI コース プロジェクトとして、plt-scheme で三目並べゲームを作成しています。GUI のアイデアは、それぞれにキャンバスがあり、ペインを使用する 9 つのボックスを持つグリッドです...ユーザーがキャンバスをクリックすると、それに応じて「X」または「O」が描画されます...
問題は、キャンバスでマウスクリックイベントをキャッチするにはどうすればよいですか? イベントで使用する必要があることがわかりましたが、まだ方法がわかりません。手がかりはありますか?
racket - PLTスキームソート機能
PLTスキームガイドによると、実装されている並べ替え関数は、ラムダ関数を使用して、抽出された値に従ってリストを並べ替えることができます。リンクテキスト
ガイドは、これの機能しないコード例を提供します-
これはエラーを返します。
特定の関数によって計算された値に従って実際にリストをソートするために、この関数はどのように呼び出されると想定されていますか?
lisp - SchemeにLispの「ランタイム」プリミティブに相当するものはありますか?
SICPセクション1.2.6によると、演習1.22:
ほとんどのLisp実装には、システムが実行されている時間を指定する整数を返すランタイムと呼ばれるプリミティブが含まれています(たとえば、マイクロ秒単位で測定されます)。
ランタイムが利用できないように見えるDrSchemeを使用しているので、適切な代替品を探しています。PLT-Scheme Referenceで、current-millisecondsプリミティブがあることがわかりました。より良い解像度のSchemeにタイマーがあるかどうか誰かが知っていますか?