Scheme 无法简单加载方案代码
我在加载Berkeley Scheme课程的代码时遇到了麻烦,简单地说就是Scheme,特别是代码。我已经在Scheme的许多不同版本中进行了测试。在Chicken中,我得到以下错误:Scheme 无法简单加载方案代码,scheme,Scheme,我在加载Berkeley Scheme课程的代码时遇到了麻烦,简单地说就是Scheme,特别是代码。我已经在Scheme的许多不同版本中进行了测试。在Chicken中,我得到以下错误: #;1> (load "simply.scm") ; loading simply.scm ... Error: (symbol->string) bad argument type - not a symbol: #<procedure (? wd)> Call histor
#;1> (load "simply.scm")
; loading simply.scm ...
Error: (symbol->string) bad argument type - not a symbol: #<procedure (? wd)>
Call history:
<syntax> (##core#if (empty? x) (##core#begin (whoops "Invalid argument to FIRST: " x)) (##core#if (word? x) (......
<syntax> (empty? x)
<syntax> (##core#begin (whoops "Invalid argument to FIRST: " x))
<syntax> (whoops "Invalid argument to FIRST: " x)
<syntax> (##core#if (word? x) (##core#begin (word-first x)) (##core#begin (whoops "Invalid argument to FIRST:...
<syntax> (word? x)
<syntax> (##core#begin (word-first x))
<syntax> (word-first x)
<syntax> (##core#begin (whoops "Invalid argument to FIRST: " x))
<syntax> (whoops "Invalid argument to FIRST: " x)
<syntax> (##core#undefined)
<syntax> (word->string word->string)
<eval> (word->string word->string)
<eval> (string? wd)
<eval> (number? wd)
<eval> (symbol->string wd) <--
Welcome to Racket v6.3.
> (load "simply.scm")
simply.scm:20:12: set!: cannot mutate module-required identifier
in: number->string
context...:
/home/hercynian/racket/collects/racket/private/misc.rkt:87:7
。这似乎不是一回事。这超出了我的初学者技能范围。你知道simply.scm有什么问题吗?它似乎适用于:
guile 2.0.11,
鸡的intepreter 4.10.0,
gambit的解释器gsi 4.2.8,
麻省理工学院计划9.1.1
球拍不行,看来你得对这个文件进行大量修改,至少要改变设置!要定义并可能将其全部包装到模块中?-但我不是敲诈的家伙
下面是我要做的:
再次下载这个simply.scm文件,以确保您的checken错误表明您错过了let的某个位置,可能在第264行def中。指单词或单词。第一个
尝试上面的方案实现,如果出现任何错误,请将它们粘贴到此处
如果你没有这些版本,这会很奇怪,但我不知道你的情况,并且你自己在做这门课程,试着不用simple.scm来做,任何时候你发现你的方案中缺少了什么,试着只从simple.scm复制这个定义,或者修改你的代码,这样就不需要了——这是最核心的方法
我从错误中看到您使用的是drracketide或racketbinary Racketeer和Soer制作了一个Racket模块语言,以支持Racket语言套件中的Simply Scheme。在Racket中,设置左下角的下拉列表,以确定源语言并替换定义窗口,包括以下语言行:
#lang planet dyoo/simply-scheme:2
(se (butlast (bf "this"))
"world")
然后按RUN。它将下载并安装该语言,然后您将看到答案hi world。第一次你可能会看到一个错误,但我的经验是,它会在连续运行中消失
这些定义将具有中描述的所有简单方案功能。快乐的黑客 你试过狡诈吗?那是我第一次。在过程symbol->string中:位置1的类型参数错误,需要符号…我用guile 2.0.11、chicken的intepreter 4.10.0和gambit的解释器4.2.8对其进行了测试,在这三种情况下,似乎都可以加载。。。你用的是什么版本?试试新的诡计或游戏。再次下载似乎可以解决这个问题。我不知道我的原件有什么问题。忘记区分。。。