š¦ Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | log inspection situation still under development | For MoarVM see #moarvm Set by lizmat on 22 May 2021. |
|||
ugexe | though sometimes i fear my compulsion to collaborate and design before implementing public apis may be a determent compared to moving faster | 00:00 | |
00:07
discord-raku-bot left,
discord-raku-bot joined
00:08
reportable6 left
00:10
reportable6 joined
00:14
elcaro_ is now known as elcaro
00:26
discord-raku-bot left,
discord-raku-bot joined
00:30
discord-raku-bot left,
discord-raku-bot joined
|
|||
drakonis | where can i see raku 6.e and 6.f's development? | 01:49 | |
i know that problem-solving has a project with tasks related to 6.e | 01:50 | ||
02:27
ugexe left
03:43
ggoebel_ left
06:08
reportable6 left
06:37
ggoebel_ joined
06:41
ggoebel_ left
07:10
reportable6 joined
07:41
ggoebel_ joined
08:42
Xliff joined
08:43
ggoebel_ left
|
|||
nine | ugexe: you mean "what if the to be deployed dists are already there?". As it is they'd be overwritten. We assume that such a check would have been done beforehand, e.g. zef wouldn't build and test something that it cannot install anyway. | 08:48 | |
drakonis: I don't think there are any real plans for 6.f yet | |||
MasterDuke | 6.e you can see here github.com/rakudo/rakudo/tree/master/src/core.e | 08:49 | |
Xliff | is there a 'return' equivalent in nqp? | 08:51 | |
lizmat | return ? | 08:53 | |
Xliff | sub a { return 1 } # Although in this case, that's redundent | 08:54 | |
# Redundant | |||
lizmat | nqp: sub a { return 1 }; nqp::say(a()) | 08:55 | |
camelia | Routine declaration requires a signature at line 2, near "{ return 1" at gen/moar/stage2/NQPHLL.nqp:1059 (/home/camelia/rakudo-m-inst-1/share/nqp/lib/NQPHLL.moarvm:panic) from <unknown>:1 (/home/camelia/rakudo-m-inst-1/share/nqp/lib/nqp.moarvm:routine_ā¦ |
||
lizmat | nqp: sub a() { return 1 }; nqp::say(a()) | ||
camelia | 1 | ||
Xliff | will that work in nqp::stmts? | ||
lizmat | yes, it does, know from experience | ||
Xliff | Oh goodie! | ||
lizmat | however, if it is NQP code in Rakudo, make sure that you get your () right, as in Rakudo, return is just a sub | 08:56 | |
Xliff | Thanks! | 08:58 | |
09:01
MasterDuke left
|
|||
Geth | rakudo: 190e303d9f | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 2 files Make previous values in REPL accessible with `$*N` (#4796) Inspired by: www.reddit.com/r/rakulang/comments...hell_like/ Indexed previous values available as $*0, $*1, $*2...., and all previous values as the array @*_. ... (14 more lines) |
09:02 | |
09:03
linkable6 left
09:04
linkable6 joined
09:11
MasterDuke joined
|
|||
Xliff | lizmat: Cool feature! | 09:38 | |
lizmat | ugexe: I try to find the best way between getting completely frustrated by bikeshedding in PRs and being too bold in pushing commits without PRs | 09:40 | |
I see the .deploy and .self-destruct methods on CURS as steps towards making the test/install process of modules in general, and zef in particular, a lot faster | 09:41 | ||
because it would allow for modules to be installed to only have to be precompiled once | |||
Xliff | lizmat: Does .new work in nqp or is that create()? If so, how can I pass a parameter to new? | 09:46 | |
lizmat | .new is a Raku construct, so no | 09:49 | |
you can nqp::create(class) | |||
and bind attributes with nqp::bindattr and friends | |||
Xliff | Ah, thanks. | ||
lizmat | Xliff: assuming you're in actual NQP, not nqp code inside Rakudo | ||
Xliff | And if I'm inside an nqp block inside Rakudo? | 09:59 | |
lizmat | then you're still in Rakudo, and .new will work | 10:31 | |
(sorry, was afk for a bit) | |||
Geth | rakudo: a56d239d0c | (Elizabeth Mattijsen)++ | src/core.c/Exception.pm6 Add mention of 'sub' potentially missing In response to github.com/rakudo/rakudo/issues/4827 The error message would now state: Variable '$verbose' is not declared. Perhaps you forgot a 'sub' if this was intended to be part of a signature? |
10:34 | |
10:39
linkable6 left,
evalable6 left,
linkable6 joined
|
|||
lizmat | github.com/Raku/problem-solving/pu...1076219560 | 10:45 | |
11:39
linkable6 left
11:42
evalable6 joined
11:50
ggoebel_ joined
12:08
reportable6 left
|
|||
Geth | rakudo/master: 31 commits pushed by (Elizabeth Mattijsen)++ review: github.com/rakudo/rakudo/compare/a...370b74c258 |
12:19 | |
lizmat | splitting src/core.c/Distribution.pm6 into separate files for each class / role while keeping history | ||
12:22
discord-raku-bot left
12:23
discord-raku-bot joined
13:11
reportable6 joined
|
|||
Xliff | Does nqp have a way to do 'next'? | 14:20 | |
I see the QAST::Op, but that says "not directly callable" | |||
lizmat | next in Rakudo is just a sub that issues a CONTROL message | 14:23 | |
nqp::handle allows you to "catch" that | |||
see Any-iterable.pm6 for plenty of examples | 14:24 | ||
Xliff | Thanks. | ||
14:40
ggoebel__ joined
14:43
ggoebel_ left
14:46
ggoebel_ joined
14:48
ggoebel__ left
|
|||
MasterDuke | `Method 'signature' not found for invocant of class 'Sub'` that's too bad | 14:58 | |
nqp: my int $i := 0; while $i++ < 5 { next if $i == 3; say($i); }Ā Ā Ā Ā Ā # nqp also has 'next' | 15:09 | ||
camelia | 1 2 4 5 |
||
15:41
linkable6 joined
|
|||
MasterDuke | m: multi trait_mod:<is>(Routine:D $r, :$purish!) { for $r.signature.params -> $p { warn "$p.name() is not readonly, is $r.name() really pure?" if !$p.readonly } }; sub foo($a is rw) is purish { $a += 1 }; my $a = 1; say foo($a); say $a | 15:57 | |
camelia | Potential difficulties: $a is not readonly, is foo really pure? at <tmp>:1 ------> if !$p.readonly } }; sub foo($a is rw) āis purish { $a += 1 }; my $a = 1; say fo 2 2 |
||
MasterDuke | the check ^^^ is what i was trying to add to github.com/rakudo/rakudo/blob/mast...#L424-L428 but that gives `Method 'signature' not found for invocant of class 'Sub'` when building rakudo. then i tried moving theĀ trait to Routine.pm6, but that causes `Method 'hash' not found for invocant of class 'Capture'` when | 16:00 | |
building rakudo | |||
16:23
discord-raku-bot left,
discord-raku-bot joined
17:14
Kaipi left
18:07
reportable6 left
18:09
reportable6 joined
18:42
melezhik joined
18:43
Kaipi joined
19:03
melezhik left
|
|||
Geth | rakudo: usev6++ created pull request #4829: Revert "An object will never work if native is expected" |
19:31 | |
bartolin | m: multi f(int $i) { $i + $i }; my $a = 3; my int $b = 2; $a := $b; say f $a | ||
camelia | ===SORRY!=== Error while compiling <tmp> Calling f(Mu) will never work with any of these multi signatures: (int $i) at <tmp>:1 ------> my $a = 3; my int $b = 2; $a := $b; say āf $a |
||
bartolin | MasterDuke: I'm afraid the reference to Mu in the error message isn't the biggest problem with 73d5e74d96 (github.com/rakudo/rakudo/issues/4823) | 19:32 | |
19:33
linkable6 left
|
|||
Geth | rakudo: 94d4820a7b | (Christian BartolomƤus)++ (committed using GitHub Web editor) | src/Perl6/bootstrap.c/BOOTSTRAP.nqp Revert "An object will never work if native is expected" (#4829) This reverts commit 73d5e74d96197312da62509058a0970668913bc8. That commit turned out to be incorrect. For more background see github.com/rakudo/rakudo/issues/4823 ... (15 more lines) |
19:36 | |
rakudo: 77ca7a4bcd | (Elizabeth Mattijsen)++ | lib/CompUnit/Repository/Staging.rakumod Remove : in self-destruct code Leftover from change from private method to sub. Spotted by hythm++ |
20:17 | ||
20:26
ggoebel_ left
20:42
ggoebel_ joined
|
|||
Geth | rakudo: 15abaf412d | (Elizabeth Mattijsen)++ | src/core.c/Distribution/Locally.pm6 Gradually type Distribution::Locally a bit |
20:52 | |
lizmat | and that concludes my hacking for today& | 20:53 | |
21:43
sena_kun joined
|
|||
japhb | Canary says: YAMLish:ver<0.0.6> fails tests at Rakudo HEAD | 21:50 | |
22:36
ggoebel_ left
22:54
ggoebel_ joined
23:35
linkable6 joined
|