perl6

    3热度

    1回答

    this问题的另一面。 当我尝试替换组合字符的一部分时,默认情况下,Perl 6不会拆分它。 my $p_macron = "p" ~ 0x0304.chr; say $p_macron; # "p̄" (my $a_macron = $p_macron) ~~ s/p/a/; say $a_macron; # OOPS, again "p̄" 如何(暂时)关闭此默认情况下,才能够匹配单

    4热度

    2回答

    我知道Perl 6在任何可能的情况下都会实现小数作为有理数,以避免出现在大多数其他语言中的浮点问题。 有没有人做过基准测试或了解这样做的性能损失?

    6热度

    2回答

    grammars不知道是否是为了做这样的事情:我想tokens在运行时被定义(在未来 - 从文件中的数据)。所以我写了一个简单的测试代码,并且如预期那样甚至不会编译。 grammar Verb { token TOP { <root> <ending> } token root { (\w+) <?{ ~$0 (elem) @root }

    5热度

    1回答

    假设我们有一个规则的折点模式,它不能被拆分成段。例如。它可以是中缀(在单词内部添加一些字母)或元音变化('ablaut')。考虑德国人的一个例子。 my @words = <Vater Garten Nagel>; my $search = "/@words.join('|')/".EVAL; "mein Vater" ~~ $search; say $/; # 「Vater

    4热度

    2回答

    我想用Perl 6编写一些类来测试Perl 6类和方法。 下面是代码: class human1 { method fn1() { print "#from human1.fn1\n"; } } class human2 { method fn1() { print "#from human2.fn1\n"; } } m

    3热度

    1回答

    学习完how to pass regexes as arguments之后,我尝试使用sub构建我的第一个正则表达式,并且我再次陷入困境。对不起,下面的复杂规则,我已尽我所能来简化它们。我至少需要一些线索来解决这个问题。 regex的应包括交替的,其中每一个包括left,middle和right,这里left和right应成对出现和middle变体取决于哪个right选择。 的Pairs一个数组包

    2热度

    1回答

    当我使用一个regex作为trans第一个参数,它的确定: > say 'abc'.trans(/\w <?before b>/ => 1) 1bc 使用hash作为trans的说法也OK: > my %h > %h{'a'} = '1' > say 'abc'.trans(%h) 1bc 但是当我尝试在哈希使用正则表达式,这是行不通的: > my %h > %h{'/\w/'}

    4热度

    2回答

    当我使用捕获组创建regex变量时,整个匹配成功,但捕获组为Nil。 my $str = 'nn12abc34efg'; my $atom =/\d ** 2 /; my $rgx =/($atom) \w+ ($atom) /; $str ~~/$rgx/; say ~$/; # 12abc34 say $0; # Nil say $1; # Nil 如果我修改程序,以避免$r

    2热度

    1回答

    我正在试图通过定义和传递原始操作符来实现类似于Scheme的一些功能。在方案中,您可以 (define x +) (x 1 2) 该操作将会给你解答3.在perl6,我无论如何都必须把运营商在其他功能,以达到相同的: sub x($a) { $a * 2; } sub y($m, $n) { $m($n); } say y(&x, 3); # gives you 6 say y(+, 3

    1热度

    1回答

    有没有办法将string变量插入code? 这就是我想要做的,当然它甚至不会编译。 my $cmd = " + 5 "; my $a = 3; $a = $a { $cmd }; say $a;