首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我想在Scheme48中定义一个记录

我想在Scheme48中定义一个记录
EN

Stack Overflow用户
提问于 2013-02-18 00:23:44
回答 1查看 167关注 0票数 3

我在scheme48中尝试了一个定义记录类型的例子,它似乎不起作用。怎么了?

代码语言:javascript
复制
(define-record-type circle
 (make-circle r)
 circle?
 (r get-radius))

给出

代码语言:javascript
复制
Error: undefined variable
   circle
   (package user)

我试过其他例子,也得到了类似的结果。我甚至直接从scheme48用户手册中尝试了一个示例。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-18 00:38:13

manual中声明record是这样定义的:

代码语言:javascript
复制
(define-record-type tag type-name
  (constructor-name field-tag ...)
  predicate-name
  (field-tag accessor-name [modifier-name])
  ...)

因此,在您的示例中,似乎缺少type-name。试试这个:

代码语言:javascript
复制
(define-record-type circle :circle
  (make-circle r)
  circle?
  (r get-radius))

别忘了先导入库:

代码语言:javascript
复制
,open define-record-types
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14923226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档