无法将地图放入接收器上下文中

2023-12-21

我正在尝试查看在接收器上下文中抛出地图的方法。在这段代码中

class Sunk {
    has $.titanic;
    method sink {
        say "Sinking $!titanic";
    }
}

Sunk.new( :titanic($_) ) for 1..3;

(1..3).map: { Sunk.new( :titanic($_) ) };

The for循环有效地吸收了所有被创建的、map才不是。知道为什么吗?

这个测试在烘焙中:https://github.com/perl6/roast/blob/b9bfe1844db25f65a4aeb351a0107f83689cb5c2/S04-statements/sink.t#L27-L32 https://github.com/perl6/roast/blob/b9bfe1844db25f65a4aeb351a0107f83689cb5c2/S04-statements/sink.t#L27-L32应该作为一个测试。地图实际上是在水槽环境中,但我不明白它是如何“以沉没方式运行”的。它只是运行。


在你的例子中,map返回一个Seq with Sunk里面的物体。整个Seq被沉没,这有效地调用了Seq.iterator.sink-all,这确实not下沉其所有元素:它只是拉动Seq通过调用清空pull-one until IterationEnd被返回。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法将地图放入接收器上下文中 的相关文章

  • 有没有一种简单的方法来检查某个东西是否是 mixin?

    Raku mixins https docs raku org language typesystem Mixins具有两种 或多种 性质 将多个值组合在同一个容器中 或者将值与角色一起组合 然而 据我所知 没有一种直接的方法来检查不是由您
  • 类型的调用者没有这样的方法

    我创建了一个类 其中包含multi函数重载的定义 但是当我尝试调用该类和重载方法时 它会抛出错误 可以运行以产生此错误的工作示例如下所示 class Test multi test data return test data data el
  • perl6如何获取promise的具体身份?

    我正在尝试编写在 Promise 中运行的 3 个 echo 服务器的代码 但我想知道哪个 Promise 正在执行回显 有没有办法做到这一点 no strict for 0 2 gt index result index start my
  • Perl 6 有无限的 Int 吗?

    我有一个任务 我想找到距离目标最近的字符串 因此 编辑距离 而不是同时生成它们 我想我应该使用高水位线技术 我猜是低水位线 同时初始化最近的编辑距离Inf这样任何编辑距离都会更近 use Text Levenshtein my string
  • 使用百分号作为前缀运算符名称的一部分

    我以为 of会比percent of为函数名 这是使用较长名称的工作代码 bin env perl6 Quick stats from gene exp diff file sub percent of return sprintf 1f
  • 了解供应点块(按需供应)

    我无法理解我的目的supply 他们创建的块 按需供应 Live供应 即来自Supplier并在任何时候获得新的值Supplier发出一个值 对我来说很有意义 它们是异步流的一种版本 我可以用它来将消息从一个或多个发送者广播到一个或多个接收
  • 对象创建中的解构赋值

    和我的一样上一个问题 https stackoverflow com questions 69137422 confusing fmt behavior with nested lists 这是一个我无法判断我对 Raku 语义的理解是否遇
  • 检查列表是否为空(Raku)

    常见问题解答 在 Raku 中如何检查列表是否为空 还有比以下更惯用的方法吗 my l say l elems 0 say l say l Bool The 名单上的文档 https docs perl6 org type List推荐智能
  • Raku 中的 (Any) 是什么意思 - 特别是 ()?

    这是 Raku 的一个实验 gt my x Any gt my y 1 1 gt my a 1 2 1 2 gt my h a gt b a gt b gt say nil unless x nil 我理解了 表示数组文字 哈希文字 我也可
  • Perl 6 中有快速并行“for”循环吗?

    给定一些对 1 到 500000 之间的每个数字进行一些数学 转换的代码 我们有选择 简单的for循环 for 500000 gt i my result i 2 Str 在我的不科学基准测试中 这需要 2 8 秒 最规范的并行版本在一个P
  • Perl 6 对象如何找到可能位于父类或角色中的多重方法?

    考虑这个例子 其中子类有一个没有签名的 multi 方法和一个带有 slurpy 参数的方法 class Foo multi method do it put Default multi method do it Int n put Int
  • 使用环境变量构建配置类的更简洁方法?

    我有课Configuration读取环境变量 class Configuration has config string a has config string b has Bool config flag c method new sub
  • 具有类型约束的无符号“变量”是否可以重新绑定? [复制]

    这个问题在这里已经有答案了 EDIT 关闭以支持https stackoverflow com questions 69231506 what are the rules for re binding 这是我在更清楚地理解我在这个问题中想问
  • raku REPL 在 WIndows 8 下的“cygwin”上似乎没有响应

    I have cygwin在 Windows 8 下 我已经安装并运行raku我理解这就是 Perl6 我想打印一些字符串和数字 但是say不做这项工作 请参阅下面的黑色片段 它只是不做任何事情 与此处描述的不同 hynek0 hynek
  • .Bool、.so、? 之间的区别所以

    我试图找出上述例程和 if 语句之间的区别 say y Bool say y so say y say so y 会产生不同的结果 到目前为止 对我来说唯一明显的区别是 优先级高于so Bool and so似乎完全是同义词 这是正确的并且
  • 如何将perl6文件编译为exe

    我正在使用基于 Windows 上 MoarVM 构建的 perl6 版本 我创建了一些 perl6 文件并想将其编译为 exe 我尝试了以下方法 perl6 target MAST r pl gt r 现在我想将 r 编译为可执行文件 我
  • 如何在 Perl 6 中追加到文件?

    我正在尝试这个和其他一些事情 但它每次都会截断文件 my file primes txt sub MAIN Int D low Int D high where gt low unless my fh open file w append
  • Perl 6 可以根据排序规则进行排序或比较吗?

    The cmp操作员 https docs perl6 org language operators infix cmp适用于代码编号 或者至少我认为它是这样做的 因为文档对此没有明确说明 并且没有提及任何本地化内容 我可以按照其他排序规则
  • 对模块进行单元测试时如何模拟导入的子例程

    考虑一个导出连接到互联网并返回结果的子例程的模块 unit module A sub download is export result from internet Not the actual implementation obvious
  • 在采用 ARM 处理器架构的 Android 上安装 Rakudo

    我正在尝试使用 Termux 在采用 armv7l 处理器架构的 Android 上安装 Rakudo 我尝试从源代码编译 但没有成功 然后有人指出了Termux用户没有用 https github com its pointless 和他

随机推荐

  • 将多个 ggplot2 绘图与网格对齐

    Context 我想在同一页面上绘制两个具有相同图例的 ggplot2 http code google com p gridextra wiki arrangeGrob http code google com p gridextra w
  • 为什么 2px 边框在 Firefox 和 Chrome 中渲染的高度高于 2px?

    我正在尝试用两种不同的方式创建一条线 一种是高度为 2px 的 div 和背景 红色 另一个是带有 2px 顶部边框 蓝色 的 div 这是测试代码 line display inline block vertical align top
  • 一个java UDP套接字可以处理多少个请求?

    我需要构建一个 UDP 服务器 它可以处理每秒约 10 000 个请求 从下面的代码开始 测试 java 套接字是否可以处理这些数量的请求 我用大约 9000 个请求轰炸服务器一分钟 Total number of requests sen
  • 使用 Seaborn FacetGrid 设置日期标签格式

    我想制作一个分面网格 以变量名称为列 以部门为行 每个小图表是 y value 和 x date 的散点图 我的数据有点像这样 import pandas as pd import numpy as np import seaborn as
  • 如何使用 jQuery 更改多个元素的样式?

    我有一个 CSS 样式表 其规则如下 h1 h2 h3 h4 contentheading title font size 13px font weight normal font family Arial Geneva Helvetica
  • AsyncValidators 会一直触发吗?

    我正在使用 angular js 1 6 4 版本 我创建了一个用于服务器端验证的指令 我发现它在加载表单时触发 这是错误的 我只想在更改值时触发我的代码 我的 HTML 代码是 div class col xs 6 div class c
  • 在 Android 中将外部缓冲区导入 Vulkan 时出现问题

    我正在尝试使用 Vulkan 在 Android 10 中显示图像 管道看起来像这样 MediaCodec gt ImageReader gt AHardwareBuffer 传递到 Vulkan 上下文 gt 映射到 Vulkan gt
  • 如何更改 Android 上浮动操作按钮 (FAB) 的形状?

    在我们的 Android 应用程序中 我们需要创建一个浮动操作按钮 它不是默认的圆形 而是带有三个圆角的正方形 该晶圆厂如下图所示 我设法创建了这样一个表单 但不知道如何将其应用到我的工厂 或者是否可能 形状的 xml 文件如下所示
  • Jenkins 中的 Gerrit-trigger 插件如何工作?

    我想了解 Jenkins 中的 gerrit trigger 是如何详细工作的 另外 如何调用触发条件的测试 Thanks gerrit 触发器的工作原理如下 它使用 ssh 连接到 gerrit 服务器并使用 gerrit stream
  • 按下按钮时在滚动区域中加载 QTableWidgets

    我有一个名为 test 的方法 它将 3 个单行表加载到滚动条中 然而 由于某种原因 我无法弄清楚 如果我只是在加载时激活 test 它就可以工作 但如果我将其注释掉 然后尝试通过按下按钮来激活它 它就不起作用 这是主模块 带有 test
  • 迭代 *args?

    我正在编写一个脚本 我需要接受多个参数 然后迭代它们以执行操作 我开始定义一个函数并使用 args 到目前为止 我有如下内容 def userInput ItemA ItemB args THIS ItemA THAT ItemB MORE
  • DocumentDb - 嵌套文档和根级别的查询

    提醒我 编辑 删除 变更类型 问题 您不能对自己的帖子进行投票 0 你好 假设我有以下方式的文档 id 123 tags name something 我想查询包含 name searched 标签或 id 9000 的所有文档 我在操场上
  • ajax中的非法调用错误(Jquery 1.7.1)

    我正在尝试使用 jquery 发布 ajax 请求 var peName document getElementById peName value var peSubName document getElementById peSubNam
  • 通过 Visual Studio 进行 C++ 调试 - 向量大小变化的观察点

    我想用我的向量探索这些变化 因此我想在向量大小上设置一个点 因此 Visual Studio 将让我在每次大小更改后查看向量中的内容 我怎样才能做到这一点 在此链接中 http www codeproject com Articles 35
  • C# 如何在 windows xp/7 中禁用屏幕键盘声音

    我有一个在 Windows XP 7 上运行的 C 应用程序 我使用屏幕键盘 启用声音时会出现延迟 从而导致问题 我想禁用声音 如何通过我的 C 应用程序代码禁用声音 有任何想法吗 您可以从注册表禁用它 HKEY CURRENT USER
  • Apache hive 错误 此版本的 hadoop 不支持合并凭据

    我使用的是hadoop 1 2 1 hbase 0 94 14和hive 1 0 0 我的集群中有三个数据节点 还有三个区域服务器 我必须将一些数据从 hbase 导入到 hive 我已经成功配置配置单元 但是当我运行命令计数 no 时 h
  • 从 Xcode 5 导入 SVN 中的项目

    在 xcode 4 管理器中有一个 导入 按钮 在 xcode5 中如何导入 svn 存储库中的项目 thanks 这个问题有点令人困惑 所以如果这不完全是您所需要的 请告知 否则 请随意接受答案 令人困惑的是 您描述的 Xcode 4 工
  • 哪个版本的 Maven 与 Java 6 兼容?

    我必须在一个需要 java 6 才能运行的旧项目中工作 因为其中引用了已在未来版本中删除的已折旧的 sun 类 作为该过程的一部分 我将系统路径中的 jdk 从 8 更改为指向 java 6 jdk 这样做之后我得到 Exception i
  • EaselJS - 拖动缩放父级的子级

    注意 此问题现已解决 请参阅下面我的回答中的 修复 如果您认为合适 请随意注入任何进一步的知识 首先 我一直在研究和谷歌搜索 localToGlobal localToLocal 和 globalToLocal 但我对这些方法的理解还不足以
  • 无法将地图放入接收器上下文中

    我正在尝试查看在接收器上下文中抛出地图的方法 在这段代码中 class Sunk has titanic method sink say Sinking titanic Sunk new titanic for 1 3 1 3 map Su