mzlib / etc的身份如何运作?

时间:2012-08-28 07:55:19

标签: racket

在一个web program中,代码片段如下:


(require mzlib/etc)
(define (h-handler base args)
 (do-h identity))

(define (do-h cont)
  [begin
    (printf "~e\n" cont)
  (web-read/k "First number"
              (lambda (v1)
                (web-read/k "Second number"
                            (lambda (v2)
                              (cont (number->string (+ v1 v2)))))))])

2 个答案:

答案 0 :(得分:2)

identity只是一个函数的名称,它接受一个参数并返回该参数。它的工作原理如下:

> (identity 4)
4
> (identity "hello world")
"hello world"

答案 1 :(得分:2)

即使它尚未实现,identity代码也很简单:

(define (identity x) x)