Clojure:序列、映射和;“当前编号/索引”;问题
我处理目录中的所有文件,例如:Clojure:序列、映射和;“当前编号/索引”;问题,clojure,Clojure,我处理目录中的所有文件,例如: (map file-handler files) 文件处理程序的唯一参数自然是文件对象。我想知道文件处理程序中文件序列的当前“索引”。到目前为止,我能看到的唯一解决方案是在词法闭包中创建一个计数器,在文件处理程序中可见,并在每个步骤中递增它。完全可行,但不太像clojurelike。是否有一种纯函数式的方法来管理它?map接受一个或多个参数 (map file-handler (range) files) 这也有一个捷径 (map-indexed file-h
(map file-handler files)
文件处理程序的唯一参数自然是文件对象。我想知道文件处理程序中文件序列的当前“索引”。到目前为止,我能看到的唯一解决方案是在词法闭包中创建一个计数器,在文件处理程序中可见,并在每个步骤中递增它。完全可行,但不太像clojurelike。是否有一种纯函数式的方法来管理它?map接受一个或多个参数
(map file-handler (range) files)
这也有一个捷径
(map-indexed file-handler files)
这将需要更新文件处理程序以获取2个参数,或者生成一个包装函数以获取索引和文件并调用文件处理程序。map获取1个或多个参数
(map file-handler (range) files)
这也有一个捷径
(map-indexed file-handler files)
这将需要更新文件处理程序以获取2个参数,或者生成一个包装函数以获取索引和文件并调用文件处理程序。map获取1个或多个参数
(map file-handler (range) files)
这也有一个捷径
(map-indexed file-handler files)
这将需要更新文件处理程序以获取2个参数,或者生成一个包装函数以获取索引和文件并调用文件处理程序。map获取1个或多个参数
(map file-handler (range) files)
这也有一个捷径
(map-indexed file-handler files)
这将需要更新文件处理程序以获取2个参数,或者生成一个包装函数以获取索引和文件并调用文件处理程序。非常感谢,noisesmith!忽略了RTFM部分,真丢脸。作为一般原则,在函数编程中,您可以接受任何有状态变量,并将其转换为向前传递的不可变函数参数。非常感谢,noisesmith!忽略了RTFM部分,真丢脸。作为一般原则,在函数编程中,您可以接受任何有状态变量,并将其转换为向前传递的不可变函数参数。非常感谢,noisesmith!忽略了RTFM部分,真丢脸。作为一般原则,在函数编程中,您可以接受任何有状态变量,并将其转换为向前传递的不可变函数参数。非常感谢,noisesmith!忽略了RTFM部分,真丢脸。作为一般原则,在函数式编程中,您可以获取任何有状态变量,并将其转换为向前传递的不可变函数参数。通常在FP中,您不需要索引,即使您认为需要索引。如果你按照@noisesmith所说的那样做,那么一般的原则是通过递归传递“变异”值作为参数之一,例如,在FP中,
fold
和reduce
,结果证明,即使你认为你需要索引,你也不需要索引。如果你按照@noisesmith所说的那样做,那么一般的原则是通过递归传递“变异”值作为参数之一,例如,在FP中,fold
和reduce
,结果证明,即使你认为你需要索引,你也不需要索引。如果你按照@noisesmith所说的那样做,那么一般的原则是通过递归传递“变异”值作为参数之一,例如,在FP中,fold
和reduce
,结果证明,即使你认为你需要索引,你也不需要索引。如果您按照@noisesmith所说的那样做,那么一般原则是将“mutating”值作为参数之一通过递归传递,例如fold
和reduce