问题标签 [chicken-scheme]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
51 浏览

scheme - 扩展宏时是否可以使用用户定义的功能?

来自鸡肉计划手册:

定义语法在不同的扩展环境中评估过程(最初可以访问方案模块的导出标识符)

是否可以将用户功能注入扩展环境?

0 投票
2 回答
354 浏览

filter - 在鸡计划中过滤未绑定。为什么?

我从鸡肉计划开始。下面的代码适用于 mit-scheme repl,但不适用于 csi。csi 在文档中定义了过滤器,但是当我运行下面的代码时出现未绑定变量错误。

0 投票
2 回答
381 浏览

command-line-interface - chicken-scheme - 如何读取通过标准输入传入的所有行?

我正在尝试通过标准输入读取传递给鸡计划脚本的所有行,并将它们放入列表中,但我似乎无法正确确定何时结束输入。另一个测试脚本似乎表明测试(eof-object? results-of-last-read-line-call)是合法的测试,但在下面的示例中,它只是坐在那里无限阅读。

我整理了以下测试脚本。我打电话给它cat some_file.txt | this_script.scm

0 投票
1 回答
72 浏览

scheme - 在 Chicken Scheme 中使用常见 SRFI 的别名

Chicken 附带了我想要的大多数主要 SRFI,但我觉得非常令人沮丧的一件事是,据我所知,我必须按数字使用它们。即使我可能记得这(use srfi-69)确实意味着“使用哈希表”,但我项目中的其他人却没有——甚至我也不一定记得更不常用的绰号,比如srfi-14. (多线程,如果你好奇的话。)

SRFI 是否有一些别名系统,以便我可以写一些更接近的东西(use hashtables)?或者,有没有办法让我在启动时让 Chicken 使用所有内置的 SRFI?

0 投票
1 回答
274 浏览

scheme - 鸡计划编译器 (csc) 错误

我重新安装了 mingw64 和 chicken 方案,但是每当我尝试csc从命令行编译文件时,我都会得到以下信息: 在此处输入图像描述

foo.scm:

有人可以帮助弄清楚为什么它无法编译文件吗?如果我有一个打开 C:\chicken-iup\ 文件夹的文件浏览器,我可以看到它生成一个 .c 文件,然后生成一个 .o 文件。我假设在链接 .o 文件期间会发生错误,但我不确定。

0 投票
1 回答
147 浏览

unit-testing - 鸡计划 - 我如何临时捕获发送到标准输出的数据

我有一个调用的程序(display "foo")

我想为它编写一个单元测试,以确认它在那里发送正确的数据,但display将其输入发送到标准输出:

问题:在其他语言中,我可能会将标准输出重新定义为仅写入变量的内容,然后在测试后将其设置回来。在鸡肉中这样做是正确的吗?如果是这样,怎么做?如果不是,那么正确的做法是什么?

注意:传递其他内容以显示为第二个参数不是一个选项,因为我必须更改我正在单元测试的方法才能这样做。

0 投票
1 回答
1199 浏览

scheme - 如何在方案中将字符串写入不带引号的文件

我正在尝试将字符串写入文件,但每次我这样做时都会有引号。

我试过了

但在这两种情况下,我都预料到"some text"但得到了"\"some text\""

我目前正在从事鸡肉计划,但我认为这并不重要。

0 投票
1 回答
1728 浏览

scheme - 模块中的鸡计划(使用)和(导入)不起作用

我在几个项目中都遇到过这个问题,但是这个测试用例删除了理解问题所不需要的一切。我一直在用它来找出问题所在:

所以我有一个目录,里面有 2 个文件foo.scm,和bar.scm


baz.scm 无法在 csi 中运行并出现以下错误:

我检查了文档:use应该将代码加载到内存中,然后再加载import。我什至已经运行require了,该函数use用于单独加载代码。它运行顺利,只是import失败了。我还尝试将代码导入csi. use不起作用,但require后面跟着import做,即使那应该等同于use.

简而言之,我感到非常困惑。任何人都可以解释发生了什么,以及如何解决它?

0 投票
1 回答
483 浏览

scheme - 非过程调用<#unspecific>

我正在尝试将 sexps 转换为 xml,我有一个递归函数,它遍历表示 xml 标记及其子标记的列表,然后以正确的缩进将它们打印到标准输出。

我正在使用鸡计划编译器。

来源:

我用正常设置编译它csc xml.scm -o xml.exe

我得到以下

如果您删除(display-heir tg1)它,它会给出正确的输出以及该行之后的代码:

0 投票
1 回答
371 浏览

sicp - 在 CHICKEN Scheme 中,如何获得 unix 时间?

我正在寻找一种在 CHICKEN Scheme 或任何其他时间戳中获取 unix 时间的方法,我可以将其与其他时间戳进行比较,就像它是一个数字一样。

我想要这个是因为我试图模仿我正在阅读的书(SICP)中定义的(运行时)作为“自启动解释器以来的时间”,但因为我们只是在寻找这些标记在不同点之间的差异,其实没关系。

如果有帮助,我可以更详细地介绍:我正在尝试做练习 1.22。