如何检查变量/参数是否是球拍中的函数

时间:2017-12-03 19:13:38

标签: function variables parameters racket

我希望有人可以帮助我。

我需要找到一种方法来检查给定的参数/变量是否是一个函数(函数意味着类似*或+或expt,我之后可以在两个数字上使用的东西,如:(* 5 6))in球拍。

2 个答案:

答案 0 :(得分:1)

您可以使用procedure?see the manual):

  

(procedure?v)→boolean?

     

v:any / c

     

如果v是一个过程,则返回#t,否则返回#f。

> (procedure? +)
#t

答案 1 :(得分:1)

procedure?这样做:

Welcome to Racket v6.11.
> (procedure? +)
#t
> (define x 1)
> (procedure? x)
#f
> (define y (lambda () 1))
> (procedure? y)
#t