能不能用DrRacket代替GUN/MIT Scheme去實現SICP中的習題?DrRacket和GNU/MIT Scheme有什麼區別?
01-27
這方面資料比較少,有人推薦用DrRacket。但是打開之後不知道選擇什麼語言?
Racket語言是什麼?和Scheme是什麼關係?
支持 GC,closure,reference/pointer 的語言都可以。如果不是 Lisp,第四章之後需要自己寫一個 S-exp parser。僅此而已。
#lang planet neil/sicp
SICP Support for DrRacket
具體的差別可以看這裡:
lisp - How is Racket different Than Scheme?其實我覺得沒啥問題,我用Common Lisp搞SICP,從未遇到麻煩。-------------------------[Lisp內戰向]好吧,我承認遇到了一些麻煩……這些麻煩會使得你很想轉向Scheme
#lang r5rs
安裝sicp Package後
#lang sicp
即可。
詳見:SICP Collections
還是老老實實用mit-scheme,還可以順便學點emacs,drracket的流和mit-scheme的流的實現不一樣,沒法做後面的習題
好消息,加州伯克利大學新開的 CS 61AS 課程已經全部使用 Racket 教授 SICP 了。
自學課程的網址在這裡:CS 61AS Spring 2016個人感覺在windows環境下使用racket還是很方便舒服的,sicp中的習題絕對沒有問題
SICP Support for DrRacket
可以 我就是用這個做sicp習題的。不過裡面有一些小坑,就當是了解一下異同。
可以。我就這麼做過。沒遇到什麼麻煩。
可以,沒問題。
中間會有些坑,不過不大,這也是機會,可以更清楚的認識到racket在實現scheme標準時的異同。其實,主要原因是 DrRacket 實在太方便了。在這裡問,還不如自己多搜搜資料看看...mit-scheme 9.1 的Edwin在win8上有不少BUG(到目前為止,官方還沒有修正)。用9.0.1版就OK了。
完全可以 具體參考blog http://blog.csdn.net/boyxiaolong/article/details/25301297
我在ubuntu 16.04系統下,安裝的是DrRacket6.3,《程序設計方法》書中的第六章習題,繪圖不能用,總提示函數未定義,我看了幫助台提示的內容,說是5.3版本後就綁定了picture programmer 的軟體包,不知道是不是bug.前幾章的課後題都自己做了,都能得到預期結果,我前天才開始學習Scheme,所以不知是bug,還是需要自己定義函數(我覺得應該是bug,或安裝時沒能裝上),也請有經驗的知友幫我解答下疑惑
推薦閱讀:
※(如何(用Python)寫一個(Lisp)解釋器(下))
※相比 Scheme 與 Common Lisp,Clojure 有哪些坑?
※了解和掌握scheme的意義?
※scheme中letrec的語義要如何轉化以及實現?