gpt4 book ai didi

raku - 你能循环一个变量中的 Perl 6 block 吗?

转载 作者:行者123 更新时间:2023-12-04 22:56:11 26 4
gpt4 key购买 nike

我一直想做这样的事情:

my $block := {
state $n = 0;
say $n++;
last if $n > 3;
};

loop $block;

甚至:
$block.loop;

我没想到这是可能的,但如果是的话肯定会很酷。

我如何找出特定例程的来源?
$ perl6
To exit type 'exit' or '^D'
> &loop.^name
===SORRY!=== Error while compiling:
Undeclared routine:
loop used at line 1

最佳答案

制作 $block.loop工作,相当容易,可以住在模块土地上:

use MONKEY;
augment class Block {
method loop($self:) {
Nil while $self()
}
}
my $a = { print "a" };
$a.loop # aaaaaaaaaaaaaaaaaaa (with apologies to Knorkator)

制作 loop $block工作将更加复杂,因为这将涉及对 Perl 6 语法的操作处理的更改。

关于raku - 你能循环一个变量中的 Perl 6 block 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45317029/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com