scheme - 如何使用命令行在 Scheme 中加载可执行文件
问题描述
我正在使用 DrRacket 并hello.scm
在 emacs 中生成了一个文件,其中包含以下内容:
#! /usr/bin/env racket
;The first program
(begin
(display "Hello, World!")
(newline))
然后我尝试在终端使用 编译该文件le$ racket hello.scm
,并收到以下结果:
Le-MacBook-Pro:~le$ racket hello.scm
default-load-handler: expected a `module' declaration, but found
something else
file: /Users/le/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.
究竟是什么问题?
解决方案
#lang racket
通过在 emacs 文件顶部添加解决了该问题。
推荐阅读
- amazon-web-services - DynamoDB 如何能够同时实现 HA 和最终一致?
- excel - 使用日期公式更新excel中的下拉列表
- c++ - 不同命名空间中的 Gtesting 类型参数化测试实例化和注册
- angular - 从 Angular (TP) 向 Flask 发布请求未在控制台中显示
- reactjs - 如何在带有钩子的react redux中取消Axios请求?
- google-ads-api - 更改广告系列/广告的广告组
- ruby - 如何在 Ubuntu 20.04 上安装 ruby-dbi?
- python - 从 python 函数返回多个文件以及另一个变量的问题
- javascript - 获取乘积之和表达式 mathjs/js 的不同乘积
- tsql - SQL 选择与 NULLS 到变量