给定函数的框架:
(define gen-hash-division-method (lambda (size)))以及:
(define hash-1 (gen-hash-division-method 701))我所编码的内容:
(define gen-hash-division-method
(lambda (size)
(lambda (w)
(modulo key(flip(w)) size))))key(flip(w))获取一个列表w并返回一个整数。
并呼叫:
(hash-1 '(h e l l o))我一直收到这个错误:
procedure application: expected procedure, given: (h e l l o) (no arguments) 发布于 2013-04-15 09:21:19
你得到这个错误是因为在Scheme中,(w)期望w是一个函数。但是w只是一个符号列表。
在您的例子中,您使用的是key(flip(w)),这在Scheme land中没有意义。
每一项都用括号括起来。
你想要(key (flip w))
记住lisp的咒语:(function args ...)
https://stackoverflow.com/questions/16006167
复制相似问题