Filter 在鸡肉方案中过滤未绑定。为什么?

Filter 在鸡肉方案中过滤未绑定。为什么?,filter,scheme,chicken-scheme,Filter,Scheme,Chicken Scheme,我从鸡肉计划开始。下面的代码在mit scheme repl中起作用,但在csi中不起作用。csi在文档中定义了过滤器,但是当我运行下面的代码时,我得到了一个未绑定的变量错误 CHICKEN (c) 2008-2015, The CHICKEN Team (c) 2000-2007, Felix L. Winkelmann Version 4.10.0 (rev b259631) macosx-unix-clang-x86-64 [ 64bit manyargs dload ptable

我从鸡肉计划开始。下面的代码在mit scheme repl中起作用,但在csi中不起作用。csi在文档中定义了过滤器,但是当我运行下面的代码时,我得到了一个未绑定的变量错误

    CHICKEN
(c) 2008-2015, The CHICKEN Team
(c) 2000-2007, Felix L. Winkelmann
Version 4.10.0 (rev b259631)
macosx-unix-clang-x86-64 [ 64bit manyargs dload ptables ]
compiled 2015-08-04 on yves.more-magic.net (Linux)

#;1> (filter odd? '(1 2 3 ))

Error: unbound variable: filter

    Call history:

    <syntax>          (filter odd? (quote (1 2 3)))
    <syntax>          (quote (1 2 3))
    <syntax>          (##core#quote (1 2 3))
    <eval>    (filter odd? (quote (1 2 3))) <--
#;1>
鸡肉
(c) 2008-2015年,鸡队
(c) 2000-2007年,费利克斯·L·温克尔曼
版本4.10.0(版本b259631)
macosx-unix-clang-x86-64[64位多字节数据加载ptables]
在yves.more-magic.net(Linux)上编译2015-08-04
#;1> (过滤奇数?'(1 2 3))
错误:未绑定变量:筛选器
通话记录:
(过滤奇数?(引用(1 2 3)))
(引文(1、2、3))
(###核心#引号(1 2 3))
(过滤奇数?(引用(1 2 3)))

不确定您指的是哪个
过滤器
过程,但文档上列出的
过滤器
似乎只有在宏展开时才可用:

可以在运行时使用的是在SRFI-1库中定义的。要使用它,只需添加以下内容:


(使用srfi-1)

过滤器在中定义,因此您必须首先加载该模块以使其可用:

CHICKEN
(c) 2008-2014, The Chicken Team
(c) 2000-2007, Felix L. Winkelmann
Version 4.9.0.1 (stability/4.9.0) (rev 8b3189b)
linux-unix-gnu-x86-64 [ 64bit manyargs dload ptables ]
bootstrapped 2014-06-07

#;1> (use srfi-1)
; loading /var/lib//chicken/7/srfi-1.import.so ...
; loading library srfi-1 ...
#;2> (filter odd? '(1 2 3 ))
(1 3)
#;3>