25得票1回答
Scheme和Racket的#lang指令之间的区别

我猜想 #lang racket 是 Scheme 的一种方言,有更多预设的结构和常用函数,或许更适合教学。相比 #lang scheme,#lang racket 有哪些优势呢? 使用 #lang scheme 在 racket 中,是否最好(甚至可行)来跟进《计算机程序的构造和解释》或者...

13得票4回答
如何使用Lisp制作GUI:DrScheme或Common Lisp

创建GUI需要做的基本工作是什么?我了解GUI的基本组件,但不知从何处开始。我是一个自学者,正在阅读《如何设计程序》(HtDP)。在书的结尾,作者建议程序员需要了解GUI和CGI计算机网络的知识。关于最后两个方面的信息很容易找到。但是好像很少有书籍谈到如何创建GUI。我猜想这可能是因为在计算机...

12得票4回答
递归与累加器风格的性能比较

我们有两个计算给定数字阶乘的函数。第一个函数 ! 使用累加器风格。第二个函数 fact 使用自然递归。 (define (! n0) (local (;; accumulator is the product of all natural numbers in [n0, n) ...

11得票1回答
Racket中的模块重叠导入

我想在Racket中加载并对图片进行动画处理。在Dr. Racket中这很容易实现,但我正在使用带有Geiser的Emacs。为了加载图片,我需要:(require racket/draw) 接下来,为了将这张图片绘制到屏幕上,我打算使用 big-bang 模块。要加载此模块,我需要执行以下步...

9得票1回答
极度缓慢(在“如何设计程序-初学者”语言中执行“(+ 1 1)”需要超过十秒钟)

我刚刚安装了DrRacket,并尝试使用“如何设计程序-入门学生”语言。 Racket - 一种可编程的编程语言 Racket - 入门指南 当我运行(+ 1 1)时,它需要超过十秒才能显示出结果: Welcome to DrRacket, version 6.5 [3m]. Lang...

7得票2回答
如何在REPL中设置语言为htdp/bsl

我有以下 htdp/bsl 程序,保存为 example.rkt: #lang htdp/bsl (+ 1 1) 当使用racket example.rkt运行上述代码时,输出结果如预期的那样(即2)。 但是,当我尝试以htdp/bsl作为语言启动REPL(racket -I htdp...

7得票5回答
如何在DrRacket中执行幂集?

我正在使用DrRacket的简写列表语言,并想要递归地生成幂集,但无法弄清如何实现。目前我只有这么多: (define (powerset aL) (cond [(empty? aL) (list)] 需要任何帮助都可以。

7得票1回答
在Racket源代码中选择学生语言

我正在尝试编写一个源文件,以指定设计程序教学语言中的一种语言,并让DrRacket自动识别该语言。我知道可以在DrRacket菜单中选择这样的语言,但我想使用#lang指令来指定它。可是我找不到有关在初始行中需要使用哪些字符串来替代racket的任何文档说明。请参考Racket文档。 #la...