如何使用命令行在Scheme中加载可执行文件

时间:2018-12-17 09:18:02

标签: scheme racket

我正在使用DrRacket并在emacs中生成了一个文件hello.scm,内容如下:

 #! /usr/bin/env racket


                ;The first program

 (begin
   (display "Hello, World!")
   (newline))

然后我尝试使用lukeburke$ racket hello.scm在终端上编译文件,并收到以下结果:

  Lukes-MacBook-Pro:~ lukeburke$ racket hello.scm
default-load-handler: expected a `module' declaration, but found
 something else
 file: /Users/lukeburke/hello.scm
 context...:
 default-load-handler
 standard-module-name-resolver
 module-path-index-resolve
 [repeats 1 more time]
 module-declared?

此外,当我将emacs文件的内容复制并粘贴到DrRacket中并单击Run时,会收到以下消息:

Module Language: only a module expression is allowed, either
    #lang <language-name>
 or
    (module <name> <language> ...)
 in: (begin (display "Hello, World!") (newline))

Interactions disabled.

到底是什么问题?

1 个答案:

答案 0 :(得分:0)

通过在emacs文件顶部添加#lang racket解决了问题。