Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-05-06

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:03 Alina-malina joined #perl6
00:04 lvfjf joined #perl6
00:08 woosley joined #perl6
00:42 pnu joined #perl6
00:48 Pleiades` joined #perl6
00:51 TimToady hoelzro: I suspect you didn't really mean $max max= .chars.say;
00:51 TimToady because .say is just gonna return True
00:52 benabik r: say (0 max True)
00:52 Timbus he wants the most true
00:52 camelia rakudo-{parrot,jvm,moar} f374d8: OUTPUT«True␤»
00:52 * benabik should remember to use m: rather than r:
00:56 benabik Nicely cleaned up output there, though.
01:04 BenGoldberg r: say 1 max True;
01:04 camelia rakudo-{parrot,jvm,moar} f374d8: OUTPUT«True␤»
01:04 BenGoldberg r: say 1 min True;
01:04 camelia rakudo-{parrot,jvm,moar} f374d8: OUTPUT«1␤»
01:06 thou Hi, who here is supernovous on github? I'm curious about the state of Web, PSGI, Bailador, etc.
01:07 tadzik supernovus, but he's not here
01:07 tadzik I may be able to answer some bailador questions though
01:07 thou hah
01:08 hoelzro TimToady: no, that was a typo
01:09 thou tadzik: Cool. I'm mostly interested in what projects are active, what work is ongoing to merge the app stuff from a few different projects. I'm thinking of resurrecting November, rewriting it w/ current state of the art.
01:10 Su-Shee_ joined #perl6
01:10 thou Also, I still have a soft spot for Plackdo, which had a heroic amount of work done on it a while back and may still be useful. I'm wondering if there's a coalition of people cooperating on a web stack.
01:11 hoverboard joined #perl6
01:12 dayangkun joined #perl6
01:15 TimToady p6: .say for <a b c>.permutations
01:15 camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Unable to resolve method permutations in type Parcel␤  at /tmp/tmpfile line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4596 (module-CORE @…»
01:15 camelia ..rakudo-moar f374d8: OUTPUT«Cannot call 'postcircumfix:<[ ]>'; none of these signatures match:␤:(Any \SELF, int $pos)␤:(Any \SELF, int $pos, \assignee)␤:(Any \SELF, int $pos, :BIND($BIND)!)␤:(Any \SELF, int $pos, Any :SINK($SINK)!, *%other)␤:(Any \SELF, int $pos, Any :delet…»
01:15 camelia ..rakudo-{parrot,jvm} f374d8: OUTPUT«a b c␤a c b␤b a c␤b c a␤c a b␤c b a␤»
01:16 TimToady r-m bug
01:20 bjz joined #perl6
01:21 benabik m: [0].permutations
01:21 camelia rakudo-moar f374d8: OUTPUT«Unhandled exception: Cannot call 'postcircumfix:<[ ]>'; none of these signatures match:␤:(Any \SELF, int $pos)␤:(Any \SELF, int $pos, \assignee)␤:(Any \SELF, int $pos, :BIND($BIND)!)␤:(Any \SELF, int $pos, Any :SINK($SINK)!, *%other)␤:(Any \SELF,…»
01:22 benabik m: [].permutations
01:22 camelia rakudo-moar f374d8: ( no output )
01:22 tadzik thou: I haven't developed bailador for a longer while
01:23 tadzik not sure if anything webdev-related is really going on these days :(
01:23 thou tadzik: OK. I thought I saw something in p6weekly a month or so ago.
01:24 plobsing joined #perl6
01:24 BenGoldberg m: say (1..3).permutations
01:24 camelia rakudo-moar f374d8: OUTPUT«Cannot call 'postcircumfix:<[ ]>'; none of these signatures match:␤:(Any \SELF, int $pos)␤:(Any \SELF, int $pos, \assignee)␤:(Any \SELF, int $pos, :BIND($BIND)!)␤:(Any \SELF, int $pos, Any :SINK($SINK)!, *%other)␤:(Any \SELF, int $pos, Any :delet…»
01:25 tadzik hm, maybe
01:26 thou tadzik: thanks, and hopefully ecosystem stuff will continue to improve along w/ everything else, as it seems most of the old excuses about speed and features are quickly being overcome. :-)
01:27 Gothmog_ joined #perl6
01:32 TimToady okay, here's some LHF: add any tests whatsoever for permutations
01:32 TimToady r: .say for permutations(3)
01:33 camelia rakudo-{parrot,jvm,moar} f374d8: OUTPUT«0 1 2␤0 2 1␤1 0 2␤1 2 0␤2 0 1␤2 1 0␤»
01:33 TimToady at least that part works in moar
01:35 colomon joined #perl6
01:38 BenGoldberg p6: my @a = 'a'..*; say @a[@$_] for permutations(3)
01:38 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤    'permutations' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (…»
01:38 camelia ..rakudo-{parrot,jvm,moar} f374d8: OUTPUT«a b c␤a c b␤b a c␤b c a␤c a b␤c b a␤»
01:38 xenoterracide joined #perl6
01:45 klapperl_ joined #perl6
01:49 TimToady m: .say for [<a b c>].permutations
01:49 camelia rakudo-moar f374d8: OUTPUT«Cannot call 'postcircumfix:<[ ]>'; none of these signatures match:␤:(Any \SELF, int $pos)␤:(Any \SELF, int $pos, \assignee)␤:(Any \SELF, int $pos, :BIND($BIND)!)␤:(Any \SELF, int $pos, Any :SINK($SINK)!, *%other)␤:(Any \SELF, int $pos, Any :delet…»
01:58 FROGGS_ joined #perl6
02:01 Sqirrel joined #perl6
02:03 woosley joined #perl6
02:09 lvfjf joined #perl6
02:22 TimToady ooh, now only 8 solutions behind C on rosettacode
02:22 colomon go go go!
02:23 TimToady interestingly, there are exactly 8 bitmap/* tasks that aren't done
02:23 TimToady but I've been holding off on all the solutions that will improve with 2d matrices...
02:25 donaldh joined #perl6
02:25 rurban joined #perl6
02:33 chenryn joined #perl6
02:38 chenryn joined #perl6
02:47 rurban joined #perl6
03:10 plobsing joined #perl6
03:13 hoelzro I just tried building MoarVM from the release tarball, and it's complaining about a lack of dynload.h
03:13 hoelzro it doesn't seem to be building the 3rdparty modules
03:14 benabik Submodules aren't included by git-archive, I bet that's the problem.
03:14 benabik (IIRC)
03:14 hoelzro that would be a good assumption, I think =)
03:36 Alula joined #perl6
03:37 lvfjf joined #perl6
04:02 kaare_ joined #perl6
04:19 plobsing joined #perl6
04:22 anaeem1 joined #perl6
04:28 anaeem1_ joined #perl6
04:44 SamuraiJack_ joined #perl6
04:45 rurban joined #perl6
05:03 SamuraiJack__ joined #perl6
05:27 rindolf joined #perl6
05:28 rurban joined #perl6
05:34 moritz iirc we specifically patched the MoarVM build to use more than git-archive
05:34 moritz s/build/release/
05:35 xiaomiao hoelzro: submodules ...
05:36 xiaomiao don't ever get tarballs from github, that way lies sadness
05:36 kaare_ joined #perl6
05:45 denis_boyun_ joined #perl6
06:05 Sqirrel joined #perl6
06:10 thou joined #perl6
06:23 vendethiel joined #perl6
06:29 rurban joined #perl6
06:34 kaleem joined #perl6
06:42 denis_boyun joined #perl6
06:43 Sqirrel joined #perl6
06:44 masak mornin', #perl6
06:58 hoverboard joined #perl6
07:06 zakharyas joined #perl6
07:07 moritz \o masak, *
07:14 FROGGS joined #perl6
07:22 FROGGS perhaps interesting for somebody: https://github.com/libgdx/packr - Packages your JAR, assets and a JVM for distribution on Windows, Linux and Mac OS X
07:25 igorsutton joined #perl6
07:28 dalek joined #perl6
07:29 masak this feels like it belongs on #perl6, somehow: http://animalnewyork.com/2014/artists-notebook-ramsey-nasser/ -- https://news.ycombinator.com/item?id=7700691
07:30 rurban joined #perl6
07:35 moritz off-topic UNIX question: when I run a script via cron as a specific user, that user only has the permissions of its primary group, not those of the other groups (and 'id -a' doesn't even show the others groups)
07:35 moritz can I somehow prevent that from happening?
07:36 moritz masak: wow, that's nice
07:37 darutoko joined #perl6
07:38 masak it is.
07:38 masak if I could buy that mosaic as a poster, I would.
07:47 clkaoud joined #perl6
07:50 LLamaRider joined #perl6
07:58 thou joined #perl6
08:01 sqirrel_ joined #perl6
08:01 lizmat good *, #perl6!
08:01 dmol joined #perl6
08:02 rindolf joined #perl6
08:02 lizmat jnthn: wrt to Supply.classify
08:03 lizmat I doubt whether that would make sense, unless we can make a "live" Supply become "on demand"
08:03 lizmat I mean, more'ing a Supply and then more'ing the value for that Supply on it
08:04 lizmat doesn't guarantee that a tap on that Supply will see that value, because it will most likely be too late
08:04 lizmat unless we can make a "live" Supply to become "on demand"
08:04 lizmat am I making sense here ?
08:04 masak does Perl 6 distinguish between "hot" and "cold" supplies, the way Rx does?
08:05 masak um, the distinction is more of a social one than one in code, to be sure.
08:05 lizmat yes, "live" vs "on demand"
08:05 masak ok, good.
08:05 lizmat Supply.for(...)
08:05 lizmat would be on demand (as in, every tap on that Supply will see all values)
08:05 masak excellent.
08:05 lizmat Supply.new is live
08:06 lizmat a tap will only see values that have been "more"d on the Supply after the tap has been made
08:09 ivanshmakov joined #perl6
08:10 masak right.
08:10 masak but a "cold"/"on demand" Supply will kindly wait until it's being tapped by something.
08:10 masak whereas a "hot"/"live" one won't/can't.
08:11 lizmat yup
08:13 virtualsue joined #perl6
08:15 lizmat S17:478
08:15 synopsebot Link: http://perlcabal.org/syn/S17.html#line_478
08:16 lizmat but turning a "live" supply into an "on demand" supply, implies buffering
08:16 lizmat at least until the first tap arrives
08:17 lizmat perhaps we need a third state: "paused"
08:17 lizmat as in "on demand until the first tap is made"
08:18 lizmat and perhaps that should be the default for Supply.new
08:24 pochi_ joined #perl6
08:25 masak I don't think buffering should be made the default, no.
08:26 masak there are cases where that would lead to performance/memory problems but have no benefit.
08:26 LLamaRider joined #perl6
08:31 rurban joined #perl6
08:34 spider-mario joined #perl6
08:34 rurban1 joined #perl6
08:35 lizmat masak: agree, but making "paused" the default, would maybe less of a WAT for people getting into Supplies
08:35 lizmat afk for a few hours&
08:36 masak I think there is WAT on either side of that decision. better to teach people about the distinction between "live" and "on demand".
08:37 masak I kind of liked the rule you mentioned, that 'Supply.for' creates an on-demand Supply, whereas 'Supply.new' creates a live one.
08:38 masak of course, we could rename 'Supply.new' to 'Supply.live' instead. not sure it's worth it, though. people tend to expect a .new method on things.
08:44 timotimo the .new could force at least one named to be set or something.
09:20 LLamaRider joined #perl6
09:22 denis_boyun_ joined #perl6
09:24 isacloud__ joined #perl6
09:26 pecastro joined #perl6
09:30 timotimo in order to have libnotify stuff working, it seems like we have to have at least a partial glib binding
09:36 rurban joined #perl6
09:46 thou joined #perl6
09:58 kurahaupo joined #perl6
09:59 cibs joined #perl6
10:11 grep0r joined #perl6
10:16 anaeem1__ joined #perl6
10:22 xfix joined #perl6
10:27 igorsutton_ joined #perl6
10:32 * lizmat is back
10:33 vendethiel joined #perl6
10:33 lizmat after some more thinking, I sort of convinced now we need Supply.new to pause
10:33 lizmat take e.g. the crappy useragent example with IO::Socket::Async.chars_supply
10:34 lizmat that provides a supply with the contents of what is being received on the socket
10:34 lizmat the first thing you do, of course, is to put a tap on it
10:34 lizmat but between the creation of the Supply, and the creation of the tap, the remote client *could* have sent something already
10:34 lizmat so you have a race condition there
10:35 lizmat otoh, you don't want that Supply to be on demand, because it could be a huge file you're receiving
10:36 * sjn thinks about cooperative multitasking for some reason
10:37 masak lizmat: that's a good point.
10:37 masak lizmat: my worry is a use case where there's massive data coming in, none of which we're interested in. let's say a Twitter feed or something.
10:37 lizmat looking at the code in IO::Socket::Async, it is already suffering from that race condition
10:38 rurban joined #perl6
10:38 masak and if pause is the default, the application ends up spending lots of cycles and RAM just storing those things, for (it turns out) no benefit at all.
10:38 lizmat well, maybe it would need a named parameter or another method for creating the base Supply
10:39 sjn doesn't the OS buffer incoming data to some extent?
10:39 lizmat but bytes_supply and chars_supply atm have a race condition
10:39 lizmat wrt to tap
10:40 lizmat sjn: I would think so, yes, and that makes it sort of work at the moment
10:40 lizmat but there *is* a race comdition there: there is nothing guaranteeing there will not be a "more" before there is a tap
10:41 sjn lizmat: can you fix that by changing the order of how things are set up?
10:42 lizmat like doing the tap before the supply is created ?
10:42 sjn mm
10:42 * sjn also usually don't worry about race conditions unless there's real risk for data loss or deadlocks
10:43 sjn doesn't*
10:43 lizmat sjn: we're talking core primitives here
10:43 sjn ok
10:43 lizmat I think we want them to be non-lossy  :-)
10:43 sjn guaranteed non-lossy, you mean :)
10:43 lizmat and guarantee them to be non-lossy  :-)
10:43 sjn yeah
10:44 sjn fair enough
10:51 aindilis` joined #perl6
11:07 fhelmberger joined #perl6
11:15 igorsutton_ joined #perl6
11:15 El_Che joined #perl6
11:27 moritz jnthn++ # star release
11:35 thou joined #perl6
11:38 mhasch joined #perl6
11:38 rurban joined #perl6
11:48 Sqirrel_ joined #perl6
11:50 dayangkun joined #perl6
11:53 rurban joined #perl6
11:56 masak a star was released? yay!
11:57 * masak .oO( it's the best Rakudo Star, ever! )
11:57 nwc10 I didn't see an e-mail yet to p6-language
11:57 nwc10 but I see bloggage
11:57 nwc10 and
11:58 nwc10 yay! to everyone who made it so
11:58 nwc10 jnthn++ # two (and a bit) stars for the price of one
11:58 colomon https://gist.github.com/colomon/8acaa296cbc51f2b7f55 # under parrot.  does this suggest anything to anyone?
11:58 tadzik rakudo all-star
11:59 lvfjf joined #perl6
12:05 colomon Hmmm.  So it appears Just Rakuo It *isn't* on Planet Perl 6.  Any clues how to get it there?
12:07 colomon oh, just saw the link.
12:08 colomon [Coke]: can you pretty please add http://justrakudoit.wordpress.com/ to Planet Perl 6?  Danke.
12:15 Alula joined #perl6
12:26 dalek rakudo/nom: 9e8ba5d | (Elizabeth Mattijsen)++ | src/core/Supply.pm:
12:26 dalek rakudo/nom: Make sure we don't lose more until the first tap
12:26 dalek rakudo/nom:
12:26 dalek rakudo/nom: This is really a proof of concept.  Perhaps this should not be the default.
12:26 dalek rakudo/nom: Perhaps we should do it differently.  What it does do is fix race condition
12:26 dalek rakudo/nom: in e.g. IO::Socket::Async.bytes_supply.tap().  And it now makes sense to spec,
12:26 dalek rakudo/nom: implement and test Supply.(classify|categorize).
12:26 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9e8ba5d5dc
12:26 lizmat jnthn: ^^^ you might want to look at that  :-)
12:26 lizmat and my monologue earlier today
12:27 cognominal__ Tristar, jonathan se fait son cinéma.  :)       # pun on tristar, the movie company   and "se faire son cinéma", meaning dreaming about a situation ; and, literally, cinema meaning movie.
12:28 lizmat commute to NLPW &
12:29 masak NLPW is still going on!?
12:30 FROGGS wow, think of all the beer that they probably drink during that period...
12:31 * masak boggles
12:50 araujo joined #perl6
12:50 araujo joined #perl6
13:07 liztormato joined #perl6
13:08 liztormato masak: Actually it's the NLPM meeting. ;)
13:08 masak oh!
13:08 * masak .oO( it's like NLPW but with the W turned upside-down )
13:09 liztormato Hehe. A bit, yes. Redoing presentations for those who missed them at NLPW
13:09 liztormato Nap&
13:12 guru joined #perl6
13:13 dalek rakudo/nom: 2e6010c | (Tobias Leich)++ | src/core/IO/Spec/Win32.pm:
13:13 dalek rakudo/nom: is-absolute should return True/False according to spec
13:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2e6010ce63
13:17 rurban joined #perl6
13:23 thou joined #perl6
13:28 bluescreen10 joined #perl6
13:29 [Coke] thou/j-spectest - yes. this happens to me as well on a linux box. I end up specifically not using the eval service and running things directly. takes 3 times as long, but it finishes.
13:39 jnap joined #perl6
13:42 domidumont joined #perl6
13:45 btyler joined #perl6
13:47 cognominal__ hi, domidumont :)
13:47 domidumont cognominal__: hello
13:49 igorsutton joined #perl6
13:50 [Coke] colomon: added.
13:55 cognominal__ r: say "domidumon"  #  <- using bots
13:55 camelia rakudo-{parrot,jvm,moar} 9e8ba5: OUTPUT«domidumon␤»
13:55 cognominal__ n: say "domidumont"  #  <- using bots
13:55 camelia niecza v24-109-g48a8de3: OUTPUT«domidumont␤»
14:07 thou joined #perl6
14:10 masak m: say "hi ", d-m("o", "i"), d-m("u", "ont") given sub d-m($middle, $end) { "d{$middle}m{$end}" }
14:10 camelia rakudo-moar 9e8ba5: OUTPUT«hi domidumont␤»
14:11 masak prior art for using 'given' to declare a named sub? I think it's new :P
14:11 masak of course, it doesn't actually *use* 'given', per se.
14:11 masak this would be better:
14:11 masak m: say "hi ", .("o", "i"), .("u", "ont") given sub ($middle, $end) { "d{$middle}m{$end}" }
14:11 camelia rakudo-moar 9e8ba5: OUTPUT«hi domidumont␤»
14:13 jnap joined #perl6
14:14 masak m: my @matrix = [[<o i>], [<u ont>]]; say "hi ", @matrix.map({ "d{.[0]}m{.[1]}" }).join
14:14 camelia rakudo-moar 9e8ba5: OUTPUT«hi do imu ont␤»
14:14 masak oh, argh.
14:14 masak m: my @matrix = [<o i>], [<u ont>]; say "hi ", @matrix.map({ "d{.[0]}m{.[1]}" }).join
14:14 camelia rakudo-moar 9e8ba5: OUTPUT«hi domidumont␤»
14:15 masak it's not the first time I make that mistake. neither will it be the last ;)
14:15 masak similarly, I'm not the first time make that mistake; neither will I be the last...
14:16 PerlJam that reminds me of the 15 minutes I spent yesterday because I'd written  @objects.sort: { +*.method }  and was confused about why it wasn't sorting.
14:17 * domidumont feels like a labrat ;-)
14:17 masak m: my @matrix = [<o i>], [<u ont>]; say "hi ", @matrix>>.&f.join given sub f($_) { "d{@_[0]}m{@_[1]}" }
14:17 camelia rakudo-moar 9e8ba5: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/Fnso224yme�Placeholder variable @_ may not be used here because the surrounding block takes no signature�at /tmp/Fnso224yme:1�------> [32mix>>.&f.join given sub f($_) { "d{@_[0]}[33m�[31m…»
14:17 masak m: my @matrix = [<o i>], [<u ont>]; say "hi ", @matrix>>.&f.join given sub f($_) { "d{.[0]}m{.[1]}" }
14:17 camelia rakudo-moar 9e8ba5: OUTPUT«hi domidumont␤»
14:17 masak m: my @matrix = [<l b>], [<r t>]; say "hi ", @matrix>>.&f.join given sub f($_) { "{.[0]}a{.[1]}" }
14:18 camelia rakudo-moar 9e8ba5: OUTPUT«hi labrat␤»
14:18 * masak grins
14:18 thou next step: get camelia to grin
14:19 moritz m: my @matrix = [<l b>], [<r t>]; say "hi ", @matrix>>$_.join given sub f($_) { "{.[0]}a{.[1]}" }
14:19 camelia rakudo-moar 9e8ba5: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/d9pqo1_7ES�Preceding context expects a term, but found infix > instead�at /tmp/d9pqo1_7ES:1�------> [32m= [<l b>], [<r t>]; say "hi ", @matrix>>[33m�[31m$_.join given sub f($_) { "{.[0]}a…»
14:19 moritz m: my @matrix = [<l b>], [<r t>]; say "hi ", @matrix>>.$_.join given sub f($_) { "{.[0]}a{.[1]}" }
14:19 masak moritz: I was thinking the same thing!
14:19 camelia rakudo-moar 9e8ba5: OUTPUT«hi labrat␤»
14:19 PerlJam thou: but then she'll show her fangs and that might scare people
14:19 moritz masak: :-)
14:19 moritz m: my @matrix = [<l b>], [<r t>]; say "hi ", @matrix>>.$_.join given sub ($_) { "{.[0]}a{.[1]}" }
14:19 camelia rakudo-moar 9e8ba5: OUTPUT«hi labrat␤»
14:19 moritz now without the sub name.
14:20 lvfjf joined #perl6
14:20 masak m: say "hi ", ([<l b>], [<r t>])>>.$_.join given sub ($_) { "{.[0]}a{.[1]}" }
14:20 camelia rakudo-moar 9e8ba5: OUTPUT«hi labrat␤»
14:20 masak now without variables.
14:20 moritz ... except $_
14:20 masak I dig the two-layered use of $_.
14:21 masak oh, yeah, $_
14:21 [Coke] "that's not a REAL variable" <scottish problem>
14:21 masak m: say "hi ", ([<l b>], [<r t>])>>.$_.join given { "{.[0]}a{.[1]}" }
14:21 camelia rakudo-moar 9e8ba5: OUTPUT«hi labrat␤»
14:21 masak oh, better.
14:21 masak moritz++ :)
14:21 masak there's no implicit way to do .$_ , though
14:21 moritz no .() ? :-)
14:22 masak doesn't mean what you think it does :P
14:22 JimmyZ timotimo: http://www.php-oa.com/2014/04/25/optimization-concurrency-and-moar.html
14:22 JimmyZ chinese version
14:22 masak m: sub postfix:<!>($x) { $x.$_ }; say "hi ", ([<l b>], [<r t>])>>!.join given { "{.[0]}a{.[1]}" }
14:22 camelia rakudo-moar 9e8ba5: OUTPUT«hi ␤»
14:22 masak awww
14:22 masak so close.
14:22 masak but the sub declares its own $_, I guess
14:22 JimmyZ and p6maven has chinese version too
14:23 masak JimmyZ: did you translate it?
14:23 JimmyZ my friends is translating <<Using Perl 6 boo>>
14:24 JimmyZ masak: nope, it's my friends.
14:24 masak friends++
14:24 JimmyZ jnthn++ maybe see him in beijing
14:25 donaldh joined #perl6
14:27 xenoterracide joined #perl6
14:29 FROGGS m: say "hi ", ([<l b>], [<r t>])>>.map(*~'a'~*).join
14:29 camelia rakudo-moar 9e8ba5: OUTPUT«hi labrat␤»
14:31 timotimo JimmyZ: oh, thanks. should i link to that site from my p6weekly page?
14:31 timotimo AFK for now, though
14:32 PerlJam reading S17, I keep expecting Supply.more to be called Supply.pump
14:33 timotimo JimmyZ: why is the domain "php-oa"?
14:33 thou m: say "hi ", (*~"a"~* for <l b>, <r t>)
14:33 camelia rakudo-moar 2e6010: OUTPUT«hi lab rat␤»
14:34 FROGGS m: say "hi ", |(*~"a"~* for <l b>, <r t>)
14:34 camelia rakudo-moar 2e6010: OUTPUT«hi labrat␤»
14:34 PerlJam and FROGGS wins!  :)
14:35 FROGGS m: say "hi ", |(*~"a"~* for < l b r t >)
14:35 camelia rakudo-moar 2e6010: OUTPUT«hi labrat␤»
14:35 FROGGS another byte shoved off :P
14:35 cosimo joined #perl6
14:36 domidumont joined #perl6
14:37 masak m: say |(*~"a"~* for <<h 'i ' l b r t >>)
14:37 camelia rakudo-moar 2e6010: OUTPUT«hai labrat␤»
14:38 census joined #perl6
14:39 treehug88 joined #perl6
14:42 timotimo m: say "hi labrat" # shortest so far
14:42 camelia rakudo-moar 2e6010: OUTPUT«hi labrat␤»
14:42 PerlJam heh
14:43 FROGGS n: my &op=*~"a"~*;say "hi ",[[&op]] <l br t>
14:43 camelia niecza v24-109-g48a8de3: OUTPUT«hi labrat␤»
14:43 masak timotimo: shame you blew it with that long, unnecessary comment :P
14:44 timotimo masak: if you look closely, i think i didn't
14:44 masak troo
14:44 FROGGS n: say "hi ", [[&(*~"a"~*)]] <l br t>
14:44 camelia niecza v24-109-g48a8de3: OUTPUT«hi labrat␤»
14:44 hoelzro ahoy #perl6
14:44 masak but you could've had it much shorter :)
14:44 masak ahoy hoelzro
14:44 FROGGS hi hoelzro
14:44 masak n: say "hi ",[[&$_]] <l br t> given *~"a"~*
14:45 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0m��Unable to parse bracketed infix at /tmp/m8Iq2aAgMO line 1:�------> [32msay "hi ",[[[33m�[31m&$_]] <l br t> given *~"a"~*[0m�Couldn't find final ']'; gave up at /tmp/m8Iq2aAgMO line 1:�------> [32msay "h…»
14:45 masak aww :)
14:45 timotimo JimmyZ: for a moment i derped and thought that was a translation of a p6weekly post i did, but it obviously isn't :)
14:45 timotimo but it should send a couple of chinese viewers to my p6weekly; i hope they can use the information in there
14:46 timotimo hmm. my visitor count has been higher two weeks ago and earlier ... :\
14:50 JimmyZ timotimo: the website auther was using php. and now perl
14:50 JimmyZ author
14:51 JimmyZ timotimo: oh, it's jnthn++'s one, I just see he mentioned you..
14:56 timotimo yup
14:59 timotimo if i want to have more readers, i should start writing more controversial stuff, start some flamewars, ... :)
14:59 JimmyZ we 're your readers :P
15:00 JimmyZ I have many chinese friends who read your post
15:00 timotimo i'm glad to hear that!
15:00 JimmyZ ;)
15:01 timotimo do they have to use a proxy? wordpress claims it was 6 viewers over the last 30 days, i wonder if that's unique viewers over that time
15:01 timotimo oh, "views" not "viewers"
15:02 JimmyZ not all, we can't visit wordpress, so we always visit http://planeteria.org/perl6/
15:02 timotimo ah!
15:02 timotimo i don't like the great firewall of china :(
15:02 JimmyZ but I'm in philippine now, so I can
15:03 FROGGS timotimo: I can't imagine that there are only six views...
15:03 FROGGS I guess you already have six views within an hour after posting that link here
15:03 timotimo only from china
15:03 JimmyZ I guess many people read it from http://planeteria.org/perl6/
15:04 JimmyZ 6 viewers, it may be me
15:04 JimmyZ :P
15:04 JimmyZ I have a proxy
15:06 JimmyZ but I sent your post to my friend is not the wordpress link
15:06 grondilu joined #perl6
15:06 grondilu r: say { foo => .4 }.Mix;
15:06 camelia rakudo-{parrot,jvm,moar} 2e6010: OUTPUT«mix(foo(0.4))␤»
15:06 grondilu r: say { foo => .4 }.Mix.pick;
15:06 camelia rakudo-moar 2e6010: OUTPUT«===SORRY!===␤.pick is not supported on a Nil␤»
15:06 camelia ..rakudo-parrot 2e6010: OUTPUT«.pick is not supported on a Nil␤  in method gist at gen/parrot/CORE.setting:12677␤  in method gist at gen/parrot/CORE.setting:1056␤  in sub say at gen/parrot/CORE.setting:13605␤  in block  at /tmp/tmpfile:1␤␤»
15:06 camelia ..rakudo-jvm 2e6010: OUTPUT«.pick is not supported on a Nil␤  in method gist at gen/jvm/CORE.setting:12654␤  in sub say at gen/jvm/CORE.setting:13561␤  in block  at /tmp/tmpfile:1␤␤»
15:07 dalek rakudo/nom: 148fb6e | (Tobias Leich)++ | src/core/IO/Spec/Win32.pm:
15:07 dalek rakudo/nom: distinguish between different kinds of abs paths on win32
15:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/148fb6ed1a
15:08 Ven joined #perl6
15:08 Ven m: say "foo"~*~* for <a b c> Z <x y z>;
15:08 camelia rakudo-moar 2e6010: OUTPUT«WhateverCode.new()␤WhateverCode.new()␤WhateverCode.new()␤WhateverCode.new()␤WhateverCode.new()␤WhateverCode.new()␤»
15:09 colomon [Coke]++
15:13 hoelzro is there a good idiom for slurping a file into an array, where I have one line by index?
15:13 Ven m: say ("foo"~*~* for <a b c> Z <x y z>);
15:13 camelia rakudo-moar 2e6010: OUTPUT«fooax fooby foocz␤»
15:13 hoelzro I'm trying my @lines = slurp($filename)
15:13 hoelzro I figured explicitly splitting wouldn't be necessary
15:13 Ven not sure how it failed so the first time though
15:14 molaf joined #perl6
15:17 chenryn joined #perl6
15:18 masak hoelzro: how about my @lines = lines($filename) ?
15:18 yangmeijian joined #perl6
15:18 masak er, lines($filename.IO)
15:18 hoelzro oh, I didn't know about the lines builtin
15:18 masak it's quite handy.
15:18 masak it used to be spelled prefix:<=>
15:18 * masak shudders
15:18 Ven `=<>`
15:18 masak aye.
15:19 masak looks like an alien jellyfish from some old ASCII space game.
15:19 timotimo so ... ="foo.txt"?
15:22 Ven .oO( I read that as "infix jellyfish" )
15:23 hoelzro is there a way to get the current time including microseconds?
15:23 timotimo m: say now; say time;
15:23 camelia rakudo-moar 2e6010: OUTPUT«Instant:1399389825.756710␤1399389790␤»
15:23 hoelzro ah, thanks timotimo
15:23 timotimo ... huh?!
15:23 timotimo is that our float printing going nuts again?
15:24 igorsutton joined #perl6
15:24 timotimo m: say now mod 60; say time mod 60;
15:24 camelia rakudo-moar 2e6010: OUTPUT«Cannot call 'infix:<div>'; none of these signatures match:␤:(Int:D \a, Int:D \b)␤:(int $a, int $b)␤  in sub infix:<mod> at src/gen/m-CORE.setting:4422␤  in block  at /tmp/2yHY9Al8Aq:1␤␤»
15:24 timotimo m: say now.Int mod 60; say time.Int mod 60;
15:24 camelia rakudo-moar 2e6010: OUTPUT«3␤28␤»
15:24 dalek rakudo/nom: 1ccc4d3 | (Tobias Leich)++ | src/core/IO/Spec/Unix.pm:
15:24 dalek rakudo/nom: also cleanup the base/cwd in IO::Spec::Unix
15:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1ccc4d3eb0
15:24 PerlJam m: say now; say time;
15:24 camelia rakudo-moar 2e6010: OUTPUT«Instant:1399389935.674809␤1399389900␤»
15:25 PerlJam Why such a big difference between those numbers?
15:25 timotimo i want to know the same thing
15:25 timotimo m: say now.Num - time
15:25 camelia rakudo-moar 2e6010: OUTPUT«35.0602767467499␤»
15:25 timotimo m: say now.Num - time
15:25 camelia rakudo-moar 2e6010: OUTPUT«35.8219721317291␤»
15:26 FROGGS p: say now.Num - time
15:26 camelia rakudo-parrot 2e6010: OUTPUT«35.1420454978943␤»
15:26 PerlJam a constantish 35 seconds is weird
15:26 timotimo .... what.
15:26 FROGGS p: say now.Num - time
15:26 camelia rakudo-parrot 2e6010: OUTPUT«35.1477427482605␤»
15:26 FROGGS n: say now.Num - time
15:26 camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Unable to resolve method Num in type Instant␤  at /tmp/3jQ5YHBeHO line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4596 (module-CORE @ 576)…»
15:26 FROGGS j: say now.Num - time
15:26 camelia rakudo-jvm 2e6010: OUTPUT«35.49300003051758␤»
15:27 timotimo n: say now - time
15:27 camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Cannot use value like Instant as a number␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /home/p6eval/niecza/lib/CORE.setting line 300 (Any.Numeric @ 6) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /tmp/2Yst1YFL7v line 1 …»
15:27 timotimo hmm
15:27 FROGGS ~/dev/rakudo$ perl6-m -e 'say now.Num - time'
15:27 FROGGS 35.7231543064117
15:27 FROGGS even locally
15:27 timotimo weird timezones? :P
15:27 FROGGS *g*
15:28 FROGGS bbiab
15:28 PerlJam leap seconds maybe?
15:28 FROGGS that many? no
15:33 jnthn evening, #perl6
15:33 timotimo hey jnthn :)
15:33 timotimo you said you'd have tuits tonight? :D
15:33 * jnthn yawns
15:33 jnthn :P
15:33 hoelzro ahoy jnthn
15:33 jnthn ahoj
15:33 jnthn Well, I don't have $dayjob tasks to do this evening at least :)
15:34 jnthn I do plan to at least review the nwc10++ patches to MoarVM
15:34 Ulti one of the reasons I like Perl6!
15:34 Ulti p6: "MIHĂŞAN".lc
15:35 camelia rakudo-jvm 148fb6: OUTPUT«(timeout)»
15:35 camelia ..rakudo-{parrot,moar} 148fb6, niecza v24-109-g48a8de3: ( no output )
15:35 PerlJam aye, it is leap seconds ... tai-utc has our sub initial-offset() { 10 } and there are 25 leap-second-dates
15:36 thou p6: "MIHĂŞAN".lc.say
15:36 hoelzro oh, I forgot to congratulate everyone here on the latest Rakudo * release!
15:36 camelia rakudo-{parrot,jvm,moar} 148fb6, niecza v24-109-g48a8de3: OUTPUT«mihăşan␤»
15:36 hoelzro hoelzro.congratulate(*)
15:39 PerlJam r: my ($t,$n) = time, now;  say $t; say $n; say Instant.from-posix($t);
15:39 camelia rakudo-moar 148fb6: OUTPUT«1399390747␤Instant:1399390782.213589␤Instant:1399390782␤»
15:39 camelia ..rakudo-jvm 148fb6: OUTPUT«1399390746␤Instant:1399390781.659␤Instant:1399390781␤»
15:39 camelia ..rakudo-parrot 148fb6: OUTPUT«1399390744␤Instant:1399390779.483663␤Instant:1399390779␤»
15:40 timotimo so should we be putting the leap seconds into both?
15:40 PerlJam no, I think it's right (modulo that initial offset which I'm not sure about).
15:41 timotimo hmm
15:41 timotimo that could easily give people WAT if they mix time and now.
15:43 thou My first reaction is that now shouldn't use TAI, it should use UTC. TAI should be requested explicitly via some module.
15:45 PerlJam interestingly, I was thinking we should make people say POSIX::time to emphasize that it's not UTC or TAI
15:45 thou and shouldn't TAI be *behind* UTC, not ahead of it? Or am I confused....
15:45 PerlJam no, you're confused
15:45 PerlJam TAI has leap seconds, UTC doesn't.
15:47 jnthn .tell lizmat Supply itself should not be doing that kind of race protection. It does need putting somewhere, but not *there*. async_chars and async_bytes are not meant to use Supply directly in the end, for the reason you mentioned and also the other race between packets.
15:47 yoleaux jnthn: I'll pass your message to lizmat.
15:48 thou 35 leap seconds total since 1972 is correct: http://tycho.usno.navy.mil/leapsec.html
15:51 jnthn I'm sure that those 35 leap seconds make a big and important difference to our lives...
15:51 PerlJam when you're mixing Instant and time(), it might.
15:52 PerlJam "We're launching the rocket in T-30 seconds"  "Wait...the rocket launched 5 seconds ago!"
15:53 jnthn .tell lizmat in .Net there's some notion of Subject types whihc deal wiht this sort of problem; we absolutely do *not* want to steal that naming, but their semantics can be interesting to study.
15:53 yoleaux jnthn: I'll pass your message to lizmat.
15:56 lizmat joined #perl6
16:03 PerlJam Is there some prior art for winner in other languages that I can read about/
16:03 PerlJam ?
16:06 PerlJam (I'm having trouble grokking what exactly can and should go in the X and Y slots in  winner X { more Y { ... } }  so I think I need a different perspective or more information)
16:07 timotimo aye, the winner synatx is kind of twofold
16:07 timotimo or ... it was at some point
16:07 timotimo i once implemented an early version of it, but that was superceded, i may have to read the current spec before i actually try to explain
16:10 kaleem joined #perl6
16:10 lizmat_ joined #perl6
16:12 timotimo i'm glad to report that the advent calendar still pulls in about 40-50 views per day
16:12 PerlJam The last example before the section on Supplies makes winner look quite a bit like given/when.  gather loop { given $channel { when .more { ... } when .done { ... } } }
16:15 PerlJam And what does the * really mean in   winner * { ... }  ?
16:17 timotimo it means you don't supply a candidate list up front
16:17 timotimo instead, the candidates are taken from the internal blocks
16:18 PerlJam so, would  winner * { more * { ... } } be a valid construction?
16:18 timotimo no
16:18 timotimo well, it could go for Promise.^instances and see there :P
16:18 timotimo or inspect MY::
16:18 timotimo but no
16:20 PerlJam So ... it seems a tad fiddly to me, but I don't know if that's just my ignorance or if there's a design problem.
16:27 hoverboard joined #perl6
16:28 timotimo well, winner is kind of like "select" except instead of giving you all the ready fd's, it executes a block directly and bails out
16:28 timotimo the desire to do winner * came from the following:
16:29 timotimo winner $p1, $p2, $c1, $c2 { done $p1 { ... }; done $p2 { ... }; more $c1 { ... }; more $c2 { ... }; wait 0 { ... } }
16:29 timotimo having to specify the promises/channels multiple times
16:29 timotimo i seem to recall i was among the people who wanted the change (introducing *, that is)
16:29 timotimo and since you can have the candidate list up front, you can also react to "any channel more-ing" or "any promise done-ing" with more * and done *
16:29 timotimo bbl
16:30 lizmat joined #perl6
16:30 7JTAAP74D joined #perl6
16:33 nwc10 p6: say $*VERSION
16:33 nwc10 r: say $*VERSION
16:33 camelia rakudo-jvm 1ccc4d: OUTPUT«(timeout)»
16:33 camelia ..rakudo-moar 1ccc4d: OUTPUT«===SORRY!===␤Dynamic variable $*VERSION not found␤»
16:33 camelia ..rakudo-parrot 1ccc4d: OUTPUT«Dynamic variable $*VERSION not found␤  in method gist at gen/parrot/CORE.setting:12677␤  in method gist at gen/parrot/CORE.setting:1056␤  in sub say at gen/parrot/CORE.setting:13607␤  in block  at /tmp/tmpfile:1␤␤»
16:33 camelia ..niecza v24-109-g48a8de3: OUTPUT«(Any)␤»
16:33 camelia rakudo-moar 1ccc4d: OUTPUT«===SORRY!===␤Dynamic variable $*VERSION not found␤»
16:33 camelia ..rakudo-jvm 1ccc4d: OUTPUT«Dynamic variable $*VERSION not found␤  in method gist at gen/jvm/CORE.setting:12654␤  in sub say at gen/jvm/CORE.setting:13563␤  in block  at /tmp/tmpfile:1␤␤»
16:33 camelia ..rakudo-parrot 1ccc4d: OUTPUT«Dynamic variable $*VERSION not found␤  in method gist at gen/parrot/CORE.setting:12677␤  in method gist at gen/parrot/CORE.setting:1056␤  in sub say at gen/parrot/CORE.setting:13607␤  in block  at /tmp/tmpfile:1␤␤»
16:36 denis_boyun joined #perl6
16:37 thou PerlJam: I think I agree with you about POSIX::time, after reading more on it. Any bare built-in functions should use UTC (including now(), time()). If POSIX or TAI is needed, those could be specifically requested.
16:39 * lizmat greets #perl6 from the NLPM meeting
16:39 yoleaux 15:47Z <jnthn> lizmat: Supply itself should not be doing that kind of race protection. It does need putting somewhere, but not *there*. async_chars and async_bytes are not meant to use Supply directly in the end, for the reason you mentioned and also the other race between packets.
16:39 yoleaux 15:53Z <jnthn> lizmat: in .Net there's some notion of Subject types whihc deal wiht this sort of problem; we absolutely do *not* want to steal that naming, but their semantics can be interesting to study.
16:39 masak jnthn++ # separation of concerns
16:40 lizmat jnthn: will look later, now nom nom and presentations and decommute&
16:45 TimToady .oO(sometimes "separation of concerns" sounds a little like "bolted on after"... :)
16:45 kurahaupo joined #perl6
16:53 chenryn p6: say $];say $*PERL_VERSION;
16:53 camelia rakudo-{parrot,jvm,moar} 1ccc4d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unsupported use of $] variable; in Perl 6 please use $*PERL_VERSION�at /tmp/tmpfile:1�------> [32msay $][33m�[31m;say $*PERL_VERSION;[0m�»
16:53 camelia ..niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0m��Unsupported use of $] variable; in Perl 6 please use $*PERL_VERSION at /tmp/tmpfile line 1:�------> [32msay $][33m�[31m;say $*PERL_VERSION;[0m��Parse failed��»
16:53 anaeem1 joined #perl6
16:54 chenryn p6: say $*PERL_VERSION;
16:54 camelia rakudo-jvm 1ccc4d: OUTPUT«Dynamic variable $*PERL_VERSION not found␤  in method gist at gen/jvm/CORE.setting:12654␤  in sub say at gen/jvm/CORE.setting:13563␤  in block  at /tmp/tmpfile:1␤␤»
16:54 camelia ..rakudo-moar 1ccc4d: OUTPUT«===SORRY!===␤Dynamic variable $*PERL_VERSION not found␤»
16:54 camelia ..rakudo-parrot 1ccc4d: OUTPUT«Dynamic variable $*PERL_VERSION not found␤  in method gist at gen/parrot/CORE.setting:12677␤  in method gist at gen/parrot/CORE.setting:1056␤  in sub say at gen/parrot/CORE.setting:13607␤  in block  at /tmp/tmpfile:1␤␤»
16:54 camelia ..niecza v24-109-g48a8de3: OUTPUT«(Any)␤»
16:54 tadzik heh
16:54 jnthn hah
16:55 jnthn m: say $*PERL
16:55 camelia rakudo-moar 1ccc4d: OUTPUT«{"compiler" => {"name" => "rakudo", "build-date" => "2014-05-06T16:18:21Z", "ver" => "2014.04-185-g1ccc4d3", "release-number" => "", "codename" => ""}, "name" => "rakudo"}␤»
16:55 tadzik "pepsi or coke?" "pepsi" "we don't have pepsi" "then coke" "we don't have coke either"
16:56 PerlJam why isn't "version" spelled out like the others?  that's weird.
16:56 TimToady PerlJam: the whole purpose of now() is to be not-UTC
16:57 TimToady UTC can contain seconds that are 2 seconds long, and this must not stand
16:59 TimToady well, UTC "handles" leap seconds, but the OS misinterprets it as long seconds when it comes to time()
16:59 thou TimToady: I am ignorant, but read that UTC has a 23:59:60 second, not a 2-second-long 23:59:59 second
17:00 thou Ah, OK
17:00 TimToady anyway, the point of Instants is to be completely independent of any notion of cultural time apart from the length of a second
17:01 TimToady as soon as you start introducing cultural notions, people get very confused very fast
17:02 treehug8_ joined #perl6
17:02 TimToady Instants don't even have an epoch, the way we've defined them.
17:04 * Ven convinced yet another friend that perl 6 is pretty great
17:04 Ven ... he actually came back to me and said "yeah, a friend told me about python's greatness for one-liners, so I showed him the p6 stuff you told me about yesterday"
17:05 hoverboard joined #perl6
17:05 dalek joined #perl6
17:08 timotimo as a former (and still occasionally) python enthusiast ... yeah ... no ...
17:12 benabik joined #perl6
17:22 berekuk joined #perl6
17:24 tadzik python and one-liners?
17:25 dalek rakudo-star-daily: 4f61c75 | coke++ | log/ (5 files):
17:25 dalek rakudo-star-daily: today (automated commit)
17:25 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/4f61c75e9a
17:25 dalek perl6-roast-data: d5d4349 | coke++ | / (6 files):
17:25 dalek perl6-roast-data: today (automated commit)
17:25 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/d5d4349fb8
17:26 TimToady you see, there's this pressure in python to do things as one-liners so that you don't have to think about indentation :P
17:26 [Coke] *facepalm*
17:26 [Coke] rakudo.parrot is now building and passing tests again.
17:26 [Coke] rakudo.jvm died.
17:27 camelia joined #perl6
17:27 domidumont joined #perl6
17:27 [Coke] #
17:27 [Coke] # There is insufficient memory for the Java Runtime Environment to continue.
17:27 [Coke] # Native memory allocation (malloc) failed to allocate 156237824 bytes for committing reserved memory.
17:27 [Coke] # An error report file with more information is saved as:
17:28 FROGGS joined #perl6
17:33 Ven TimToady: that's a pretty bad one :)
17:33 Ven (especially from you :P)
17:35 [Coke] new atom editor needs a perl 6 syntax. has a neat feature where you can say "git blame this on github".
17:39 domidumont joined #perl6
17:39 SamuraiJack joined #perl6
17:40 guru joined #perl6
17:40 Rotwang joined #perl6
17:41 FROGGS damn, rakudo has role IO::FileTestable where the spec mentions IO::FileTests
17:42 FROGGS n: say IO::FileTestable
17:42 camelia niecza v24-109-g48a8de3: OUTPUT«(FileTestable)␤»
17:42 FROGGS n: say IO::FileTests
17:42 camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Any␤  at /tmp/t0BOhG3uxZ line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4596 (module…»
17:42 FROGGS P: say IO::FileTests
17:42 camelia pugs: OUTPUT«*** No such subroutine: "&IO::FileTests"␤    at /tmp/FsMMyMSs0m line 1, column 5 - line 2, column 1␤»
17:42 FROGGS P: say IO::FileTestable
17:42 camelia pugs: OUTPUT«*** No such subroutine: "&IO::FileTestable"␤    at /tmp/vWqOcRhh0C line 1, column 5 - line 2, column 1␤»
17:45 ggoebel111113 joined #perl6
17:46 virtualsue joined #perl6
17:47 ggoebel111114 joined #perl6
17:50 FROGGS TimToady: here you mention that -s if about a *path*, where P5 talks about *files*: http://perlcabal.org/syn/S32/IO.html#line_558
17:50 FROGGS TimToady: I want to spec .IO.z, and wonder if this should return True for something else other than files
17:51 FROGGS *empty files
17:54 japhb joined #perl6
18:11 raiph joined #perl6
18:12 Sqirrel joined #perl6
18:15 hoelzro there's no Perl 6 profiler aside from native level profiling, is there?
18:15 hoelzro I have a one liner that's taking quite some time, and I'd like to see the breakdown of time spent in src/core/* files
18:15 berekuk joined #perl6
18:17 [Coke] ISTR there was a profile that took advantage of parrot's --profile..
18:17 raiph hoelzro: http://irclog.perlgeek.de/moarvm/2014-05-04#i_8677255
18:17 hoelzro thanks [Coke], raiph
18:17 hoelzro [Coke]: btw, are you planning on continuing with the Mojolicious stuff?
18:18 hoelzro I have a small Perl 5 application I wrote, and I'd like to port it to Perl 6
18:22 raiph lizmat, jnthn, anyone: I'm thinking and hoping the lastest R*, with the MoarVM backend, will compile the code in jnthn's recent reactive programming presentation. Is there anything obvious you know I'm missing before I publish something that makes that assumption?
18:25 [Coke] hoelzro: yes. My free time between now and the end of June is gone, however.
18:25 hoelzro ah ha
18:25 [Coke] Happy to give anyone commit privs to that repo if they wish to poke at it in the meantime.
18:25 hoelzro [Coke]: do you have a TODO list for it?
18:25 hoelzro I might be able to allocate some tuits to it
18:26 [Coke] I was still at the "go through the utility methods and port those". all the recent async IO stuff was making me hope I could do a lot more, though.
18:27 hoelzro alright
18:27 [Coke] I basically got really motivated for 2 days an--SQUIRREL!
18:27 benabik joined #perl6
18:28 SamuraiJack joined #perl6
18:30 hoelzro haha
18:31 hoelzro sounds like every project I ever start =P
18:32 PerlJam sounds like a common affliction
18:32 Sqirrel I've got nothing to do with it
18:36 telex joined #perl6
18:36 btyler hoelzro: sri mentioned thinking about what a p6 mojo might look like, and that it was unlikely to end up being a straight port -- might be worth sounding out his thoughts on the matter if you think you're going to dive into mojo6
18:36 hoelzro btyler: yeah, I figured it wouldn't be too straightforward
18:37 hoelzro I'll wait for _sri to chime in, then =)
18:38 fhelmberger joined #perl6
18:38 ajr_ Anybody doing work on the ARM side might want to take a look at the pcDuino http://www.pcduino.com/ to accelarate development over the Pi.
18:41 FROGGS nwc10: ^^ # that is for you
18:43 _sri btyler/hoelzro: yea, you *could* do a quick port, i don't think it would have much of a future though, perl6 has too many cool new features that just wouldn't be utilized... a real redesign would be better, but takes time
18:43 hoelzro what would be the best way to decode a Buf of length 4 into an Int?
18:43 hoelzro _sri: ok
18:50 raiph joined #perl6
18:51 ggoebel111115 joined #perl6
18:52 FROGGS m: say :16('0x' ~ buf8.new( 0, 0, 128, 0).list>>.fmt('%02x').join)
18:52 camelia rakudo-moar 1ccc4d: OUTPUT«32768␤»
18:52 FROGGS hoelzro: but I don't if that is intended to be the best way :o)
18:53 hoelzro heh
18:53 hoelzro thanks for the input, either way =)_
18:54 FROGGS v5 has a sub unpack wich would be handy here
18:54 masak raiph: seems it would be quite straightforward to simply test jnthn's code from the slides, no?
18:54 hummeleBop joined #perl6
18:59 hoelzro I just noticed in the latest MVM Star that the modules aren't precompiled into moarvm files; why is this?
19:01 masak hoelzro: doesn't 'make' usually precompile modules?
19:02 hoelzro yeah, which is why I'm confused
19:02 hoelzro I only see the .pm files
19:02 hoelzro which is fine, but it probably increases load time
19:02 masak oh, you ran `make` already?
19:04 Sqirrel joined #perl6
19:04 FROGGS joined #perl6
19:06 hoelzro well, I built a package for the 2014.04 Rakudo star
19:06 hoelzro which ran make
19:06 [Coke] sri: I'd love to have that chat about mojo6 with you. I'll ring you up in about 6 weeks. :)
19:06 [Coke] (in the meantime, as time permits, i'll keep doing minor stupid stuff that requires no real thought)
19:07 Juerd Random thought: %foo{ $foo :default('x') }   as a shortcut for   exists %foo{ $foo } ?? %foo{ $foo } !! %foo<x>
19:07 dwarring joined #perl6
19:10 PerlJam Juerd: btw, you mean %foo{$foo}:exists these days
19:12 araujo joined #perl6
19:12 araujo joined #perl6
19:12 colomon wouldn't that might be %foo{$foo} // 'x'  ?
19:13 thou %foo{$foo} // %foo<x>
19:13 colomon ah, right
19:13 thou but :exists instead of defined test
19:14 dalek rakudo/nom: 4715afc | (Tobias Leich)++ | src/core/IO.pm:
19:14 dalek rakudo/nom: .IO.z is now only True for empty files, not dirs
19:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4715afcbe3
19:14 colomon hmmm, I guess a hash value can exist but be undefined?
19:14 FROGGS yes
19:14 dmol joined #perl6
19:14 FROGGS %foo<bar> = Int for example
19:15 PerlJam Seems a little to special-purposey to me.  Perhaps a more real example would help?
19:15 hoverboard joined #perl6
19:16 jnthn hoelzro: I think make modules-install or so does it, iirc...
19:16 jnthn Which a make install should iirc trigger
19:16 hoelzro hmm
19:16 hoelzro I can look into that later
19:17 jnthn When I was looking at it I'm sure I had it pre-compile the modules
19:19 masak Juerd: at first glance, it feels like that adverb is adverbing the wrong thing.
19:20 PerlJam Juerd: wait ... don't we already have my %h is default("blah")?  Sure you can do my %h is default({ %h<blah> }());
19:21 masak m: sub postcircumfix:<{{ }}>(%c, $k, $d) { %c{$k} :exists ?? %c{$k} !! $d }; my %h = foo => 42; say %h{{"foo"}}; say %h{{"bar"}}
19:21 camelia rakudo-moar 1ccc4d: OUTPUT«===SORRY!===␤Cannot find method 'orig'␤»
19:21 PerlJam (or soemthing like that)
19:21 masak aww
19:21 FROGGS PerlJam: if you keep a hash of name-to-class mapping, then its values where all type object and therefore undef
19:21 masak that error message leaves something to be desired, too.
19:21 masak m: sub postcircumfix:<{{ }}>(%c, $k, $d) { %c{$k} :exists ?? %c{$k} !! $d }; my %h = foo => 42; say %h{{"foo", 5}}; say %h{{"bar", 5}}
19:21 camelia rakudo-moar 1ccc4d: OUTPUT«Not enough positional parameters passed; got 2 but expected 3␤  in sub postcircumfix:<{{ }}> at /tmp/ZY3tig4mLB:1␤  in block  at /tmp/ZY3tig4mLB:1␤␤»
19:22 masak m: sub postcircumfix:<{{ }}>(%c, :($k, $d)) { %c{$k} :exists ?? %c{$k} !! $d }; my %h = foo => 42; say %h{{"foo", 5}}; say %h{{"bar", 5}}
19:22 camelia rakudo-moar 1ccc4d: OUTPUT«Not enough positional parameters passed; got 0 but expected 2 in sub-signature␤  in sub postcircumfix:<{{ }}> at /tmp/Efju3bJTCm:1␤  in block  at /tmp/Efju3bJTCm:1␤␤»
19:22 * masak gives up
19:26 retupmoca m: buf8.new(0,0,128,0).unpack('N')
19:26 camelia rakudo-moar 1ccc4d: ( no output )
19:27 retupmoca m: buf8.new(0,0,128,0).unpack('N').say
19:27 camelia rakudo-moar 1ccc4d: OUTPUT«32768␤»
19:27 FROGGS ohh, we have that method, nice
19:28 retupmoca m: say pack('N', 32768)
19:28 camelia rakudo-moar 1ccc4d: OUTPUT«Buf:0x<00 00 80 00>␤»
19:29 dalek rakudo/nom: f1dd8a8 | (Elizabeth Mattijsen)++ | src/core/Mixy.pm:
19:29 dalek rakudo/nom: Fix error message on Mixy.(pick|grab)
19:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f1dd8a8160
19:30 PerlJam m: my %h is default(%h<foo>);  # surely this is a bug?
19:30 camelia rakudo-moar 1ccc4d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/HtntR_h3tNâ�¤Variable '%h' is not declaredâ�¤at /tmp/HtntR_h3tN:1â�¤------> [32mmy %h is default(%h<foo>[33mâ��[31m);  # surely this is a bug?[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
19:31 masak PerlJam: yes. it's a bug by the parsing principles of Perl 6, I would say.
19:31 masak PerlJam: as in, %h should be defined by that point.
19:31 masak s/defined/declared/
19:32 masak that's why something like this works:
19:32 masak m: my %h = %h; say %h
19:32 camelia rakudo-moar 1ccc4d: OUTPUT«().hash␤»
19:33 lizmat joined #perl6
19:34 lizmat PerlJam: could you rakudobug that?
19:34 retupmoca oh, that's interesting
19:34 retupmoca m: my $x = $x.^name; say $x; say $x.^name;
19:34 camelia rakudo-moar 1ccc4d: OUTPUT«Any␤Str␤»
19:35 jnthn PerlJam, lizmat: I think it's 'cus the traits are part of the declaration...
19:36 jnthn And until we know there's no "is FooType" trait there, we don't actually know what container to install.
19:36 lvfjf joined #perl6
19:36 jnthn So it's kinda a can of worms to open.
19:36 lizmat ok...  one of those things then...
19:36 jnthn "of" is similar
19:36 PerlJam sure, but the name %h is already in existence, so "Variable not declared" is LTA
19:36 lizmat like role { class {} }
19:36 dalek specs: a7244f9 | (Tobias Leich)++ | / (2 files):
19:36 dalek specs: spec .IO.z and s/IO::FileTests/IO::FileTestable/
19:36 dalek specs:
19:36 dalek specs: niecza and rakudo implemented the role as IO::FileTestable, and this
19:36 dalek specs: seems to match the current way of naming roles.
19:36 dalek specs: review: https://github.com/perl6/specs/commit/a7244f9cec
19:39 lizmat joined #perl6
19:39 masak PerlJam: feel free to submit a rakudobug (or delegate to me)
19:43 PerlJam rakudobugged
19:45 masak PerlJam++
19:46 raiph joined #perl6
19:55 virtualsue joined #perl6
19:56 moritz star: say 42
19:56 camelia star 2014.04: OUTPUT«Error occurred during initialization of VM␤Could not reserve enough space for object heap␤Error: Could not create the Java Virtual Machine.␤Error: A fatal exception has occurred. Program will exit.␤»
19:57 PerlJam that's a really heavy 42.
19:59 vendethiel I guess the world weighs its worth in RAM
20:02 water joined #perl6
20:05 denis_boyun_ joined #perl6
20:06 [Coke] never memory enough.
20:06 * [Coke] wonders if the java build failure is a result of the ulimit or just the normal build process.
20:07 dalek evalbot: 98c9ae5 | moritz++ | evalbot.pl:
20:07 dalek evalbot: add star-m, star-p, star-j targets
20:07 dalek evalbot: review: https://github.com/perl6/evalbot/commit/98c9ae5d47
20:08 camelia joined #perl6
20:09 moritz star: use JSON::Tiny; say to-json { a => [1, 2], b => "42 23" }
20:09 camelia star-{m,p} 2014.04: OUTPUT«{ "a" : [ 1, 2 ], "b" : "42 23" }␤»
20:13 vendethiel \o/
20:18 FROGGS joined #perl6
20:19 dalek roast: e0b835f | (Tobias Leich)++ | S16-filehandles/filestat.t:
20:19 dalek roast: be nice and close filehandles
20:19 dalek roast: review: https://github.com/perl6/roast/commit/e0b835fc04
20:19 masak moritz++
20:23 dalek joined #perl6
20:26 treehug88 joined #perl6
20:27 Juerd PerlJam: Oh wow, it's already there? I'll have to read the spec. Thanks for the pointer :)
20:30 Juerd PerlJam: I can't find it in the Synopses. Do you happen to know where I could look this up? I've tried S09.
20:31 PerlJam Juerd: S02:1315 or so
20:31 synopsebot Link: http://perlcabal.org/syn/S02.html#line_1315
20:32 Juerd PerlJam: Thank you!
20:32 PerlJam S02:693 mentions it in a more general sense too
20:32 synopsebot Link: http://perlcabal.org/syn/S02.html#line_693
20:32 FROGGS r: say $*EXECUTABLE
20:33 PerlJam It's not well-documented in the sense that a reference manual would.
20:33 camelia rakudo-jvm f1dd8a: OUTPUT«IO::Path</home/p6eval/rakudo-inst-1/bin/perl6-j>␤»
20:33 camelia ..rakudo-moar f1dd8a: OUTPUT«IO::Path</home/p6eval/rakudo-inst-1/bin/perl6-m>␤»
20:33 camelia ..rakudo-parrot f1dd8a: OUTPUT«IO::Path</home/p6eval/rakudo-inst/bin/perl6-p>␤»
20:33 masak "If a mutable value is borrowed, it becomes immutable for the duration of the borrow." -- this, my friends, is the future. http://featherweightmusings.blogspot.co.uk/2014/05/rust-for-c-programmers-part-5-borrowed.html
20:33 masak I hope Perl 6 becomes extensible enough that type systems like this can be evolved inside of it.
20:34 Sqirrel joined #perl6
20:34 masak I think borrowed references are related to linear logic, but the exact relation is not so clear to me.
20:37 colomon joined #perl6
20:38 masak anyway, it's surprising that not more languages do what Rust do: enforce memory safety through the type system.
20:39 Alula joined #perl6
20:39 masak on HN, "I'd argue that linear and substructural typing is pretty much in the cutting edge of language research."
20:40 vendethiel #shithnsays
20:40 vendethiel what is even "linear typing"?
20:41 masak do not dismiss it without first learning what it is :)
20:41 dalek rakudo/nom: 959cb81 | (Tobias Leich)++ | src/core/IO.pm:
20:41 dalek rakudo/nom: cleanup to be created IO::Path
20:41 dalek rakudo/nom:
20:41 dalek rakudo/nom: Otherwise chdir("t/spec") from C:\rakudo leads to a mix of path separators.
20:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/959cb81db8
20:41 masak linear typing, as far as I've understood it, captures the notion that some resources can't just be copied in memory -- by sharing it, you give it away rather than duplicating it.
20:42 PerlJam yep, that jibes with my understanding
20:42 masak which makes a lot of sense for mutable references, for example. linear logic makes sure that by sharing the mutable reference, you (temporarily) give away the right to mutate it.
20:42 PerlJam stuff in linear type systems always have a ref count of 1
20:42 masak ooh, that's a nice way of putting it.
20:43 masak it took me a while to realize what it reminded me of... quantum computation and the no-cloning theorem.
20:43 masak I bet they're related somehow on a deep level.
20:43 vendethiel (or, you could, erm, just forget about side effects :).)
20:44 vendethiel (side-effects anywhere*)
20:44 masak "forget" as in "not use", or "forget" as in "ignore the effects of" ?
20:45 vendethiel sorry - "not use"
20:45 PerlJam awww... you should have left the ambiguity so that masak would forever be in two states of thought about your sentence.
20:46 masak :P
20:46 masak vendethiel: well, that leads to a very special kind of programming. I think there are interesting code-scapes outside of eschew-all-side-effects territory.
20:49 Ulti Mouq++ for giving me really useful feedback on my Gist!
20:49 vendethiel masak: I hope there are :-)
20:51 vendethiel but linear typing and substructural typing seem to be related to GC and whatnot, here
20:52 FROGGS joined #perl6
20:54 masak I don't know what the exact relation is there. neither C++ nor Rust have a GC, but Rust employs linear typing.
20:55 vendethiel yeah, not really GC, more RAII
21:00 masak "The single-reference property makes linear type systems suitable as programming languages for quantum computation, as it reflects the no-cloning theorem of quantum states." -- hah! https://en.wikipedia.org/wiki/Substructural_type_system
21:19 ilbot3 joined #perl6
21:19 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
21:31 masak 'night, #perl6
21:33 lue masak: in general, there's a lot about the world that's just programming on a different kind of transistor :P
21:33 FROGGS joined #perl6
21:51 telex joined #perl6
21:52 jnthn sleep &
21:52 El_Che left #perl6
22:07 pochi joined #perl6
22:09 dalek rakudo/nom: beda46c | (Tobias Leich)++ | src/core/IO.pm:
22:09 dalek rakudo/nom: cleanup paths in chdir, not IO::Path.new, this unbusts tests on linux
22:09 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/beda46c838
22:18 go|dfish joined #perl6
22:19 [Sno] joined #perl6
22:28 vaskozl_ joined #perl6
22:28 vaskozl_ Hey again!
22:28 benabik joined #perl6
22:28 vaskozl_ I'm trying to remove newlines from a file like so: echo "line one" & echo "line two" |perl6 -pe '$_=.chomp;'
22:29 vaskozl_ in perl 5 it would've been done with |perl -pe 'chomp'
22:29 vaskozl_ but for some reason nothing happens to the newlines, they still appear
22:30 timotimo aye, because they are say'd at the end
22:30 vaskozl_ oh crap
22:30 timotimo and say has the property of putting a newline in for you for convenience :)
22:31 vaskozl_ yes I forgot
22:31 vaskozl_ that sux some times :D
22:31 timotimo what was our answer to the eskimo kiss operator again?
22:31 vaskozl_ is there an option that does print instead?
22:31 vaskozl_ if -pe replace -ple
22:31 timotimo since the "main loop" would give you a list of the lines, you can print "".join them or so.
22:31 timotimo actually. what about this:
22:32 timotimo er. hold on. no.
22:32 vaskozl_ *ignore the echo stuff
22:32 vaskozl_ that kinda doesn't work very well
22:33 timotimo cat README.md | perl6 -ne 'print $_'
22:33 timotimo easy as pie, once you've read perl6 --help :)
22:34 vaskozl_ well kinda logn :/
22:34 vaskozl_ s/gn$/ng/
22:34 vaskozl_ would it be a bad idea to implement an option that does print instead?
22:35 vaskozl_ -pe now behaves like perl5 -ple (or atleast simililarly)
22:35 vaskozl_ then again, this is only a problem when you want to remove the new lines
22:37 timotimo well, you can also use perl -ne '.print'
22:37 vaskozl_ yah makes sense
22:38 timotimo and then you can leave out the ' '
22:39 timotimo we really ought to write up some documentation for common things you may want to do if you're looking to write shell one-liners in perl6
22:39 vaskozl_ hey how come we don't have to chomp it?
22:39 timotimo now that our implementation starts up in a reasonable amount of time
22:39 timotimo let's see.
22:39 timotimo m: say $*IN.DUMP
22:39 vaskozl_ perl5 -ne 'print' shows new lines while perl6 -ne '.print' doesn't
22:39 camelia rakudo-moar 959cb8: OUTPUT«IO::Handle<1>(␤    :$!PIO(BOOTIO<2>(...)),␤    :ins(▶0),␤    :chomp(▶True),␤    :path(IO::Path<5>(:path(=IO::Path<5>)))␤)␤»
22:39 timotimo there we go. $*IN has chomp set to true by default
22:40 timotimo so lines() will give you lines without their end-of-line piece
22:40 vaskozl_ timotimo: that's pretty neat
22:40 vaskozl_ someone thought about this before
22:40 timotimo apparently :)
22:40 vaskozl_ strict is not disabled in one liners :/
22:41 timotimo yes
22:41 timotimo we don't have no strict yet
22:41 timotimo usually, you can get away with writing "state" in front of the first occurence of a variable and it'll do what you want :P
22:42 vaskozl_ now I have to learn perl6 regex!
22:43 timotimo ooooh perl6 regex is so lovely
22:43 vaskozl_ omg I can use quotes so I no longer have to escape everything!
22:44 vaskozl_ *other than quotes :D
22:44 dalek nqp: 73f417d | (Tobias Leich)++ | / (2 files):
22:44 dalek nqp: map nqp::execname and bump moar revision
22:44 dalek nqp: review: https://github.com/perl6/nqp/commit/73f417d65f
22:44 TimToady '"' and "'" work too :)
22:45 timotimo yes, that is one of the nicest things we have; also the "backslash reform"
22:47 dalek rakudo/nom: 1a28eda | (Tobias Leich)++ | / (3 files):
22:47 dalek rakudo/nom: use nqp::execname to get the runner's path safely
22:47 dalek rakudo/nom:
22:47 dalek rakudo/nom: Parrot does it already correct because its fake executable is able to determine its own path,
22:47 dalek rakudo/nom: but what we do here for MoarVM needs doing for JVM also.
22:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1a28edac0a
22:48 vaskozl_ I've been using this awesomeness recently: ms/'start' <( .*? )> 'finish'/
22:48 vaskozl_ but I don't really know much about ms/ and the <()> notation
22:48 vaskozl_ where can I read up on this?
22:49 timotimo yes, i love <( and )>, too
22:50 timotimo so much nicer than <?after 'start'> ... <?before 'finish'>
22:50 huf joined #perl6
22:50 timotimo also i believe the version you posted gets optimized using boyer-moore-string-search, and the other one doesn't
22:50 timotimo it's all in S05:01
22:50 synopsebot Link: http://perlcabal.org/syn/S05.html#line_01
22:51 vaskozl_ nice
22:51 vaskozl_ much kudos
22:52 timotimo there's also a regextut on docs.perl6.org, but it's very incomplete
22:53 timotimo i wonder if that site should get the "onelinerstut", too?
22:53 vaskozl_ timotimo: comming from perl 5 I didn't really face a difficulty
22:53 vaskozl_ other than the one just now
22:54 vaskozl_ also since you guys fixed -p in moar and made -pe work it's been awesome!
22:54 timotimo TimToady: should an invocation like -e 'my $foo = "hello";' -ne '$foo = $_ if Bool.pick;' -e 'say $foo' result in something like 'my $foo = "hello"; for lines { $foo = $_ if Bool.pick }; say $foo' being executed?
22:54 timotimo i think we're currently not doing multiple -e's
22:54 timotimo that's pretty nonhelpful, IMO.
22:55 timotimo i'm very glad you're actually exercising the commandline portions of perl6, i've been mostly writing longer scripts so far
22:55 timotimo anyway, i ought to get some rest now :)
22:55 timotimo gnite and good luck!
22:55 vaskozl_ good night :)
23:03 lizmat joined #perl6
23:11 lizmat joined #perl6
23:21 chenryn joined #perl6
23:25 skids joined #perl6
23:47 lvfjf joined #perl6
23:54 skids r: 0x0123456789abcdef.perl.say
23:54 camelia rakudo-moar 1a28ed: OUTPUT«81985529216486896␤»
23:54 camelia ..rakudo-{parrot,jvm} 1a28ed: OUTPUT«81985529216486895␤»
23:55 skids r-m's bitops are even more hosed than r-p.
23:58 xragnar_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo