Scheme DrRacket有什么问题,无法引用未定义的标识符

Scheme DrRacket有什么问题,无法引用未定义的标识符,scheme,racket,Scheme,Racket,我定义了一个非常简单的函数“imap”。它接收两个参数并显示第一个参数。但看看会发生什么奇怪的事情: 这些定义都是一样的。我只是更改参数的名称! 为什么有些表格不起作用 实施:R5R的drRacket 这是源代码。 第一个是工作良好: > (define (imap x y) (display x)) > (imap 3 4) 3 > (imap + (list 1 2 3)) #<procedure:+> 继续: > (define (imap y x)

我定义了一个非常简单的函数“imap”。它接收两个参数并显示第一个参数。但看看会发生什么奇怪的事情:

这些定义都是一样的。我只是更改参数的名称! 为什么有些表格不起作用

实施:R5R的drRacket

这是源代码。 第一个是工作良好:

> (define (imap x y) (display x))
> (imap 3 4)
3
> (imap + (list 1 2 3))
#<procedure:+>
继续:

> (define (imap y x) (dislay y))
> (imap + (list 1 2 3))
. . dislay: undefined;
 cannot reference undefined identifier
继续,回到与第一个定义相同的位置:

> (define (imap x y) (dislay x))
> (imap + (list 1 2 3))
. . dislay: undefined;
 cannot reference undefined identifier
>

这是个打字错误!您编写了
dislay
,但显示的
不正确。错误消息明确指出:

dislay: undefined;
cannot reference undefined identifier

@别担心,你不是傻瓜,你只是累了。也许现在是休息一下的好时机;)@ÓscarLópez睡眠只是咖啡的糟糕替代品;)
dislay: undefined;
cannot reference undefined identifier