Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-06-16

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:06 Zoffix :S "Unhandled exception: Missing or wrong version of dependency 'gen/moar/stage2/QRegex.nqp' (from 'src/Perl6/Pod.nqp')"
00:06 Zoffix https://gist.github.com/zoffixznet/d17c923c121d742190e9c9bf48222ad8
00:07 Zoffix Oh. I see why. Ran it with `perl6` but it runs `./perl6-m` somewhere inside
00:14 vendethiel joined #perl6-dev
00:31 MadcapJake joined #perl6-dev
01:14 vendethiel joined #perl6-dev
01:46 Zoffix FWIW, I'm preparing release in this fork and will create a PR for merging on 18th: https://github.com/zoffixznet/rakudo/tree/release-2016-06
01:46 Zoffix And will use same branch name for nqp fork. It doesn't look like I need to "prepare" it in advance though :)
01:48 ilbot3 joined #perl6-dev
01:48 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
01:49 Zoffix Fixed. Thanks.
02:24 MasterDuke does anybody else see pretty regular "*** Error in `/home/dan/Source/perl6/install/bin/moar': double free or corruption (!prev): 0x00007f6b14fe4710 ***" when using Promise.allof?
02:25 timotimo are you using a library or something that isn't threadsafe?
02:26 MasterDuke i'm trying to make perl6/doc/htmlify.p6 faster
02:28 MasterDuke so some of the slow bits i turned into starts + await(Promise.allof(@starts))
02:28 timotimo mhm
02:29 MasterDuke this one is new "Internal error: zeroed target thread ID in work pass"
02:29 timotimo ah, yeah, multithreaded breakage
02:30 timotimo what exact version are you on right now?
02:30 MasterDuke This is Rakudo version 2016.05-150-gc7cd003 built on MoarVM version 2016.05-34-gfbe9e24
02:32 MasterDuke i really want to use the concurrency stuff, but keep running into seg faults, weird errors, etc.
02:32 timotimo hmm, ok
02:32 MasterDuke a little offputting
02:32 timotimo well, you can try valgrinding it :\
02:32 timotimo i'm not sure what parts you are encountering that aren't threadsafe
02:33 MasterDuke git diff output, https://gist.github.com/MasterDuke17/d06f051a8033e499599d05426ef33d52
02:37 timotimo how would oyu feel about actually valgrinding it?
02:37 MasterDuke i just started it with perl6-valgrind-m
02:37 timotimo how long does it usually run before it crashes?
02:39 MasterDuke it's always been in one of the "Processing <type> Pod files ...' steps
02:40 MasterDuke a couple 'Syscall param write(buf) points to uninitialised byte(s)' so far
02:40 timotimo i'm not actually sure what the extract-pod and process-pod-source subs do
02:41 MasterDuke those valgrind messages appeared to happen between 'Initializing ...' and 'Creating html/ subdirectories'
02:42 timotimo oh, that's interesting
02:42 timotimo do you get stack traces with those? like, with actual line numbers?
02:43 MasterDuke first bunch of output from valgrind, https://gist.github.com/MasterDuke17/4167fcc791675a82058c3ed5dc657803
02:44 timotimo it was spawning multiple processes
02:45 MasterDuke seems so, also, that was before any of my changes
02:49 MasterDuke oh damn, that was/is my system perl6 (2016.05 built on MoarVM version 2016.05), not the compiled-from-head i usually use for testing
02:52 timotimo i'm not sure if there were many multithreading improvements recently
02:52 timotimo before 2016.05, though, yeah. but i'm not sure when exactly
02:53 vendethiel joined #perl6-dev
02:54 MasterDuke i guess i'll let this one keep going and then run again with a more recent perl6
02:54 timotimo OK
02:55 MasterDuke couple more of those errors, https://gist.github.com/MasterDuke17/8561e2514fbe138514c3fa52c20b589f
02:55 timotimo strange.
02:56 MasterDuke hmm. now "killed"
02:59 timotimo out of memory, probably
03:30 MasterDuke gotten to 'Writing specialized visualizations to html/images/ ...' with no messages from valgrind so far when using the up-to-date perl 6, but has been sitting there for a while
03:41 b2gills MasterDuke: You should realize that 「await(Promise.allof(@starts)); my @returned = @starts».result」 can be simplified to just 「my @returned = await(@starts)」
03:47 vendethiel joined #perl6-dev
03:54 ugexe joined #perl6-dev
04:06 llfourn_ joined #perl6-dev
04:09 ugexe https://github.com/rakudo/rakudo/commit/66ebd8685731df58dcf3622b47265b2c22774388 is giving me 'Outdated precompiled' errors
04:12 ugexe and if its run with RAKUDO_MODULE_DEBUG=1 it gives Failed to find 'sources/9FA0AC28824EE9E5A9C0F99951CA870148AE378E' while trying to do '.modified'
04:20 ugexe zef actually has tests for these types of things in xt/install.t
04:24 vendethiel joined #perl6-dev
04:53 vendethiel joined #perl6-dev
05:34 nine ugexe: how can this commit give you errors when the agument hasn't been used by any caller?!
05:44 llfourn joined #perl6-dev
06:05 vendethiel joined #perl6-dev
06:19 sno joined #perl6-dev
06:44 psch hrm
06:45 psch so, yeah, i do get a Hash in QAST::Compiler
06:45 psch but i can't reach the perl6 hll to get the type to reach its $!storage
06:50 psch oh duh
06:50 psch i can just de-hllize in src/control.pm >_>
06:58 vendethiel joined #perl6-dev
07:02 RabidGravy joined #perl6-dev
07:13 Zoffix joined #perl6-dev
07:25 [Tux] This is Rakudo version 2016.05-150-gc7cd003 built on MoarVM version 2016.05-18-g1339332
07:25 [Tux] test            17.363
07:25 [Tux] test-t           9.752
07:25 [Tux] csv-parser      21.586
07:50 psch https://gist.github.com/peschwa/a48ca7140302157eb858b979d18766c7
07:50 psch i think i should be able to work with that \o/
07:50 psch although i'm a bit befuddled that the second EVAL has the missing qbid
07:51 psch and the fact that it's compiling both evals twice (and NC::Types actually like 8 times..?) also hints at some holes in my understanding
08:09 vendethiel joined #perl6-dev
08:16 nine psch: but it's progres nevertheless :)
08:25 psch nine: FSVO, probably... :)
08:25 psch i'm mostly confused with trying to pull apart what RAKUDO_MODULE_DEBUG adds to that
08:28 psch i've updated the gist, fwiw
08:28 psch like, i'm having trouble mapping the EVAL_* "files" to stages during precomp
08:29 psch and well, with the missing qbid happening in the second EVAL, it kinda feels like it's not really a missing nested CU, but just something else gone wrong, although i don't really know how i would verify that
08:30 psch the off-by-one-ish error with cuid_to_qbid seems suspect, but...
08:34 sortiz joined #perl6-dev
08:55 vendethiel joined #perl6-dev
09:39 vendethiel joined #perl6-dev
10:07 vendethiel joined #perl6-dev
10:34 Woodi joined #perl6-dev
10:52 vendethiel joined #perl6-dev
10:53 cognominal joined #perl6-dev
11:18 vendethiel joined #perl6-dev
11:32 MasterDuke timotimo: ran overnight, but never finished with the up-to-date rakudo, here's the output after i killed it, https://gist.github.com/MasterDuke17/0669d2938832f00bed35ba2578872e87
11:32 MasterDuke b2gills: thanks, that's simpler
12:09 cog-nominal joined #perl6-dev
12:48 vendethiel joined #perl6-dev
13:25 skids joined #perl6-dev
14:10 cog-nominal joined #perl6-dev
14:10 cognominal joined #perl6-dev
14:17 ugexex joined #perl6-dev
14:18 ugexex nine: i should have been more clear: i mean thats the latest commit i was using. it could be anything within the last week or so
14:27 ugexex note that zef still works fine for the general use case, just that test fails. so i suspect it has to do with installing to inst#/custom/dir. I'm not able to dig deeper for a week or so or i'd have tracked it down myself
14:28 FROGGS joined #perl6-dev
14:41 vendethiel joined #perl6-dev
14:51 BrokenRobot bisect: 2 ∈ <2> or die
14:51 bisectable BrokenRobot: on both starting points the exit code is 1 and the output is identical as well
14:51 BrokenRobot m: 2 ∈ <2>
14:51 camelia rakudo-moar c7cd00: OUTPUT«WARNINGS for <tmp>:␤Useless use of "∈" in expression "2 ∈ <2>" in sink context (line 1)␤»
14:51 BrokenRobot m: say so 2 ∈ <2>
14:51 camelia rakudo-moar c7cd00: OUTPUT«False␤»
14:51 BrokenRobot Should that be a True?
14:53 * geekosaur notes that the former is an Int and the latter an IntStr
14:55 timotimo oh damn
14:55 BrokenRobot Yeah, but IntStr is really more of a convenience IMO
14:55 timotimo inconvenience, you mean :)
14:56 BrokenRobot heh
15:00 BrokenRobot It uses .WHICH to check for existence.
15:01 BrokenRobot m: class Foo {}; my $a = Foo.new; my $b = Foo.new; .WHICH.say for 2, <2>, $a, $b
15:01 camelia rakudo-moar c7cd00: OUTPUT«Int|2␤IntStr|2␤Foo|83205328␤Foo|83205360␤»
15:01 cog-nominal joined #perl6-dev
15:01 cognominal joined #perl6-dev
15:05 BrokenRobot Not a bug, I guess, but it makes my awesome method to check thing's existence in array less awesome
15:05 BrokenRobot m: my @a = <a b c 2>; say 2 ∈ @a
15:05 camelia rakudo-moar c7cd00: OUTPUT«False␤»
15:13 BrokenRobot m: my @a = <2>; my @b = 2; say @a eqv @b;
15:13 camelia rakudo-moar c7cd00: OUTPUT«False␤»
15:13 BrokenRobot Inconvencience indeed.
15:15 lizmat joined #perl6-dev
15:20 * lizmat waves from Orlando
15:21 jdv79 is it hot out?
15:23 vendethiel joined #perl6-dev
15:23 nine lizmat: o/
15:30 dalek roast: a7ed445 | (Daniel Green)++ | S02-literals/adverbs.t:
15:30 dalek roast: Add test for RT #128306
15:30 dalek roast: review: https://github.com/perl6/roast/commit/a7ed445199
15:30 dalek roast: 1ab6884 | lizmat++ | S02-literals/adverbs.t:
15:30 dalek roast: Merge pull request #126 from MasterDuke17/RT128306
15:30 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128306
15:30 dalek roast:
15:30 dalek roast: Add test for RT #128306
15:30 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128306
15:30 dalek roast: review: https://github.com/perl6/roast/commit/1ab6884b2f
15:48 AlexDaniel joined #perl6-dev
15:58 BrokenRobot m: $_ = "foo"; .say if ~~Str
15:58 camelia rakudo-moar c7cd00: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Expected a term, but found either infix ~~ or redundant prefix ~␤  (to suppress this message, please use a space like ~ ~)␤at <tmp>:1␤------> $_ = "foo"; .say if ~~⏏Str␤»
15:59 BrokenRobot prefix:<~~> could function as infix:<~~> against $_ on LHS
15:59 [Coke] m: say ~~3;
15:59 camelia rakudo-moar c7cd00: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Expected a term, but found either infix ~~ or redundant prefix ~␤  (to suppress this message, please use a space like ~ ~)␤at <tmp>:1␤------> say ~~⏏3;␤»
16:00 [Coke] m: say ~ ~3;
16:00 camelia rakudo-moar c7cd00: OUTPUT«3␤»
16:00 [Coke] guess there's no confusion with ~ ~
16:03 sortiz .oO( 'if ~~' can be spelled when )
16:06 BrokenRobot But only in statement modifier form
16:07 BrokenRobot m: for <a b c> { if $_ ~~ "a" { .say }; say "meow" }
16:07 camelia rakudo-moar c7cd00: OUTPUT«a␤meow␤meow␤meow␤»
16:07 lizmat "feels like 36 outside"
16:07 BrokenRobot m: for <a b c> { when "a" { .say }; say "meow" }
16:07 camelia rakudo-moar c7cd00: OUTPUT«a␤meow␤meow␤»
16:07 lizmat jdv79: when it is "only" 32
16:19 BrokenRobot m: .WHAT.say for 1+i, <1+i>, <1+1i>
16:19 camelia rakudo-moar c7cd00: OUTPUT«(Complex)␤(Str)␤(Complex)␤»
16:20 lizmat Seems to be something in the parser:
16:20 lizmat m: sub prefix:<~~> { dd CALLER::<$_>, $^a; CALLER::<$_> ~~ $^a }; $_ = "foo"; .say if ~~ Str
16:20 camelia rakudo-moar c7cd00: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Expected a term, but found either infix ~~ or redundant prefix ~␤  (to suppress this message, please use a space like ~ ~)␤at <tmp>:1␤------> R::<$_> ~~ $^a }; $_ = "foo"; .say if ~~⏏ Str␤»
16:20 lizmat m: sub prefix:<abc> { CALLER::<$_> ~~ $^a }; $_ = "foo"; .say if abc Str
16:20 camelia rakudo-moar c7cd00: OUTPUT«foo␤»
16:24 BrokenRobot It's the same for other stuff that warns:
16:25 BrokenRobot m: sub infix:<?> {}; sub infix:<:> {}; say 2 ? : 2
16:25 camelia rakudo-moar c7cd00: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Unsupported use of ? and : for the ternary conditional operator; in Perl 6 please use ?? and !!␤at <tmp>:1␤------>  infix:<?> {}; sub infix:<:> {}; say 2 ?⏏ : 2␤»
16:25 BrokenRobot s/warns/errors out/;
16:37 [Coke] m: say ComplexStr.WHAT
16:37 camelia rakudo-moar c7cd00: OUTPUT«(ComplexStr)␤»
16:56 BrokenRobot m: use Test; sub blarg {$^a}; say blarg 42; eval-dies-ok "blarg 42"
16:56 camelia rakudo-moar c7cd00: OUTPUT«42␤ok 1 - ␤»
16:56 * BrokenRobot isn't sure why there is an eval-dies-ok in the first place.
17:01 [Coke] to simplify testing for something that is supposed to die?
17:02 BrokenRobot [Coke]: there's dies-ok
17:03 [Coke] m: use Test: eval-dies-ok "3"; #doesn't die, so test fails. not sure why your blarg example dies (and therefore passes)
17:03 camelia rakudo-moar c7cd00: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Confused␤at <tmp>:1␤------> use Test⏏: eval-dies-ok "3"; #doesn't die, so tes␤»
17:03 BrokenRobot Make it take Str/Callable just like throws-like
17:03 * BrokenRobot is filing a Bug and an RFC ATM
17:03 [Coke] dies-ok takes code, eval-dies-ok takes a string.
17:04 [Coke] so with eval-dies-ok, the code doesn't have to compile, even.
17:04 [Coke] with dies-ok, it has to compile and then die
17:05 BrokenRobot No it doesn't
17:05 BrokenRobot dies-ok can take Str
17:05 BrokenRobot s/can/should/
17:05 [Coke] Calling dies-ok(Str) will never work with any of these multi signatures:
17:06 BrokenRobot I think we're talking past each other here..
17:06 [Coke] I'm telling you how it is, you're asking for it to change.
17:06 [Coke] I think that's where we are.
17:06 [Coke] no?
17:07 vendethiel joined #perl6-dev
17:08 geekosaur wasn't there a specific push to avoid using EVAL when it's not needed?
17:11 BrokenRobot [Coke]: more proposing than asking. I know how it is and I think it's hairy and is inconsistent with other subs in the module.
17:12 BrokenRobot RFC: https://rt.perl.org/Ticket/Display.html?id=128418
17:12 BrokenRobot Bug: https://rt.perl.org/Ticket/Display.html?id=128417
17:17 dalek roast: d4dd53b | niner++ | / (3 files):
17:17 dalek roast: Tests for RT #126878
17:17 dalek roast: review: https://github.com/perl6/roast/commit/d4dd53b79d
17:17 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=126878
17:20 jnthn If you want it to evaluate in the current context, then it must be done via a closure that uses EVAL
17:21 jnthn dies-ok { EVAL '...' }
17:21 jnthn Or throws-ok { EVAL '...' }
17:22 BrokenRobot jnthn: but throws-ok already evals in proper context, why not make dies-ok do the same?
17:22 jnthn How does it do it?
17:22 BrokenRobot :context( CALLER:: ....
17:22 jnthn dammit
17:22 BrokenRobot lol
17:22 jnthn That *will* break.
17:22 jnthn Soon.
17:23 jnthn As soon as the optimizer gets better.
17:23 jnthn So we should address that soon.
17:23 BrokenRobot k, I'll close dies-ok bug and open one for throws-like
17:23 jnthn That context named arg should also go away, it's too open to abuse.
17:24 jnthn In so far as, it's really tempting to think it's going to reliably work out
17:24 jnthn But the design docs are clear that the only variables you can rely on being visible through CALLER:: are those marked "is dynamic" (or declared $*foo)
17:25 jnthn Anyways, thank for noticing the inconsistency.
17:26 lizmat jnthn: so lemme get this straight: throws-like accepting a Str is wrong, but otherwise you're fine with throws-like ?
17:27 jnthn Just saw your message in RT... :)
17:27 lizmat :-)
17:27 jnthn The things that I eliminated were cases of throws-like ..., X::AdHoc
17:28 jnthn The reason being that X::AdHoc mostly means "we didn't yet get to putting in a properly typed exception"
17:28 jnthn You *could* write those cases as throws-like ..., Exception;
17:28 jnthn Which is just a long way to spell dies-ok ...
17:28 jnthn Thus why I can imagine me switching some throws-like to dies-ok
17:29 lizmat well, but you lost information there  :-(
17:29 jnthn How so?
17:29 jnthn I mean, the spectests should not be asserting we throw X::AdHoc
17:30 lizmat when I was going through roast last year, I found quite a few cases were dies-ok tests were succeeding for the wrong reason
17:30 jnthn Otherwise it's just a pain when we *do* put in a proper exception, 'cus it's cause errata
17:30 [Coke] lizmat: yes, but x::adhoc is not information worth saving
17:30 jnthn Sure, but the way we should be addressing that is by adding more typed exceptions.
17:30 lizmat it at least meant I had a look at it  :-(
17:30 [Coke] we need to finish going through all the exceptions and if we're going to type them, type them.
17:30 lizmat now that info is all gone  :-(
17:30 jnthn It's a git repo, how is anything lost?
17:31 lizmat if the commit cannot be reapplied, it is effectively lost
17:31 [Coke] but it shouldn't be reapplied.
17:31 [Coke] we should not be tsting specifically that we are throwing the Adhoc exception.
17:32 lizmat well, to me they were canaries
17:32 lizmat whenever we would put in a typed exception were there wasn't one before
17:32 lizmat it would fail
17:32 [Coke] (because then it's stuck in (e.g.) 6.c release and the thought was we couldn't change it without a spec change)
17:32 lizmat so we could fix it
17:32 dalek roast: 0d22c77 | niner++ | / (5 files):
17:32 dalek roast: Tests for RT #117117
17:32 dalek roast: review: https://github.com/perl6/roast/commit/0d22c7732b
17:32 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=117117
17:32 lizmat now, whenever we put in a new typed exception, the dies-ok still fails
17:32 lizmat but we cannot be sure it failed for the right reasone  :-(
17:32 [Coke] we just ran out of time before christmas to do it the right way, or to flush out issues.
17:33 lizmat well, I would have gladly fixed the errata with a dies-ok, if the Ad-Hoc started failing
17:33 lizmat anyways, water under the bridge
17:33 [Coke] Yup, we still have to fix that. let's try to make sure we have a good answer in place for 6.d
17:34 jnthn Note that you could quite easily run a tweaked Test.pm that reports under-specific exception types :)
17:34 [Coke] lizmat: I think the thought was at the time was that that would constitute an incompatible chagne.
17:34 [Coke] I think we could probably document our way out of that bag now, but let's make that part of the plan for 6.d
17:34 [Coke] gah, gotta run. laters.
17:35 jnthn dinner, but I can write up said Test.pm tweak later if it's not clear :)
17:35 jnthn &
17:59 nine procrastination++ # so far I've found and fixed the real reason behind RT #128156, started a good refactor branch for after the release and got us rid of 4 RT tickets
17:59 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128156
18:01 nine What I actually wanted to do was add a dependency loop detection for RT #128285 but I have a hard time deciding where exactly
18:01 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128285
18:03 nine Well at least I just now found that it's actually a duplicate of RT #126688
18:03 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=126688
18:06 lizmat nine++
18:06 lizmat afk&
18:06 sortiz nine, btw, I use RMD a lot and found confusing the reverse order of its output, moreover without a time stamp.
18:07 nine sortiz: yes, same here. I'm no fan of capturing STDERR during precompilation but it really seems necessary.
18:09 sortiz nine, can you elaborate a little?
18:10 sortiz (about the necessity)
18:11 nine sortiz: https://rt.perl.org/Ticket/Display.html?id=127176
18:16 sortiz nine, I understand, Tnks.
18:52 dalek rakudo/nom: 07c8267 | niner++ | src/core/CompUnit/ (2 files):
18:52 dalek rakudo/nom: Remove .rev-deps cache
18:52 dalek rakudo/nom:
18:52 dalek rakudo/nom: .rev-deps files were a good idea at the time for tracking which reverse-
18:52 dalek rakudo/nom: dependencies we have to recompile after updating a module. But that was when
18:52 dalek rakudo/nom: we only ever used a single precomp store at a time, so everything of interest
18:52 dalek rakudo/nom: would be found in the same store.
18:52 dalek rakudo/nom:
18:52 dalek rakudo/nom: Now a reverse dependency may be in a store further up the chain and .rev-deps
18:52 dalek rakudo/nom: files are possibly incomplete. They are also a problem for packaging modules
18:52 dalek rakudo/nom: as they are changed on installation of other modules. Removing them also clears
18:52 dalek rakudo/nom: the way for fixing the PrecompilationStore abstraction.
18:52 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/07c8267d3b
18:52 dalek rakudo/nom: 2126eda | niner++ | src/core/CompUnit/PrecompilationRepository.pm:
18:52 nine Zoffix: there's one of your release blockers ^^^
18:54 BrokenRobot nine: do you mean that's a new one or something that was fixed?
18:55 BrokenRobot I didn't have that on release blocking list
18:55 BrokenRobot Ohh
18:56 * BrokenRobot retracts the Ohh
18:56 nine ?
18:57 nine Ooops!
18:57 nine Damn...I had that commit on nom, too instead of only the branch
18:58 nine BrokenRobot: I meant https://github.com/rakudo/rakudo/commit/2126eda519696f4668d46b46eb257a5e26c88bc6 fixing https://rt.perl.org//Public/Bug/Display.html?id=126688
18:59 nine Add protection against circular dependencies in precompilation
18:59 nine Die with a hint about what's wrong instead of spawning more and more processes. Fixes all cases reported in RT #126688 Note that we can still loop endlessly when loading modules from source.
18:59 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=126688
18:59 BrokenRobot Ah :) nine++
18:59 nine .rev-deps[1~The [4~ commit was meant for after the release
19:17 AlexDaniel joined #perl6-dev
21:38 Zoffix left #perl6-dev
22:39 cog-nominal joined #perl6-dev
22:39 cognominal joined #perl6-dev
23:13 skids joined #perl6-dev
23:38 sno joined #perl6-dev

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary