如何在elisp中递归地传递函数?

捷运

我目前正在努力使用该函数来过滤值。

(defun filter (operator val sequence)        
    (if (funcall operator val (first sequence)) 
        (filter (function operator) val (rest sequence))
        (cons (list (first sequence)) 
           (filter (function operator) val (rest sequence)))))

调用此函数

(filter (function >) 6 '(5 6))

*** Eval error ***  Symbol's function definition is void: operator

不过,此代码片段效果不错。

(defun example (lhs rhs operator)
  (funcall operator lhs rhs))

(example 4 5 (function +))

=> 9

我的猜测是该函数会忘记最初使用哪个函数,但是我不知道出了什么问题,朝正确方向的一些指针将不胜感激!

甲肾上腺素

错误消息Symbol's function definition is void: operator引用此行:

        (filter (function operator) val (rest sequence))

您正在尝试访问一个名为函数operator,该函数不存在,因为operator它只是一个函数参数(普通变量)。(此参数碰巧绑定到函数值,但这无关紧要。)

这应该解决它:

        (filter operator val (rest sequence))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在AngularJS的递归指令中传递函数引用?

来自分类Dev

如何在C中传递函数多维char数组?

来自分类Dev

如何在python中传递函数的值?

来自分类Dev

如何在C中传递函数多维char数组?

来自分类Dev

如何在Powershell CLI中传递函数参数?

来自分类Dev

安全地在flutter中传递函数作为参数

来自分类Dev

Python:传递函数并递归调用

来自分类Dev

如何在Java 8中以流groupby传递函数参数

来自分类Dev

如何在Eigen中实现高性能的分段线性传递函数?

来自分类Dev

如何在Eigen中实现高性能的分段线性传递函数?

来自分类Dev

如何在Matlab / Simulink中获得未知系统的传递函数(近似值)?

来自分类Dev

如何在Matlab中获得以下传递函数

来自分类Dev

如何在python中模拟一个传递函数的一步

来自分类Dev

BigInteger如何传递函数

来自分类Dev

如何在不使用 & 的情况下传递函数

来自分类Dev

如何在 React 的上下文中传递函数?

来自分类Dev

Scala中的传递函数

来自分类Dev

在nim中传递函数

来自分类Dev

在C中传递函数还是传递函数指针?

来自分类Dev

如何从Simulink模型获取传递函数到Matlab中

来自分类Dev

如何通过字典键值对中的参数传递函数

来自分类Dev

在汇编中调用符号时如何传递函数参数?

来自分类Dev

在函数调用中传递函数的变量

来自分类Dev

如何通过引用传递函数?

来自分类Dev

如何传递函数选择查询的输出

来自分类Dev

如何传递函数的对象和属性

来自分类Dev

如何使用 React Hooks 传递函数?

来自分类Dev

如何传递函数指针进行绑定?

来自分类Dev

在python中传递函数作为参数