69

私はPLTスキームを使用していますが、いくつかの問題があります。SICPを介して作業するためのより良い実装を知っている人はいますか?

4

8 に答える 8

92

Racket (以前の PLT スキーム)を使用します。

DrRacket IDE は、SICP を含むすべての Scheme の出発点として最適です。

ドキュメントでキーワードを検索するには、キーワードにカーソルを合わせて を押しF1ます。DrRacket では、REPL (read-eval-print-loop) で画像を直接見ることができます。

Neil van Dyke によるDrRacket の SICP サポート。

更新 (2016): 新しい SICP パッケージはhttp://pkgs.racket-lang.org/#[sicp]にあります。 パッケージ マネージャー (DrRacket 内) でダウンロードするか、raco. マニュアル

Update2 (2016): また、SICP 画像言語の新しい実装を試してみたい場合は、sicp-pict2.rktをダウンロードしてください。


Update3 (2020): sicp-lang パッケージには、sicp 言語と sicp 画像言語の実装が含まれています。

ドキュメンテーション: DrRacket ソースコードの SICP サポート: GitHub Racket の sicp-lang パッケージ: sicp-lang パッケージ情報

注: ピクチャー ランゲージには、本で説明されているピクチャー ランゲージよりも多くの機能 (色や大きいサイズなど) があります。ソースには例が含まれています: https://github.com/sicp-lang/sicp/blob/master/sicp-pict/main.rkt

于 2008-11-04T18:43:23.187 に答える
66

MITスキームを使用します。

これはSICPの作成者によって推奨されており、MITの6.001:コンピュータプログラムの構造と解釈コースで使用されています。

于 2008-11-04T02:58:28.193 に答える
12

MIT/GNU スキーム、SICP互換パッケージをロードすることを確認してください(はい、SICP演習の動作を保証する特定のライブラリを提供します)。

于 2008-11-04T03:03:02.617 に答える
9

これを macOS で行うのは驚くほど面倒でした。Homebrew を使用していると仮定した場合の、現在の動作は次のとおりです。(たまに実行したいかもしれませんbrew update)。

brew cask install racket
raco setup  # might be optional
raco pkg install sicp

(require sicp)これで、実行するか、単に実行できます

racket -l sicp --repl

と省略したい場合がありますscheme。それはbashで

alias scheme='racket -l sicp --repl'

あなたがあなたに追加できる~/.bashrc

于 2016-11-12T10:26:21.033 に答える
6

今週、SICPを始めたばかりです。

現在、MITスキームはUbuntu Linux(9.04 "jaunty")に組み込まれています。将来的には機能する可能性があります。

DrSchemeは機能しており、正常に機能しています。上記のsoegardのパッケージ、またはsoegardのパッケージに基づいてhttp://www.neilvandyke.org/sicp-plt/から入手できるNeilVanDykeのパッケージを使用できます。このパッケージの良いところは、インストール時に、Language | ChooseLanguage....メニュー項目を使用してSICPを選択できることです。

于 2009-06-30T03:52:42.670 に答える
2

CHICKEN スキームには、SICP をサポートするsicp ライブラリがあります。chicken-install sicpソースコードの最初にこれを実行して書き込むことでインストールできます: (use sicp).

于 2016-08-18T18:08:16.793 に答える
1

PLT スキーム、またはKeparo が提案したMIT スキームは非常にうまく機能します。どのような問題がありますか?

于 2008-11-04T03:03:52.007 に答える
0

私は現在、Chez Schemeを使用して SICP に取り組んでいます。それはSchemeのかなり古い方言なので、おそらくSICPが書かれたものからそれほど遠くないでしょう.

Chez Scheme プロジェクト ページは、Unix ライクなプラットフォームでビルドできる Windows バイナリとソースにリンクしていることに注意してください。しかし、Mac を使用している場合は、おそらくやりたいと思うでしょう。

brew chezscheme
man chez

homebrewがあると仮定すると、これは本当に必要です。

なぜMITスキームではないのですか? インタラクティブなフロント エンドは、EMACS 規則を使用するエディターである Edwin であるためです。(現在、これは実際の EMACS モードであり、Scheme で実装されていました。) 私は基本的な EMACS を知っていましたが、私のスキルは使用されなくなったため衰退しました。

なぜDrRacketではないのですか?@frederick-squid の醸造手順を見ていたら、試してみたかもしれません。代わりに、scheme と sicp の公式の指示に従おうとしましたが、これらは非常に時代遅れです。次に、IDE をスキーム モードにしようとしましたが、これは直感的であるように見えますが、そうではありません。

面倒すぎる。そして、特に、Scheme の貧弱なサポートが最初の疑問を引き起こしたような、派手な言語設計 IDE に取り掛かりたいかどうかはわかりません。

于 2017-12-27T23:50:59.937 に答える