Racket是Lisp / Scheme系列中可扩展的多范式编程语言。
Typed Racket 的 Rec 类型是创建递归类型的简单方法: #lang 类型/球拍/底座 (define (deep (n : Integer)) : (Rec T (U Integer (List T))) (如果(零?n) n (列表(深(- n 1)))...
如何将`VectorTop`的出现类型与向量的元素类型结合起来?
这是我无法进行类型检查的函数的最小示例: (: int 序列到向量 ((整数序列) -> (整数向量))) (定义(整数序列到向量 seq) (条件 [(
几天前,我开始阅读Scheme中的延续和分隔延续控制运算符(我正在racket中工作,但使用方案延续)。在这种情况下,我正在尝试转变/...
为什么我输入的球拍代码发出any-wrap/c: 预计违反合同:非循环值的信号?
在我的 Typed Racket 程序中,我看到此错误: any-wrap/c:违反合同 预期:非循环值 给定:#0=(foo #0#) 论据位置:第一 其他论点...: 这可能是什么原因造成的
为什么在SICP中可以看到看似无用的局部变量表达式求值?不同的Scheme实现表现不同
SICP 的创建账户代码中的存款和取款程序都有看似无用的余额变量表达式来计算, 这样做的实际目的是什么? (对我来说...
racket:像 python 的 numpy 一样 O(1) 数组索引?
我在 python 中使用图片数组(2 维数组)和模型(3 维数组)数据来构建 3 维人体模型。我想用 Lisp 重写代码,具体...
使用 Emacs 球拍模式(使用 C-c C-z)加载球拍文件 (.rkt) 时,有时会出现以下错误。这是在 Ubuntu 22.04 LTS 上使用racket 8.6、Emacs 28。 引用变量...
Racket 中 `some-struct?` 和 `#<some-struct>` 有什么区别?
我有一个结构 (struct client-sock-addr (主机端口)) 我有一个 toText 函数 (定义(toText.v1 地址) (字符串->分块字符串(格式“”(客户端袜子...
我在这段代码上遇到了严重的语法错误 (定义类型 OE [组 (expr1 OE?) (expr2 OE?)] [依次 (expr1 OE?) (expr2 OE?)] [一起 (expr1 OE?) (expr2 OE?)] [加入 (expr1 O...
我正在尝试在 DrRacket 中创建一个函数来评估二十一点玩家的手牌。然而,当我使用以下代码时: (定义(eval-hand 手) (让([numAces 0] [ttl 0]) (对于/列出([...
我安装了DrRacket,完整版不是最小版,但我没有软件包。 当我运行这段代码时: #郎球拍 (提供(全部定义输出)) (需要有声音) (打叮) 它给了我...
我使用 VSCode 作为我的球拍 IDE,虽然所有代码都可以编译,但所有缩进功能都不起作用。 我已经安装了各种球拍扩展(Magic Racket 等),所以代码是...
Typed/Racket - 我如何使这个功能工作,不断收到 TypeChecker 错误
有 (: f (-> 过程 (整数对 整数) 布尔值)) (定义(f 比较器对) (比较器(第一对)(第二对))) 在TypedRacket中,我怎样才能使这个功能起作用?
这个有效 #郎球拍 (语法开始 (定义(foo n) (+ n 3))) 所以我也希望这能起作用 #lang 键入/球拍 (: foo : 真实 -> 真实) (定义语法(foo n) (+ n 3)) ...
我正在尝试学习类型化方案/球拍(?)。下面是我的代码中的一个示例: #lang 键入/球拍 (: 添加 (真实真实 -> 真实)) (定义(添加 x y) (+xy)) 我想实施一个
我正在尝试将项目从球拍转换为类型球拍,但由于测试引擎的原因,我在工作代码中遇到了错误。 我已将其缩减为我能编写的最小代码...
我正在尝试将项目从 Racket 转换为 Typed Racket,但在打字机制方面遇到了一些问题。 string->number 返回(U Complex False),但我找不到任何过程...
#郎球拍 (定义(教会化 e) ;;将输入语言中的表达式转换为教会编码的表达式 (匹配 e [(letrec ([x val] ...) 主体) (定义扩展绑定 (一个...
在 Racket 中,我正在尝试使用 s-exp 来构建一种新语言。所以构建 if 语句的宏是: (定义语法(buildif stx) (语法-case stx () ;分裂身体(stx)并分裂成pa...