如何将两个过程合二为一?

2024-01-23

只是想知道是否有一种语法快捷方式可以获取两个过程并将它们连接起来,以便将一个过程的输出传递给另一个过程,相当于:

a = ->(x) { x + 1 }
b = ->(x) { x * 10 }
c = ->(x) { b.( a.( x ) ) }

当处理诸如此类的事情时,这会派上用场method(:abc).to_proc and :xyz.to_proc


多加点糖,在生产代码中并不真正推荐

class Proc
  def *(other)
    ->(*args) { self[*other[*args]] }
  end
end

a = ->(x){x+1}
b = ->(x){x*10}
c = b*a
c.call(1) #=> 20
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将两个过程合二为一? 的相关文章

随机推荐

  • 为什么即使在配置之后 Git 也不允许我提交?

    这个问题看起来像是重复的 但事实并非如此 只是一个不断重复的细微差别 git 不断告诉我 请告诉我你是谁 即使在设置之后也是如此 当我跑步时git commit 这就是我得到的 git commit Please tell me who y
  • 我可以使用 JQuery 从 web.config 读取数据吗?

    我可以使用 JQuery 从 web config 读取数据吗 Jquery 是在浏览器中运行的 javascript 您的 web config 驻留在您的服务器上 如果您想公开 web config 中的数据 我认为您应该创建某种可以从
  • 编译错误:“stoi”不是“std”的成员

    My code include
  • Perl 6 中的递归正则表达式?

    我一直在试图弄清楚如何在 Perl 6 中执行递归正则表达式 对于一个玩具示例 平衡括号匹配器 它将匹配 inside PCRE https regex101 com r otEKh5 1例子 R Onigmo https rubular
  • 拖放图像

    我需要在 swing 中创建一个拖放系统 其中被拖动物体的图像在拖动过程中附加到光标上 理论上这是可以实现的 public Icon TransferHandler getVisualRepresentation Transferable
  • Altair - 无法获取折线图中某一层的工具提示

    当我绘制由两组线组成的分层图表时 某一层中的工具提示不显示 这也发生在 VL 编辑器中 任何有关为什么会发生这种情况的见解都将不胜感激 这是一个可重现的示例来演示该问题 实际上我在第一层有更多行 牛郎星版本 4 0 0 df pd Data
  • 如何删除 php 字符串中的%符号

    我需要从目录中的文件或图像名称中删除 符号 我使用哪个字符串 oldfile wallpapers temp uploaded file newfile wallpapers temp uploaded trim str replace f
  • 记录还是不记录?

    我现在正在构建一个程序 它是一个电子书管理器 阅读器 组织者和出版商 这也是一个电子书传输 到像 Kindle 这样的电子阅读器 但我正在开发它 一个问题突然出现在我的脑海中 日志或不 然后我开始考虑日志 由于许多程序都会记录操作 我开始寻
  • 使用Python os.walk来识别文件列表[重复]

    这个问题在这里已经有答案了 可能的重复 在Python中 在具有特定扩展名的目录中构建文件列表的最快方法 https stackoverflow com questions 8625908 in python fastest way to
  • 用于 C# 的 SCIM(跨域身份管理系统)库

    SCIM 标准的创建是为了通过定义表示用户和组的架构以及用于所有必要的 CRUD 操作的 REST API 来简化云中的用户管理 它旨在取代旧的 SPML 协议 有没有 成熟 的 C 库 我在 google 上搜索的大部分内容都是针对 Ja
  • 错误:ld.so:无法预加载对象 LD_PRELOAD:忽略

    我使用的是ubuntu 12 04 每次我启动 bash 终端以及每次输入完命令 并按 Enter 键 时 我都会收到以下消息 错误 ld so 对象 usr lib liblunar calendar preload so 来自 LD P
  • 将弹出窗口位置锁定到元素,或伪造带有图层的弹出窗口,以便在 ItemsControl 中进行就地编辑

    我想要实现的本质上是对数据绑定对象进行就地编辑ItemsControl在 wpf 中 my ItemsControl是一个水平的WrapPanel包含用户控件的多个实例 NameControl 它显示为带有人名的粉红色小字形 看起来像这样
  • C# REPL 工具;类似控制台的快速编译工具

    很多时候 我启动一个新的 Visual Studio 实例 只是为了创建一个具有一些输出和 或输入的控制台应用程序 这是一个临时沙箱 我用它来测试方法或其他东西 并在几分钟后关闭 您能想到任何工具来替代它吗 我曾经有一个具有两个文本字段的应
  • Model.find().then() 在实际加载记录之前触发

    我想加载整个集合 然后只剥离记录以一次用作模型 而不是每次都与服务器进行往返 我已经弄清楚如何使用 Ember Deferred 返回承诺 但我无法在正确的时间得到解决的承诺 以下代码每次都只输出 Found 0 App PersonRou
  • watir-webdriver 在保持浏览器打开的情况下更改代理

    我正在 Ruby 中使用 Watir Webdriver 库来检查一些页面 我知道我可以使用代理通过代理连接 profile Selenium WebDriver Firefox Profile new create a new profi
  • numpy 矩阵到 pandas 系列

    这是一个简单的问题 我有一个 numpy 矩阵 A 我想将其转换为数据帧 系列 中的列 保留矩阵的多重索引 我的意思是 矩阵中的 i j 位置将转换为 pandas 中的 i j 行索引 In 68 A np array 1 2 3 4 拿
  • 在开源项目中包含 Highcharts [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想包括高图表 http www highcharts com 开源项目中的库 scala笔记本 https github com Ole
  • 如何将多个 *.zip 存档文件解压缩到单独的文件夹中?

    我用 Google 搜索 但没有找到适用于 Windows 的内容 如何将多个文件提取到多个文件夹中 例如 a zip b zip and c zip进入文件夹a b and c 我正在寻找命令提示符命令或批处理文件解决方案 Thanks
  • 我可以在界面生成器中为 NSTextField 的文本添加下划线吗?

    我可以在界面生成器中为 NSTextField 的文本添加下划线吗 到目前为止 我只能改变它的颜色 有没有办法加下划线 thanks 仅适用于 iOS 是的 设置属性文本 然后选择文本 单击鼠标右键 gt 字体 gt 下划线
  • 如何将两个过程合二为一?

    只是想知道是否有一种语法快捷方式可以获取两个过程并将它们连接起来 以便将一个过程的输出传递给另一个过程 相当于 a gt x x 1 b gt x x 10 c gt x b a x 当处理诸如此类的事情时 这会派上用场method abc