我在定义一个与Racket中的拉链功能相同的功能时遇到了麻烦.到目前为止我有这个:
(define (zipper lst1 lst2)
(match* [lst1 lst2]
[{'()'()} '()]
[{(cons hd1 tl1) (cons hd2 tl2)}
(cons (list hd1 d2)
(zipper tl1 tl2))]))
Run Code Online (Sandbox Code Playgroud)
谁能解释我在哪里出错了.我希望它看起来像这样:
> (zipper '(1 2 3 4) '(a b c d))
'((1 a) (2 b) (3 c) (4 d))
Run Code Online (Sandbox Code Playgroud) 我正在尝试将函数定义为参数,然后将数字传递给该函数.它应该如下所示:
> (function-3 sqrt)
1.7320508075688772
Run Code Online (Sandbox Code Playgroud)
我只是想把函数-3定义为等于3,但它似乎不起作用......这就是我到目前为止所做的:
(define function-3
(? (x)
(3)))
Run Code Online (Sandbox Code Playgroud)
我不知道我是否正在思考正确的道路......但如果有人能够指出我正确的方向,那就太棒了.谢谢
racket ×2