问题标签 [chez-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.
list - 方案:检测列表中的重复元素
R6RS 或 Chez Scheme v7.9.4 是否具有库函数来检查列表是否包含重复元素?
或者,是否有任何内置的集合功能(不允许重复元素)?到目前为止,我只能在这里找到一个例子。
问题在于它似乎实际上并不是 Chez Scheme 库的一部分。尽管我可以编写自己的版本,但我更愿意使用众所周知的、经过测试和维护的库函数——尤其是考虑到这是一个多么基本的操作。
所以一个简单的“使用这些内置函数”或“没有内置库实现这个”就足够了。谢谢!
scheme - Chez 方案分配:--program vs --script
考虑一下Chez Scheme代码:
运行:
哇,它报告只分配了 8 个字节。
--program
让我们使用选项而不是再次运行它--script
:
哎呀,分配了 800000 字节。
有什么区别?
埃德
recursion - 加密 [Petite Chez 计划]
我有一个关于我一直在尝试运行的程序的问题。Encrypt 获取消息、公钥和私钥,并返回消息,并将公钥中的消息中的字母更改为私钥中的字母。
例如, (encrypt "abcd" "abcd" "efgh") 应该返回 "efgh" 并且 (encrypt "abcl" "abcd" "efgh") 应该返回 "efgl"(来自未公开的消息的字母 -密钥将保持不变)。
我已经编写了一些帮助程序来解决这个问题,但是当我尝试运行它时,我不断收到错误“汽车中的异常,__ 不是一对”。但我不确定有什么问题。如果有人有任何指示,请告诉我。谢谢!
scheme - Andmap\ormap - chez 方案
我试图在 chez 方案中查找有关 andmap 和 ormap 操作的信息。
尽管如此,我还是不明白这些操作的用途,以及它和map有什么区别。
performance - 进行整数除法的最快方法是什么?
使用方案我需要使用以下功能。(所有参数都是自然数 [0, inf) )
然而,这个函数经常被调用并且性能不够好(速度方面)。是否有更有效的方法来实现所需的行为(num 和 denom 的整数除法,如果 denom 为零则返回安全值)?
注意,我使用的是 Chez Scheme,但是它被用于仅导入 rnrs 而不是完整 Chez 的库中。
scheme - 在 chez 方案中使用匹配
我正在尝试学习如何在方案中使用匹配。我有点理解它如何处理非常短的问题(即:定义长度只是两行),但不适用于有多个输入和辅助程序的问题。例如,这是定义联合的一种流行方式:
您如何在两个程序中使用 match 来做到这一点?(或者你甚至需要两个程序?)
algorithm - 欧几里得算法解决 RR' - NN' = 1. 使用蒙哥马利算法进行模幂运算以在 python 或 Petite Chez 方案中实现费马检验
这是我使用 Scheme 教授的入门编程课程中的个人挑战,但我对 Python 示例同样满意。
我已经在方案中实现了模幂的二进制方法,如下所示:
这是必要的,因为 Chez Scheme 没有任何类似于 python 的 pow (base expo modu) 的实现。
现在我正在尝试实现解决模乘的蒙哥马利方法。例如,我有:
我试图了解如何解决 RR' - NN' = 1。我意识到 R' 的答案应该是 64 而 N' 应该是 81,但不明白如何使用欧几里得算法来得到这个答案.
scheme - 如何运行(解释)存储在文件中的 Scheme 程序?
目前我正在使用 Petite-Chez Scheme 的 REPL 功能。这适用于小示例等。
但是,如何将整个程序存储在文件“.scm”中,然后从命令行运行(解释)它?我熟悉 (load "C:/..") 命令,但是这只会将文件中的定义加载到 REPL 中。
如何使用 Scheme 运行程序,例如在 C/C++ 中编译然后执行二进制“.exe”的程序?
谢谢。
scheme - Petite Chez Scheme (threaded) 这两个列表有什么区别?
在 Petite Chez 计划(线程)中。我定义了两个名为 myq 和 myqq 的列表。
这是结果:
我的问题是:作为
显示 myq 和 myqq 相等。为什么执行相同的命令:
导致不同的结果?另外,我不知道为什么(set-car! (cdr myqq) 'b)
会导致。((b) b)
我认为应该会导致((ignored) b)
,因为我们从来没有换过myqq的车!
emacs - 编译包未在 chez 方案中加载
我已经安装了 petite chez 方案并使用了 .el 配置文件,如下所示 - 我的 .emacs 文件:
我正在使用的 scheme-setup.el 文件在这里:
https://github.com/tiljeset/emacs/blob/master/scheme-setup.el
现在,当我这样做时
并编译C-c C-k
,我得到错误:
在 REPL 中。请问这个问题是什么原因造成的?
给出同样的错误。