菜鸟 Racket 问题。我在这本书中使用 Krishnamurthi 的 PLAI 教科书以及相关的 Racket 编程语言。
现在,假设我有一个定义的类型:
(define-type Thingy
[thingy (num number?)])
那么,在什么情况下我可以让这个东西接受一个空列表'()
?
最佳答案
空列表不是数字,因此您拥有的类型定义不会接受它。
您可以使用 (lambda (x) (or (number? x) (null? x)))
而不是 number?
来接受数字或空列表,但我不知道你为什么要这样做。
关于syntax - 将空列表传递给定义类型 : possible?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7465763/