第一章 安裝MIT-Scheme

2021-07-27 15:38 更新

1.1 為什么使用Scheme

使用Scheme,你可以:

  • 編寫漂亮的程序。
  • 享受編程的樂趣。

這些就是為什么要學習Scheme的原因。在你用Scheme編寫一些實用程序的時候會遇到一些困難。

然而,正因為這是一門值得學習的語言,所以許多卓越的黑客鐘愛Scheme。事實上,計算機程序的構造和解釋(Structure and Interpretation of Computer Programs,SICP)——最好的計算機科學教科書之一——使用Scheme來描述演示程序。GNU也使用Scheme(一種被稱作guile的實現(xiàn))作為其應用軟件的通用腳本語言。guild相當于MS-Word或者Excel(原文是Excell,應該是作者的筆誤,譯者注)中的宏。它被用來通過簡單的腳本來操作應用程序。

盡管Common Lisp更加適合構建實用應用程序,但我依然推薦你首先學習Scheme,因為這門語言:

  • 設計緊湊
  • 語法簡單

業(yè)界大牛提出過“Scheme使你成為更棒的程序員”的看法。即是你很少在商業(yè)項目上使用Scheme,但學習Scheme獲得的良好感覺將會指導你使用其它的編程語言。

網(wǎng)絡上的Scheme教程(真是多如牛毛)總是或多或少的有些困難,因而不太適合初學者。這樣來說的話,本教程是面向新手程序員的,他們只需要對編程有一點了解即可。

1.2 目標讀者

本教程的目標讀者是僅有一點編程經(jīng)驗的PC用戶,例如:

  • 教授使用Scheme授課,無法跟上進度的學生。
  • 想要學習編程的人。

Scheme的語法相當?shù)睾唵?,并且可以通過一個簡單的方式解釋清楚。盡管如此,對初學者來說這種解釋還是太困難了。在本教程中,我會循序漸進地講解。

Scheme代碼僅由單詞,括號和空格組成,這些最初可能會使你感到煩擾。然而,如果你使用了一個合適的編輯器,它會為你展示配對的括號和自動縮進。因此,你不用擔心括號的配對,并且你可以通過縮進來閱讀代碼。如果縮進看起來很奇怪,你可以用編輯器找出錯誤的配對。

1.3 安裝MIT-Scheme

這節(jié)是面向Windows用戶的教程。我沒有使用Macintosh的經(jīng)驗,因此無法提供給你相關的幫助。如果你是Unix(或者Linux)用戶,(如果你無法自己安裝)請讓管理員安裝它。Scheme的使用并不依賴于操作系統(tǒng)。只有安裝才會因不同的系統(tǒng)而不同。

Scheme程序設計語言中有一些規(guī)范,最新的規(guī)范在Revised5 Report on the Algorithmic Language Scheme (R5RS)。

大多數(shù)的實現(xiàn)都是(完全或者部分地)基于R5RS。如果你使用的是部分符合R5RS的實現(xiàn),那么在使用時你就得當心一點。在Windows系統(tǒng)上有很多免費的Scheme實現(xiàn),比如:ChezScheme, MzScheme, DrScheme, SCM。在本教程中,我使用MIT/GNU Scheme,因為它高效并且非常容易安裝。MIT-Scheme的解釋器十分快速,除此之外它還能夠將你的程序編譯為本地代碼。MIT-Scheme的問題就是它并不完全符合R5RS規(guī)范。稍后我會詳細說明這點。事實上,只有MIT-Scheme和DrScheme有安裝包。有人推薦DrScheme,但是它太慢了。如果你有手動安裝軟件的能力,我推薦你安裝Petite Chez Scheme。這是一個運行在命令提示符(DOS Windows)下的非常棒的解釋器。

《Scheme實現(xiàn)》比較了幾種Scheme實現(xiàn)。當你習慣Scheme后,去嘗試幾種不同的實現(xiàn)將會是很好的主意?;蛟S你需要一臺Linux機器,因為大多數(shù)Scheme實現(xiàn)都是只能運行在Unix和Linux上的。

1.3.1 如何在Windows上安裝MIT-Scheme

MIT-Scheme可以簡單地通過下載并執(zhí)行安裝包來進行安裝。

  1. 訪問MIT/GNU Scheme的主頁,下載適用于Windows的二進制包: mit-scheme-N.N.N-ix86-win32.exe。
  2. 雙擊下載好的安裝包。安裝包會詢問一些事項,按照默認的設置進行即可。
  3. 安裝完畢后,有4個快捷方式被創(chuàng)建出來,分別是:Scheme,Compiler,Edwin和Documentation。Scheme,Compiler和Edwin都是指向同一個程序的快捷方式,但它們調(diào)用程序的參數(shù)不同。使用Compiler,你可以把程序編譯為本地代碼,這樣可使你的程序運行時間更短。但反過來說,Compiler會消耗更多的內(nèi)存。Edwin是一個類Emacs的編輯器,用于編輯Scheme程序。你可以使用這個編輯器或者你最喜歡的編輯器。
  4. 你可以通過編輯配置文件scheme.ini來自定義MIT-Scheme。 scheme.ini文件的創(chuàng)建路徑是由環(huán)境變量HOMEPATH決定的。你可以通過在命令提示符(DOS Windows)中輸入>set HOMEPATH來取得HOMEPATH的值。在WinXP中,HOMEPATH被預定義為:\Document and Setting\username

下面的代碼給出了一個scheme.ini文件的例子:

(cd "C:\\doc\\scheme")
(define call/cc call-with-current-continuation)

第一行代碼代表將工作目錄切換到C:\doc\scheme。通過這條代碼,MIT-Scheme移動工作路徑切換到這個路徑,你不需要再敲擊程序的絕對路徑來載入Scheme程序。第二行是定義call-with-current-continuation的縮略詞。

1.4 小結

安裝非常容易(除了編輯scheme.ini文件),你應該毫無問題。

下一章節(jié)是如何與MIT-Scheme前端會話。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號