工具選擇
- 解釋器:Chez Scheme
- 編輯器:Visual Studio Code
- VScode插件: vscode-scheme(提供代碼高亮與語法補全)、Code Runner(實現一鍵運行)
Scheme 作為LISP的一種方言,解釋器方面的實現早已不是問題,選用ChezScheme是因為開源、支持64-bit threaded並且運行效率很高,如果說有什么遺憾那就是默認不支持XP系統,據說自行編譯可以解決,但折騰VS太費勁了,我在XP系統上還是繼續用MIT-Scheme。
編輯器方面果斷Visual Studio Code,除了比較吃內存別的基本上沒什么大問題,插件市場很好用,配置文件編輯起來也不是很費勁。
Code Runner插件是看 關於在vscode中配置Scheme的問題 這篇帖子發現的,他沒有成功是因為沒有正確的配置環境變量,我沒有豆瓣賬號,就沒去回復了。
下載與安裝
Chez Scheme的官網上沒什么東西,自從被收購后就停止更新了,文檔和最新版的程序可以從這下載。
VScode的下載頁在這,不同平台會自動判斷的,直接點擊下載就好了。
安裝方面,因為是Windows,所以都很“傻瓜”式的,直接下一步就好了。
配置環境變量
依次打開 控制面板-系統-高級系統設置,切換到 高級 選項卡,點擊 環境變量,里面的 Path 按需求點擊選擇一個,接着點擊 編輯 ,在彈出的窗口中先點擊新建再點擊瀏覽,在安裝C盤(默認是這個)的Program Files文件夾或Program Files (x86)文件夾中找到Chez Scheme 9.5,展開會看到bin,接着展開,你會看到 a6nt與ta6nt 或 i3nt與ti3nt。
這里解釋下,最前面的t代表啟用threaded,末尾的nt代表Windows NT平台版本,a6代表AMD x64,即64位,i3代表Intel 386,即32位,根據自己的平台選擇一個,然后點擊數次確定,完成環境變量配置。
配置環境變量是為了實現直接輸入scheme命令即可啟動scheme,而不用再打上前面的路徑,簡化了輸入。
配置插件
vscode-scheme安裝好直接能用,Code Runner插件安裝后,需要配置才能使用。
點擊VScode左下角的小齒輪,接着點擊 設置 ,在右邊的用戶設置處追加:
VScode配置追加內容
"code-runner.executorMapByFileExtension": {
".vb": "cd $dir && vbc /nologo $fileName && $dir$fileNameWithoutExt",
".vbs": "cscript //Nologo",
".scala": "scala",
".jl": "julia",
".cr": "crystal",
".ml": "ocaml",
".exs": "elixir",
".hx": "haxe --cwd $dirWithoutTrailingSlash --run $fileNameWithoutExt",
".rkt": "racket",
".ahk": "autohotkey",
".au3": "autoit3",
".kt": "cd $dir && kotlinc $fileName -include-runtime -d $fileNameWithoutExt.jar && java -jar $fileNameWithoutExt.jar",
".kts": "kotlinc -script",
".dart": "dart",
".pas": "cd $dir && fpc $fileName && $dir$fileNameWithoutExt",
".pp": "cd $dir && fpc $fileName && $dir$fileNameWithoutExt",
".d": "cd $dir && dmd $fileName && $dir$fileNameWithoutExt",
".hs": "runhaskell",
".nim": "nim compile --verbosity:0 --hints:off --run",
".csproj": "dotnet run --project",
".fsproj": "dotnet run --project",
".ss": "scheme"
},
".ss": "scheme" 這一行是我加上去的,意思是對於后綴是 .ss 的文件使用scheme命令去執行它。
測試
Test.ss
; Test
(display "HelloWorld")
(exit)
注意下末尾的(exit),這個是為了避免解釋器執行完后進入交互狀態。
寫完保存為 test.ss ,然后右擊編輯區,選擇Run Code或直接按快捷鍵 Alt+Ctrl+N 即可看到輸出:
VScode輸出
[Running] scheme "c:\Users\Administrator\Desktop\test.ss"
Chez Scheme Version 9.5
Copyright 1984-2017 Cisco Systems, Inc.
HelloWorld
[Done] exited with code=0 in 0.288 seconds
Scheme的學習資源
CSDN專欄
兩篇經典文章
讀書筆記
TeXmacs了解下
這個支持直接嵌入Scheme等程序代碼並可以直接運行,讓文式編程變得不再雞肋,還擁有類似LaTeX的公式編輯系統與Word一般的圖形化操作,用來寫筆記再好不過了,就是有點卡。