transducer相关内容
在新的 clojure 1.7 中,我决定了解可以在哪里使用转换器.我了解它们可以带来什么好处,但我找不到编写带有解释的自定义转换器的正常示例. 好的,我试着测试发生了什么.我打开了 clojure 文档.并且有示例使用 xf 作为参数.第一:这个 xf 或 xfrom 是什么意思?这东西产生了身份转换器. (定义我的身份 [xf](fn([](println "Arity 0.")(xf
..
我想知道是否有办法使用转换器来展平列表并过滤唯一值? 通过链接,很容易: 从 'lodash' 导入 {uniq, flattenDeep};|const arr = [1, 2, [2, 3], [1, [4, 5]]];uniq(flattendDeep(arr));//->[1, 2, 3, 4, 5]
..
实时代码示例 我正在尝试通过const flip = map(([k,v]) => ({[v]: k})); const double = map(([k,v]) => ({[k]: v + v})); seq(flip, {one: 1, two: 2}); /*?*/ {1: 'one', 2: 'two'} seq(double, {one: 1, two: 2}); /*?*/ {'
..
让我们从定义开始:transducer是接受reducer函数并返回reducer函数的函数. A reducer是一个二进制函数,接受一个累加器和一个值,然后返回一个累加器. reducer可以用reduce函数执行(注意:所有函数都经过咖喱处理,但是为了便于阅读,我已经介绍了这以及pipe和compose的定义-您可以在实时演示): const reduce = (reducer,
..
有人可以告诉我什么是有限状态传感器吗? 我已阅读 Wikipedia文章,但一无所知. 解决方案 有限状态传感器(FST)是一种有限状态自动机(FSA,FA),它可以产生输出并读取输入,这对于解析非常有用. (而“裸" FSA仅可用于识别,即模式匹配). FST由有限数量的状态组成,这些状态由带有输入/输出对标记的转换链接. FST从指定的开始状态开始,并根据输入跳到不同的状态
..
只需跟踪自动机所处的状态及其在输入字符串中的距离,就可以轻松地在输入字符串上模拟不确定的自动机.但是如何模拟不确定的转换器(转换器当然可以将输入符号转换为输出符号,并给出输出字符串而不是布尔值)?似乎这更加复杂,因为我们需要以某种方式跟踪输出字符串,由于不确定性,输出字符串可能会很多. 解决方案 首先,一些理论.以下是不同的代数结构: 发电机(过渡系统) 受体(自动机)
..
我有一个以DOT文件形式保存的传感器.我可以使用gvedit看到图形的图形表示形式,但是如果我想将DOT文件转换为可执行的转换器,该怎么办,以便可以测试转换器并查看它接受什么字符串以及不接受什么字符串. 在我在Openfst,Graphviz及其Python扩展中看到的大多数工具中,DOT文件仅用于创建图形表示,但是如果我想解析该文件以获取可在其中测试的交互式程序,该怎么办?换能器上的弦?
..
我有一个Word文档.我需要使用GATE匹配特定的表部分或标题部分.我想,是否有任何步骤可让我们首先检查标题的任何字体大小或字体样式,然后匹配其余内容,直到重复下一个标题模式. 解决方案 GATE 仅对 Apache Tika 和 Apache POI 库.我不知道有任何免费的替代方案...为此,我们在我的公司中开发了自己的插件(gate.DocumentFormat),但目前无法在外部使
..
我在Haskell中实现了换能器,如下所示: { - #LANGUAGE RankNTypes# - } 导入Prelude隐藏(foldr) 导入Data.Foldable 类型Reducer ba = a - > b - > b 型传感器a b = forall t。减速器t b - > Reducer t a class可折叠c => Collection c其中
..
我一直在想,是否有一种方法可以在Haskell中以惯用方式定义和使用有限状态转换器您可以将FST作为生成器(它会生成{x1,x2}类型的输出),或者作为识别器(给定类型{x1,x2}的输入可以识别它是否属于理性关系),或者作为译者(给定输入磁带,它将其转换为输出磁带)。表达方式是否会根据方法而改变? 也可以通过指定重写规则来建立FST模型吗?例如,创建一个DSL来为重写规则建模,然后创建一个
..
我正在关于 JavaScript中的传感器以及特别是我定义了以下函数 const reducer =(acc,val)=> acc.concat([VAL]); const reduceWith =(reducer,seed,iterable)=> { let accum = seed; for(const value of iterable){ accumulation
..
在此博客条目中,“CSP和JavaScript中的传感器”,作者指出: 首先,我们必须意识到许多数组(或其他集合)操作,如 ,过滤器和 reverse 可以根据 reduce 。 所以然后我们看到 Clojure中的一些实现不是懒惰,他们是渴望的: user> (defn eager-map [f coll] (reduce(fn [acc v](conj acc(fv)))
..
有了新的clojure 1.7,我决定了解在哪里可以使用换能器。我明白他们可以给予什么好处,但是我找不到正确的例子来说明自定义传感器的解释。好吧,我试着测试发生了什么。我打开clojure文档。并且有例子使用 xf 作为参数。第一:什么意思是这个xf或xfrom? 这个东西产生了身份传感器。 (defn my-identity [xf] (fn ([] (println“Arity
..
在使用数组时,经常需要重新中间presentations - 特别是在功能的编程接口,其中的数据一般被当作一成不变的: const的平方= X => X * X; 常量奇= X => (X安培; 1)=== 1; 让XS = [1,2,3,4,5,6,7,8,9];//不必要的中间数组: xs.map(方).filter(奇数); // [1,4,9,16,25,36,49,64,
..