问题标签 [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 投票
12 回答
9374 浏览

c - 如何实现延续?

我正在研究用 C 编写的 Scheme 解释器。目前它使用 C 运行时堆栈作为自己的堆栈,这在实现延续方面存在一个小问题。我目前的解决方案是将 C 堆栈手动复制到堆中,然后在需要时将其复制回来。除了不是标准的 C 之外,这种解决方案也不是很理想。

在 C 中实现 Scheme 延续的最简单方法是什么?

0 投票
12 回答
3948 浏览

lisp - 没有 Emacs 的 Lisp/Scheme 解释器?

一段时间以来,我一直想自学 Lisp。但是,我听说过的所有解释器都包含一些 emacs 风格。是否有任何命令行解释器,以便我可以在命令行中输入:

lispinterpret 源文件.lisp

就像我可以运行 perl 或 python 一样。

虽然我还想更加熟悉 Emacs(如果只是为了在与使用 Emacs 的人一起工作时不会感到沮丧),我宁愿将学习 Emacs 与学习 Lisp 分离。

编辑:我实际上想关注使用Scheme的SICP,所以关于Scheme的答案会更有用。我只是不太熟悉这些差异。

0 投票
15 回答
6411 浏览

functional-programming - 关于函数式编程的好的开始文本是什么?

我喜欢在我的舒适区之外学习语言,但我很难找到一个开始学习函数式语言的地方。我听说过很多关于计算机程序结构和解释的好东西,但是当我几年前试图通读它时,它似乎在我脑海中呼啸而过。与网站相比,我在书籍方面做得更好,但是当我访问当地的书店时,LISP 上的书籍看起来有点吓人。

那么什么是好的起点呢?我的目标是能够在 6 个月左右的时间内使用函数式编程语言解决简单的问题,并且能够转向更高级的主题,识别函数式语言何时是适合工作的工具,并使用该语言来解决在 2-3 年内解决更多问题。我喜欢有大量例子的书,但也包括需要解决的挑战。函数式语言是否存在这样的事情?

0 投票
4 回答
516 浏览

lisp - 将 CL 和 Scheme 牢记在心

根据我的心情,我似乎在想要一个 Lisp-1 和一个 Lisp-2 之间来回徘徊。不幸的是,除了明显的名称空间差异之外,这会留下您遇到的各种有趣的函数名称/等问题。举个例子,今晚我试着写一些代码 (map #'function listvar),当然,这在 CL 中根本不起作用。花了我一点时间记住我想要地图车,而不是地图。当然,当 slime/emacs 显示 map IS 被定义为某些东西时,它并没有帮助,尽管显然根本不是相同的功能。

那么,关于如何尽量减少选择其中一个并坚持下去的指针?

0 投票
12 回答
2972 浏览

ruby - 寻找“真实”使用延续的例子

我试图掌握延续的概念,我从维基百科文章中找到了几个像这样的小教学示例:

我了解这个小功能的作用,但我看不到它有任何明显的应用。虽然我不希望很快在我的代码中使用延续,但我希望我知道一些合适的情况。

因此,我正在寻找更明确有用的代码示例,了解延续可以为我作为程序员提供什么。

干杯!

0 投票
11 回答
8380 浏览

ide - 将哪个环境、IDE 或解释器付诸实践方案?

我一直在通过The Little Schemer,我想知道最好使用哪种环境、IDE 或解释器来测试我为自己记下的任何 Scheme 代码。

0 投票
3 回答
479 浏览

scheme - Guile 计划 - 报价期?

下面的 Guile 方案代码有什么作用?

该代码在 MzScheme 中无效,是否存在跨方案实现的可移植等效项?

我正在尝试移植其他人编写的代码。Guile 似乎对 '. 使用#{.}#,但我不确定它的含义或如何在另一个方案中执行此操作。

0 投票
2 回答
3125 浏览

list - 如何附加到方案中的 alist?

将元素添加到 alist(关联列表)的头部非常简单:

不过,附加到 alist 的尾部有点棘手。经过一些实验,我制作了这个:

但是,在我看来,这不是惯用的解决方案。那么这通常是如何在方案中完成的呢?或者这实际上是这样的?

0 投票
2 回答
356 浏览

mapping - 在 Scheme 标准中是否存在这样的过程,如果存在,它是如何调用的?

我查找了一个过程的名称,它将过程的树结构应用于数据的树结构,产生结果的树结构——所有三棵树都具有相同的结构。

这样的过程可能具有以下签名:

它的返回值将是 functree 的元素在相应数据元素上的元素应用的结果。

示例(假设该过程称为映射树):

示例 1:

会产生结果

p>

示例 2:

产生结果

p>

但是,我在查阅的 SLIB 文档中没有找到这样的功能。

这样的程序是否已经存在?
如果不是,该过程的合适名称是什么,您将如何对其参数进行排序?

0 投票
9 回答
12273 浏览

scheme - 学习计划的好处?

我刚刚开始了我的一门课程,因为课程刚刚开始 2 周前,我们现在正在在一门课程中学习 Scheme,因为我稍后会认为是某种原因,但到目前为止,他所教的基本上是如何在 scheme 中写作. 当我坐在这里试图保持清醒时,我只是想了解为什么我想知道这个,以及为什么有人使用它。它擅长什么?下周我打算问他,除了如何在计划中写东西之外,在这里学习的目标是什么。