syntax - 鸡计划是否支持复数?如果是这样,为什么我会收到此错误?

标签 syntax scheme runtime-error complex-numbers chicken-scheme

我刚开始学习一点 Scheme,我正在使用 Dorai Sitaram 在 Fixnum Days 的自学计划。在上述工作中指出:

Scheme numbers can be integers (eg, 42) ... or complex (2+3i).



强调我的。注意表格。

使用到目前为止我学到的原理,我尝试编写一些不同的程序来处理不同类型的数字。我最终编写了这个非常简单的代码片段来测试复数:
(begin
  (display 3+4i)
  (newline)
)

codepad.org 上进行测试(使用 MzScheme)和 Ideone.com (使用诡计)工作得很好。

现在,当我使用 Chicken Scheme(我的本地开发环境)尝试它时,它编译得很好,但是在运行时,崩溃并给我错误:
Error: unbound variable: 3+4i

  Call history:

  main.scm:2: 3+4i      <--

显然有一个未绑定(bind)的变量错误,但我有限的方案我什至不知道这意味着什么(还。)

有没有其他人经历过这个?我知道 Chicken Scheme 应该非常符合标准,所以它不支持像这样简单的东西似乎很奇怪。我通过他们的文档谷歌搜索,但我找不到任何具体的东西(虽然我认为有一个外部复数库可用,所以也许这是一个提示。)

如果有人有任何建议,他们将不胜感激。提前致谢! :)

最佳答案

相信你需要安装numbers在鸡计划中处理复数的扩展。做这个:

> chicken-install numbers

不要忘记加载它:
(use numbers)

关于syntax - 鸡计划是否支持复数?如果是这样,为什么我会收到此错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13504853/

相关文章:

file - 如何使用VBScript重命名目录中位于文件夹名称之前的所有文件?

c++ - 声明一个变量内联赋值C++

java - 为什么在java中的for-each循环中需要声明变量

java - 为什么在Eclipse插件的源文件中,很多变量的前缀都是 "f"?

scheme - 编写可移植方案代码。除了 R5RS 本身之外还有什么 "standard"吗?

c# - 传递目录路径时出错

arrays - 如何将一组 Expr(表达式)传递给 Haxe 宏?

stream - SICP 无限流(第 3.5.2 章)

scheme - 方案中如何最好的实现裸单和隐单

compiler-errors - Java类路径问题