我正在尝试从定义类的文档中运行此代码:
#lang racket/class
(define book-class%
(class object%
(field (pages 5))
(define/public (letters)
(* pages 500))
(super-new)))
当我尝试运行它时出现错误:
欢迎使用 DrRacket,版本 8.15 [cs]。语言:从源确定语言;内存限制:128 MB。standard-module-name-resolver:未找到模块路径的集合:racket/class/lang/reader
集合:“racket/class/lang”在集合目录中:
/home/bert/snap/racket/26/.local/share/racket/8.15/collects
/snap/racket/current/usr/share/racket/collects/... [166 个附加链接和包目录] 没有可用的包建议。[更新目录]交互已禁用。
我最初是从 snap 命令安装的,但后来从他们网站的 shell 脚本安装了它,因为我无法让 Help->Racket 文档在原始安装下显示。但出现此错误后,我尝试删除 shell 安装(位于您的 $HOME 目录中),现在我的安装来自 Ubuntu 软件应用程序。
我单击了上述错误消息中的 [更新目录],它会在 pkgs.racket-lang.org 上检查更新,但更新/检查后错误仍然存在。
我刚刚在OneCompiler 在线 Racket 编译器上测试了这一点。您的代码给出了与您报告的相同错误。但如果我将第一行更改为,
#lang racket
一切似乎都正常。所以我会尝试更改第一行。