2

我正在学习PLAI,现在我已经在 DrRacket 中运行了第 3 章的代码(带有#lang plai),但我是 DrRacket 的新手。我可以只在 Emacs 中编辑和运行代码吗?

4

2 回答 2

5

#lang plai指令将在 DrRacket 之外的普通 Racket 文件中工作。在你的 Racket 安装中应该有一个racket可执行文件,你可以使用它来运行它们。如果您想要一个更容易运行 Racket 程序的 emacs 包,请尝试使用 geiser 。嘎嘎也很有帮助。

更一般地,请参阅使用 emacs 和 Racket 的指南条目。您可能还想通过解释如何运行 Racket来从头开始阅读该指南。

于 2012-07-14T04:25:58.733 回答
0

Geiser 遇到的一个问题是,当代码中有指令时,“Cx Cb”( geiser-eval-buffer) 将不起作用。#lang

这个问题有几个 Geiser 的解决方法。或者,您可以使用球拍模式,它旨在在 Emacs 中复制 DrRacket 体验,其中重点是(重新)运行代码或测试,而不是在 REPL 中增量。(有关这背后的理念,请参阅 Matthias Felleisen 的文。)

(注意:racket-mode 仍然包含将当前缓冲区的 region 或 sexps 发送到 REPL 的绑定,只是没有对切换模块和命名空间的特殊支持。尤其是在开头结尾,无论如何很多人都不会错过.)

于 2015-08-06T18:55:15.987 回答