0
我正在製作一個哈希表,它將函數名與它們所代表的過程相關聯。到目前爲止,我有計劃中的程序哈希表
(define *function-table* (make-hash)) (define (f-get key) (hash-ref *function-table* key)) (define (f-put! key value) (hash-set! *function-table* key value)) ;;and then to initialize it with a few functions (for-each (lambda (fn) (f-put! fn (lambda (fn args) ((fn) args)))) (list abs +))
所以我希望它的工作,這樣我可以作出這樣
通話((F-GET +)1 2)
並得到3,但是我得到的當前錯誤是:
申請:不是程序; 預期考慮到可以應用到參數的過程 :我敢肯定,問題是我如何初始化表[無]
:1個 參數...。用drracket檢查,其中的值是程序,但我不知道他們做了什麼,我懷疑這不是我想要他們做的。