在Windows 10下部署Scheme开发环境

工具选择

  • 解释器: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一般的图形化操作,用来写笔记再好不过了,就是有点卡。

posted @ 2018-06-14 14:28  林博士  阅读(6271)  评论(1编辑  收藏