问题标签 [dr.racket]

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 投票
3 回答
18754 浏览

scheme - Dr.Racket 中哪个 lang 包适合 SICP?

我正在尝试使用 SICP,我得到了一些代码。所以我开始:

返回错误:函数(字)未定义。

即使我试图将其复制到 IDE(运行)中:

还是一样。

我认为这可能是语言版本或其他方面的某些问题。


以上来自“简单方案”,当我在 SICP 中准确介绍代码时:

IDE 返回sqrt-iter未定义。代码见第一章: http: //mitpress.mit.edu/sicp/code/index.html

0 投票
1 回答
62 浏览

scheme - Mac OS X 10.5.8 上的 Racket 6.2

有人可以告诉我 Racket 6.2(包括 Dr.Racket)的预构建二进制文件是否可以在 OS X 10.5.8 上运行?

0 投票
0 回答
885 浏览

racket - 如何从 DrRacket 恢复已删除的球拍文件?

我最近(昨天)完成了一个相当大的项目,加起来将近 2300 行代码。这一切都在使用 Dr.Racket IDE 进行。我保存了这个项目,关闭了我的笔记本电脑,继续我的一天。后来,我打开笔记本电脑,在项目中添加了一些东西,没有保存,然后合上了笔记本电脑的盖子。进入休眠模式。

我再次打开我的笔记本电脑以实际提交作业,因为它是那天晚上到期的,但发现它已经关闭了。我不知道它为什么会关闭,因为我当然没有关闭它……也许电池电量不足。我打开它,登录和一切,我发现 Racket 博士告诉我它有我可以恢复的项目。我很高兴,点击了按钮,然后它给了我一个错误,说它找不到我的项目。

在拼命搜索我的项目 30 分钟后跳到。我确定它消失了。它完全消失了...... 100%。只是..

我要求某种解释。也许不是一个解决方案,因为我知道那些只是......不太可能。但我想知道你们中是否有人知道它是如何消失的。我检查了回收站、tmp 文件,老实说,我检查了它所在的文件夹以及笔记本电脑中的所有其他文件夹。只是..

0 投票
1 回答
107 浏览

scheme - 显示错误,在球拍中创建编程语言

我正在 Racket 中创建一种编程语言,我目前正在使用 ragg,我正在阅读 Danny Yoo Guide Danny Yoo Ragg的指南,我定义了一个语法,例如

我通过传递标记来使用函数解析,

我知道该函数生成了一个我不知道那是什么的语法对象。

如果我传递一些像这样的无效令牌

它会产生这样的错误

我想知道它是如何产生错误的,例如,对于输出显示“错误:缺少括号”的前一种情况,以及可能发生的每个错误。

注意:比如我用的是简单的语法,但实际上,我原来的语法是Java之类的语言

0 投票
1 回答
105 浏览

scheme - LISP 子句 for 和子句 let ¿why?,使用 ragg 在球拍中制作编程语言

我一直在试图找到错误,我正在做一种编程语言并有下一个代码,使用 ragg,我有一个语法对象(resto ...),它有一个括号作为数据,我转换这个语法 -反对一个数据:

输出是:

但如果我这样做

输出是:

我的问题: ¿ 为什么 LET 的 IF 是错误的?¿ 我可以比较这两种类型,如果没有 FOR,结果是否正确?

关于函数的文档:

语法->数据

0 投票
2 回答
5369 浏览

autocomplete - Racket 博士有自动完成功能吗?

我通常使用 Sublime 文本编辑器和 gnome 终端来编辑和运行我的程序。出于教育目的,我正在使用 IDE Dr. Racket。

我在打字时找不到要使用的自动完成功能。我在谷歌和 Racket 博士的菜单上查看了这个。

例如,如果我正在调用一个已经定义的函数,我想加快输入函数名称的过程。我曾尝试使用control+ /,但它不能作为已定义变量和过程的自动完成。


编辑

@Sylwester,看,我用之前定义的名为 square 的函数进行了尝试。那没起效:在此处输入图像描述

0 投票
1 回答
70 浏览

debugging - 如何调试迭代程序?

我将 Racket 和 Racket 博士用于教育目的(学习 SICP 书)。Dr. Racket 很棒,它有一个很棒的工具,叫做“trace”。

使用后:

可以看到递归过程中发生了什么。

但是,此功能不适用于迭代过程。我希望我能“看到”我的代码在执行时发生了什么。我希望我能看到状态变量值的变化。

是否有替代工具或实践可以在迭代过程中获得此类信息?

0 投票
1 回答
108 浏览

unit-testing - 对 Racket 中的过程使用单元测试

如果我打电话给 Racket/Dr. 拍下以下代码:

我得到:

如果我使用一个名为 rackunit 的单元测试库,我试试这个:

测试失败并出现语法错误:

为什么会这样?

0 投票
0 回答
150 浏览

functional-programming - Dr.Racket 中这个 Lazy 脚本出现语法错误的原因是什么?

我有这个非常简单的脚本文件 test.rkt ,它试图定义一个名为pair的构造:

语法检查器给我错误:

括号看起来不错。所以这个错误对我来说相当神秘。到底出了什么问题?

编辑:关闭 Dr.Racket 并重新启动后,错误消失了。真的很奇怪。

我真的很想了解那个错误的含义。所以下次它弹出时我可以立即开始调试,即使它是 Dr.racket 中的一个错误。

0 投票
0 回答
68 浏览

database - 有没有办法在 DrRacket 中制作一个简单的图表?

我一直在网上寻找答案,但我发现的只是绘制点和创建图表的方法。我受到这个健身追踪器的启发(https://www.reddit.com/r/Racket/comments/5ywuf8/my_hobby_project_in_racket_a_fitness_activity/)我正在尝试制作一个跟踪餐厅食物的应用程序。所以,例如,

我想将信息放入图表中,稍后将其转换为收到的食物图表。有任何想法吗?如果您能向我指出如何执行此操作的来源或文档,那就太好了。我还想知道是否有办法创建一个很好的 gui 来接受用户的输入。谢谢!