我必须学习如何为while.But设计程序一旦我开始使用Emacs来学习htdp,我就遇到了一些问题。问题是:我输入了#lang racket,但它只显示:
> stdin::7: read: #lang not enabled in the current context
context...:
/usr/share/racket/collects/racket/private/misc.rkt:87:7
> racket: undefined;
cannot reference undefined identifier
context...:
/usr/share/racket/collects/racket/private/misc.rkt:87:7我使用'require‘来加载路径。
stdin::30: cannot open module file
module path: #<path:/Desktop/htdp/convert.rkt>
path: /Desktop/htdp/convert.rkt
system error: No such file or directory; errno=2
context...:
standard-module-name-resolver
/usr/share/racket/collects/racket/private/misc.rkt:87:7它也不能工作。
你能帮我解决这个问题吗?附言:我的系统是Fedora20。
发布于 2014-09-03 11:11:31
当您从控制台运行球拍脚本时,您不应该需要在第一行定义语言。此标志
racket -I <language>可用于在从命令行运行时指定语言。#lang racket应该是缺省值,所以只需删除该行并使用racket命令从命令行运行脚本即可。
发布于 2019-03-22 15:11:00
从链接https://docs.racket-lang.org/guide/Module_Syntax.html#%28part._hash-lang%29
上面写着:
模块文件开头的#lang是模块表单的缩写,就像‘是引用表单的缩写一样。与‘不同,#lang速记在REPL中不能很好地工作,部分原因是它必须以文件结尾结束,还因为#lang的手工扩展依赖于封闭文件的名称。
https://stackoverflow.com/questions/25635273
复制相似问题