"扭转"J中的一个钩子

lig*_*ike 5 j

我想把把大于2的列表中的所有项目的操作放入J中的无意义(如未明确地捕获变量中的参数)函数中.我想通过使用~钩子来做这个,比如f =: ((> & 2) #)~但似乎既不是也不行((> & 2) #~).

我的理由是,我的函数的形式(f y) g y,其中y是列表,f(> & 2)g#.我将不胜感激任何帮助!

Eel*_*vex 7

一切都没关系,除了你混合了钩子的顺序.这是y f (g y)你想要的

 (#~ (>&2)) y
Run Code Online (Sandbox Code Playgroud)

  • 这种用于复制的过滤器模式在J中很常见.当我看到##`出现在钩子的左边时,我脑海中形成的词语是"复制在哪里".在这种情况下,"复制大于两个." (2认同)