Als «raku» getaggte Fragen

Bei Fragen zur Programmiersprache Raku (früher bekannt als Perl 6).

2
Es ist unmöglich, eine Karte in einen Senkenkontext zu stellen
Ich versuche herauszufinden, wie man eine Karte in einen Sink-Kontext wirft. In diesem Code class Sunk { has $.titanic; method sink { say "Sinking $!titanic"; } } Sunk.new( :titanic($_) ) for 1..3; (1..3).map: { Sunk.new( :titanic($_) ) }; Die forSchleife versenkt effektiv alle erstellten, die mapnicht. Irgendeine Idee warum? Dieser …
8 raku 

3
Verwirrung über Listen in einem Aggregat, vielleicht Kontextproblem?
Rakudo Version 2020.01 Ich habe einen Wegwerfcode geschrieben und mich nicht darum gekümmert, eine Klasse zu implementieren, sondern nur einen Hash als Work-Alike verwendet. Ich fand ein überraschendes Verhalten bei Listen. class Q1 {} class R1 { has Str $.some-str is required; has @.some-list is required; } my $r1 = …
8 raku 

1
Initialisierung von Time Warping-Variablen?
In der folgenden einfachen for-Schleife erstellen wir ein Array (@a), indem wir eine typenlose Variable ($ n) inkrementieren: my @a = do for 1..3 { state $n; $n.^name, $n++; } say @a; Das Ergebnis wird "irgendwie" erwartet: [(Any 0) (Int 1) (Int 2)] Und ich sage "irgendwie", weil ich als …

1
String-Ersetzung durch .subst in einer for-Schleife
Ich möchte eine Zeichenfolgenersetzung in einem forBlock mithilfe eines benannten Captures vornehmen . Ich habe erwartet, die Zahlen 1,2,3 als Ausgabe zu erhalten. Aber es ist Nilfür den ersten Lauf und dann 1 und 2 für den 2. und 3. Lauf. Wie verwende ich .substdas Konstrukt korrekt in der Schleife? …

4
Saite an bestimmten Positionen teilen
Wie teile ich eine Zeichenfolge an einer Liste von Positionen schön / idiomatisch auf? Was ich habe: .say for split-at( "0019ABX26002", (3, 4, 8) ); sub split-at( $s, @positions ) { my $done = 0; gather { for @positions -> $p { take $s.substr($done, $p - $done ); $done = …
8 raku 

1
So erstellen Sie ein Capture dynamisch (Raku)
Im folgenden Beispiel versuche ich, ein Capture dynamisch zu erstellen, indem ich ein Array (@a) in ein Capture "konvertiere". Betrachten Sie den Code: sub f (|c){ say ''; say ' List : ' ~ do {c.list.gist if c.list.elems > 0}; say ' Hash : ' ~ do {c.hash.gist if c.hash.elems …
8 dynamic  capture  raku 

1
Signaturen Smartmatching Missverständnisse
Beim Lesen und Ausprobieren von Signatur-Smartmatching stoße ich auf etwas Seltsames. Ausführen der folgenden Smartmaching-Signaturpaare: my @sigs = :($a, $b), :($a, @b), :($a, %b); my @signatures_to_check = :($, $), :($, @), :($, %); my $c = 0; for @sigs -> $sig { for @signatures_to_check -> $s { $c++; if $sig …

1
Wie deaktiviere ich die Option "show_tied" des Perl 5-Moduls Data :: Printer, wenn ich es in Raku verwende?
Ich habe das CPAN Perl-Modul Data :: Printer (DP) mit Perl verwendet. Es funktioniert großartig. Jetzt möchte ich es im Raku-Code verwenden. Wenn ich die :from<Perl5>Funktion zum Importieren verwende und dann Code damit ausführe, wird die Anmerkung (tied to Perl6::Hash)an die Anzeige von Hashes angehängt. 1 Wie das CPAN-Dokument von …
8 perl  import  module  tags  raku 


1
Können native Attribute als Bindungsziel in Parametern verwendet werden?
Laut der Checkliste 6.d (aktuelle Version) können sie. Jedoch, class Foo { has num $.numillo; submethod BUILD( :$numillo = 3.5 ) {} }; my $foo = Foo.new; say $foo.raku; # OUTPUT: «Foo.new(numillo => 0e0)␤» Das Attribut scheint nicht bindbar zu sein oder erhält zumindest keinen zugewiesenen Wert. Vermisse ich hier …
8 syntax  raku 

2
Klonen mehrdimensionaler Arrays
Ich möchte ein mehrdimensionales Array @ain ein Array klonen @b. Ich habe den intuitivsten Weg eingeschlagen und mir Folgendes ausgedacht: my @a = [0, 0, 0], [0, 0, 0], [0, 0, 0]; my @b = @a.clone; @a[0][1] = 1; @b[1][0] = 1; say '@a : ' ~ @a.gist; say '@b …
8 arrays  clone  raku 

2
Überlastung des Raku-Bedieners
Verwenden Sie den folgenden Code: use v6d; # sub circumfix:<α ω>( @a ) { # @a[0] >= @a[1] & @a[0] <= @a[2]; # }; sub circumfix:<α ω>( $a, $b, $c ) { $a >= $b & $a <= $c; }; if (α <5 0 10> ω) { say 'Truthy'; } …

2
Wie iteriere ich durch ein Array in einem Raku-Hash?
Dies scheint eine einfache Frage zu sein, aber Perl6 / Raku verhält sich nicht so, wie ich es erwarten würde. Ich versuche, einen Verweis auf ein Array innerhalb eines Hashs zu erstellen, erhalte jedoch nicht das erwartete Verhalten. In Perl5 würde die Antwort den Zugriff auf das Array als Referenz …
8 arrays  json  hash  raku 


3
Wie lade ich Raku-Module zur Laufzeit für Debug-Zwecke neu?
Ich lade Module dynamisch in meine Raku Rest / API-Anwendung. Ich möchte vermeiden, dass der Server jedes Mal neu gestartet wird, wenn ich Änderungen an meinen Modulen vornehme. Gibt es eine Möglichkeit, die Raku-Module bei jedem Anruf neu zu laden? try require ::('Foo');
8 raku 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.