Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2017-03-01

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:08 adu joined #perl6
00:09 pyrimidine joined #perl6
00:13 gdonald_ joined #perl6
00:21 SmokeMachine m: Int.^attributes.map: { .say } # why it happens and what is a BOOTSTRAPATTR?
00:21 camelia rakudo-moar 7966da: OUTPUT: «No such method 'say' for invocant of type 'BOOTSTRAPATTR'␤  in block <unit> at <tmp> line 1␤␤»
00:22 SmokeMachine m: Int.^attributes.grep: Int
00:22 camelia rakudo-moar 7966da: OUTPUT: «X::Multi::NoMatch exception produced no message␤  in block <unit> at <tmp> line 1␤␤»
00:23 SmokeMachine m: Int.^attributes.grep: {.type ~~ Int}
00:23 camelia rakudo-moar 7966da: ( no output )
00:23 SmokeMachine ok... that made sense...
00:24 dj_goku joined #perl6
00:24 SmokeMachine m: Int.^attributes.grep: Attribute # but not this one
00:24 camelia rakudo-moar 7966da: OUTPUT: «X::Multi::NoMatch exception produced no message␤  in block <unit> at <tmp> line 1␤␤»
00:25 BenGoldberg joined #perl6
00:26 IOninja It happens 'cause you're poking at low-level internals and trying to feed them to higher-level routines.
00:30 elaADnlxie .
00:30 * geekosaur wonders if a p6 convenience method would be possible/useful
00:30 geekosaur er, .p6
00:31 llfourn joined #perl6
00:31 geekosaur pass through p6 tyypes unmodified, wrap or promote nqp or vm level types
00:31 SmokeMachine IOninja: how could I detect that and only grep if its high-level?
00:31 geekosaur (not spec-d, and obviously no going to be portable)
00:31 SmokeMachine geekosaur: that could help in my case...
00:32 geekosaur it's not just you, pretty much everyoen trying to introspect via nqp hits it every so often
00:32 geekosaur or via MOPs that leak implementation types
00:32 IOninja SmokeMachine: `try`
00:33 SmokeMachine IOninja: good idea...
00:33 elaADnlxie hehe, I broke a bot and nobody noticed! Nice!
00:33 IOninja SmokeMachine: here's an example where I grep for types; probably will work if you stick attributes instead
00:33 IOninja SmokeMachine: https://github.com/perl6/routine-​map/blob/master/mapper.p6#L60-L75
00:34 IOninja elaADnlxie: I noticed!
00:34 elaADnlxie IOninja: which bug did you find?
00:34 SmokeMachine IOninja: thanks!
00:34 IOninja elaADnlxie: https://irclog.perlgeek.de/​perl6/2017-02-28#i_14181843
00:34 elaADnlxie IOninja: I didn't break this!
00:35 IOninja :)
00:35 elaADnlxie IOninja: … I simply didn't fix it…
00:36 elaADnlxie ok ok what should I add to pull tags as well, hmm…
00:36 IOninja git pull --tags?
00:37 IOninja git pull pulls them for me automagically...
00:37 IOninja without needing `--tags`
00:37 elaADnlxie that's what I thought too, but apparently not
00:38 agentzh joined #perl6
00:38 elaADnlxie c: 2017.02 say 42
00:38 committable6 elaADnlxie, ¦«2017.02»: Cannot find this revision (did you mean “2017.01”?)
00:39 elaADnlxie ok, if it appears in ≈5 minutes, then I fixed it
00:39 elaADnlxie IOninja: any other complaints?
00:40 IOninja Nope
00:41 mcmillhj joined #perl6
00:45 elaADnlxie c: 2017.02 say 42
00:45 committable6 elaADnlxie, ¦«2017.02»: 42
00:45 elaADnlxie \o/
00:59 TimToady m: my regex abc { ‘aaa’ }; my regex xyz { <&abc> }; say ‘aaa’ ~~ /<xyz>/
00:59 camelia rakudo-moar 7966da: OUTPUT: «「aaa」␤ xyz => 「aaa」␤»
00:59 TimToady elaADnlxie: ^^^ was it you looking for this?
00:59 elaADnlxie TimToady: yes! Yes!
00:59 TimToady a . means always call the method form
00:59 TimToady a & means always call the function form
01:00 elaADnlxie but <abc> means?
01:00 TimToady leaving it off was supposed to guess based on lexical scope, but seems someone made it synonymous with the . form
01:00 elaADnlxie m: my regex abc { ‘aaa’ }; my regex xyz { <abc> }; say ‘aaa’ ~~ /<xyz>/
01:00 camelia rakudo-moar 7966da: OUTPUT: «「aaa」␤ xyz => 「aaa」␤  abc => 「aaa」␤»
01:01 MasterDuke m: Int.^attributes.map: { .^name.say }
01:01 camelia rakudo-moar 7966da: OUTPUT: «BOOTSTRAPATTR␤»
01:01 TimToady huh, I thought that wasn't working...
01:02 MasterDuke m: Int.^attributes.map: { .gist.say }
01:02 camelia rakudo-moar 7966da: OUTPUT: «bigint $!value␤»
01:03 Actualeyes joined #perl6
01:04 MasterDuke m: Int.^attributes.map: { .perl.say }
01:04 camelia rakudo-moar 7966da: OUTPUT: «BOOTSTRAPATTR.new␤»
01:04 MasterDuke SmokeMachine: ^^^, some options
01:05 SmokeMachine MasterDuke: thanks!
01:05 SmokeMachine IOninja: someone decided something about the mexican version of ?? !! ?
01:07 IOninja SmokeMachine: don't think so.
01:07 IOninja TimToady is right here. Ask him :)
01:10 pyrimidine joined #perl6
01:13 TimToady the what?
01:13 * TimToady is on vacation, and doesn't have to decide anything :P
01:14 SmokeMachine m: say True ⁇ "OK" ‼ "NOK" # TimToady, this
01:14 camelia rakudo-moar 7966da: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Confused␤at <tmp>:1␤------> 3say True7⏏5 ⁇ "OK" ‼ "NOK" # TimToady, this␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        st…»
01:14 TimToady that doesn't look mexican to me...
01:15 SmokeMachine u: ⁇
01:15 unicodable6 SmokeMachine, U+2047 DOUBLE QUESTION MARK [Po] (⁇)
01:15 IOninja Mexical is opposite of Texas :)
01:15 TimToady but I'm probably fine with accepting those glyphs
01:15 SmokeMachine TimToady: so, would you mind, if I do my PR?
01:16 TimToady unless they mke the parser run a lot slower for some strange reason...
01:16 IOninja TimToady: then I know some people will ask if we added ⁇ and ‼, why not add ≥ and ≤? Are those also OK to add? I've seen a giant gist proposing all sorts of these fancy unicode ops and I'm just wondering where the line is drawn.
01:16 SmokeMachine TimToady: I have no benchmarks... :(
01:17 TimToady IOninja: I dont really have a problem with ≥ and ≤ either, just I'd like to get the chained operators generalizing correctly first
01:17 TimToady there's some difficulty with that that I don't recall offhand
01:17 TimToady user-defined chained ops, that is
01:18 TimToady I guess putting in ≥ and ≤ doesn't really need that, since they wouldn't be user-defined, per se...
01:18 SmokeMachine the ⁇ ‼ should have roast tests, right?
01:19 TimToady why not?
01:19 TimToady either we support it as part of the language, or we don't
01:19 Actualeyes joined #perl6
01:20 SmokeMachine I think we do! :)
01:22 TimToady you should ask me for all the bad decisions you can get while I'm on vacation, and feeling mellow :)
01:24 elaADnlxie IOninja: the gist is mostly for gathering *all* ideas, I'm kinda hoping that half of these will be thrown away
01:25 elaADnlxie ≤ ≥ were very requested, ⁇ and ‼ less so, but it totally make sense
01:25 elaADnlxie u: ⁇‼
01:25 unicodable6 elaADnlxie, U+2047 DOUBLE QUESTION MARK [Po] (⁇)
01:25 unicodable6 elaADnlxie, U+203C DOUBLE EXCLAMATION MARK [Po] (‼)
01:26 IOninja TimToady: Lol. OK, then, I still don't get the Rat/FatRat thing. As I understand it, big numerator/denominator are bad, so that's why we made that distinction. And FatRats are contagious. And currently when we try to create a Rat with its components > uint64 it sets them, but apparently it's wrong. Last I recall you said that maybe we should make > uint64 rats return a RatStr, because it knows how to convert
01:26 IOninja to FatRat, but I don't get why it should be a RatStr? Like, would the math operators use the FatRat version but it'd be non-contagious?
01:26 IOninja .oO( guess it'd help if I read the speculations on the topic first... )
01:26 IOninja Oh and I recall hearding that >uint64 Rats turn into Nums, but I don't get that. Why not do the FatRat thing?
01:30 IOninja 4.9999999999999999999999999 => FatRat automatically; if you don't want the badness of >uint64 Rats, then coerce it to .Rat or .Num, losing precision. And <4.99999999999999999999999999999999999> ends up a FatRatStr; same rules, if you don't want the uber precision, coerce it.
01:31 zengargoyle joined #perl6
01:31 IOninja and infectioning is ( (Int => Rat) => Num ) => FatRat; Int + Rat => Rat; Rat/Int + Num => Num; * + FatRat => FatRat
01:32 markasoftware joined #perl6
01:32 markasoftware what language is the perl 6 interpreter written in?
01:32 IOninja markasoftware: compiler. Depending on which part you're looking, it's either written in Perl 6 with a sprinkling of NQP or in NQP. NQP is a subset of Perl 6
01:33 markasoftware any haskell in it?
01:33 IOninja markasoftware: not really
01:33 markasoftware hmm. i read somewhere that it was written in haskell, couldn't find any other sources though
01:33 markasoftware guess it was satire...
01:33 IOninja markasoftware: ah, it was long time ago, and was never a production compiler. That one was Pugs
01:34 IOninja and current one's called Rakudo
01:34 markasoftware ok, so I'm not going crazy, thanks
01:34 IOninja :)
01:38 markasoftware left #perl6
01:39 elaADnlxie that's it???
01:39 elaADnlxie not going to stay for some tea or something?
01:42 mcmillhj joined #perl6
01:59 cdg_ joined #perl6
01:59 telex joined #perl6
02:08 agentzh joined #perl6
02:35 elaADnlxie 'night o/
02:37 SmokeMachine elaADnlxie: I fixed the misalign...
02:38 SmokeMachine elaADnlxie: do you have any suggestion about the "copy-paste" thing?
02:39 mcmillhj joined #perl6
02:46 samcv i don't really like the copy pasty tbh
02:48 ilbot3 joined #perl6
02:48 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
02:51 Sgeo_ joined #perl6
02:52 SmokeMachine is it possible to encapsulate the token inside another token and use the new token on both tokens (<?? !!> and <⁇ ‼>)?
02:54 samcv well the error code takes up most of it
02:56 mcmillhj joined #perl6
02:56 samcv so you could make the error code in its own token
02:57 samcv <EXPR('i=')>       [ '‼' | <ternary-explain> ... ]
02:57 samcv something like that
03:07 SmokeMachine samcv: great idea! Thanks!
03:14 SmokeMachine is there a way to send parameters for a token from inside another token?
03:16 SmokeMachine I got it!
03:17 ZzZombo s: Any, grep, \({True})
03:17 SourceBaby ZzZombo, Ehhh... I'm too scared to run that code.
03:17 ZzZombo bad bot, bad
03:21 noganex joined #perl6
03:35 SmokeMachine samcv: I unified the ternary explanation... could you take  look at it?
03:36 SmokeMachine https://github.com/rakudo/rakudo/pull/1029
03:36 xtreak joined #perl6
03:59 labster joined #perl6
04:01 wamba joined #perl6
04:04 salva joined #perl6
04:05 ggoebel joined #perl6
04:06 Actualeyes left #perl6
04:10 cibs joined #perl6
04:16 mcmillhj joined #perl6
04:25 cpage_ joined #perl6
04:25 BenGoldberg u: interrobang
04:25 unicodable6 BenGoldberg, U+203D INTERROBANG [Po] (‽)
04:25 unicodable6 BenGoldberg, U+2E18 INVERTED INTERROBANG [Po] (⸘)
04:26 unicodable6 BenGoldberg, 5 characters in total: https://gist.github.com/8dcf​59292f1b61e63c2bfe34b1cea3a7
04:28 BenGoldberg m: sub prefix:<‽> { $^tobe | not $^tobe }; ‽ "the question";
04:28 camelia rakudo-moar 7966da: ( no output )
04:28 adu joined #perl6
04:35 simcop2387 joined #perl6
04:48 Cabanoss- joined #perl6
05:11 kybr joined #perl6
05:13 mcmillhj joined #perl6
05:21 gdonald_ joined #perl6
05:27 Actualeyes joined #perl6
05:52 xtreak joined #perl6
05:53 CIAvash joined #perl6
05:58 skids joined #perl6
06:06 ZzZombo m: my $x=:children;say $x.key == 'children'
06:06 camelia rakudo-moar 7966da: OUTPUT: «Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5children' (indicated by ⏏)␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
06:06 ZzZombo what??
06:06 ZzZombo m: my $x=:children;say $x.key() == 'children'
06:06 camelia rakudo-moar 7966da: OUTPUT: «Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5children' (indicated by ⏏)␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
06:06 ZzZombo m: my $x=:children;say $x.key
06:06 camelia rakudo-moar 7966da: OUTPUT: «children␤»
06:07 ZzZombo m: my $x=:children;say $x.key() ~~ 'children'
06:07 camelia rakudo-moar 7966da: OUTPUT: «True␤»
06:07 ZzZombo W H A T
06:07 ZzZombo did P6 twisted comparison?
06:10 ZzZombo ah
06:11 ZzZombo I keep forgetting they did NOT actually change that.
06:18 mcmillhj joined #perl6
06:30 snowblack joined #perl6
06:31 g0d355__ joined #perl6
06:31 snowblack splicing arrays, does it not suck?
06:31 snowblack should I take that as a yes?
06:32 setty1 joined #perl6
06:33 lust joined #perl6
06:33 snowblack anyone want to answer a question, other that this one?
06:34 mcmillhj joined #perl6
06:34 snowblack left #perl6
06:39 snowblack joined #perl6
06:41 mcmillhj joined #perl6
06:43 snowblack awake?
06:43 snowblack question
06:44 domidumont joined #perl6
06:48 moritz snowblack: just ask; maybe somebody will answer
06:48 moritz but notbody can answer without a question :-)
06:48 domidumont joined #perl6
06:50 RabidGravy joined #perl6
06:53 mcmillhj joined #perl6
06:54 ZzZombo can I create a lazy list with for?
06:59 snowblack I am trying drop an element of a list  my @b = < 3 4 5 6 7 8>
06:59 snowblack @b.splice( +(@b.grep: 6, :k) , 1)
07:00 snowblack is almost right, but there must be a better way
07:01 snowblack I just want to drop a value from a list, that I suspect is in the list
07:02 snowblack @b.splice( (@b.grep: 6, :k) , 1)  doesn't work
07:03 snowblack cause "Cannot resolve caller splice(Array: Seq, Int); none of these signatures match:...."
07:04 snowblack so I add "+" to make output of (@b.grep: 6, :k) be an Int, but then if the greped element isn't in the list
07:04 snowblack the code takes that as zero , and splices out the first element
07:05 snowblack THere must be an easier way, I used to know perl a decade ago, now I am trying perl6...
07:06 eroux joined #perl6
07:09 darutoko joined #perl6
07:10 xtreak joined #perl6
07:11 CIAvash snowblack: grep returns a Seq, so adding + will return the number of its elements. try @b.splice(@b.first(6, :k) , 1)
07:13 snowblack ZzZombo, is this what you want? for 4...30 ->$z { say $z;} ; lazy , how to prove, I don't know
07:15 CIAvash ZzZombo: `gather for @a { .take }`?
07:16 TimToady or if you just want to remove all the 6's, do @b.grep: none 6
07:20 snowblack ok those answers are very helpful
07:26 eroux joined #perl6
07:33 jonas1 joined #perl6
07:40 socomm joined #perl6
07:40 nine avar: you need to "use Inline::Perl6 'OO';" if you want to use Inline::Perl6->new; Otherwise it's just "use Inline::Perl6; v6::run '"hi".say';"
07:41 nine avar: that ^^^ is at least the reason for those redefine warnings
07:42 nine avar: that test failure is odd. But the good news is that it does happen here, too. Will investigate.
07:46 wamba joined #perl6
07:52 abraxxa joined #perl6
07:55 cibs joined #perl6
08:00 abraxxa joined #perl6
08:01 rindolf joined #perl6
08:02 gfldex joined #perl6
08:15 gdonald_ joined #perl6
08:35 bjz joined #perl6
08:42 dakkar joined #perl6
08:44 wamba joined #perl6
08:48 avar nine: Sweet, thanks!
08:48 mcmillhj joined #perl6
08:51 astj joined #perl6
08:52 nine This works: perl -E 'use Inline::Perl6 "OO"; my $p6 = Inline::Perl6->new; my $tester = $p6->run("use lib <t/lib>; use Perl6Test; Perl6Test.new"); say $tester->get_one'
08:53 nine So I think it's another side effect of lexical module loading. The $p6->use('Perl6Test'); no longer affects the later statements.
08:58 wamba joined #perl6
09:01 astj joined #perl6
09:02 zakharyas joined #perl6
09:04 espadrine joined #perl6
09:08 domidumont joined #perl6
09:09 Actualeyes left #perl6
09:22 astj joined #perl6
09:30 ufobat joined #perl6
09:31 rurban joined #perl6
09:44 mcmillhj joined #perl6
09:49 xtreak joined #perl6
09:52 labster joined #perl6
09:57 Cabanossi joined #perl6
10:01 mcmillhj joined #perl6
10:07 mcmillhj joined #perl6
10:10 gregf_ cardiff and brighton are choke
10:11 gregf_ sorry :/ wrong chat
10:12 Geth ¦ doc: 352cd94f02 | (Wenzel P. P. Peppmeyer)++ | doc/Language/containers.pod6
10:12 Geth ¦ doc: correct example
10:12 Geth ¦ doc: review: https://github.com/perl6/doc/commit/352cd94f02
10:13 wamba joined #perl6
10:21 gregf_ m: :k.^name.say
10:21 camelia rakudo-moar 7966da: OUTPUT: «Pair␤»
10:22 DrForr Perl6::Parser - Cleared up (mostly) a bug that was incorrectly categorizing a lot of token clusters as a single bareword.
10:27 holyghost joined #perl6
10:31 mxco86 joined #perl6
10:37 rindolf joined #perl6
10:40 ZzZombo m: Inf.WHAT
10:40 camelia rakudo-moar 7966da: ( no output )
10:40 ZzZombo m: say Inf.WHAT
10:40 camelia rakudo-moar 7966da: OUTPUT: «(Num)␤»
10:42 ZzZombo m: say my Num $n=0
10:42 camelia rakudo-moar 7966da: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Cannot assign a literal of type Int (0) to a variable of type Num. You can declare the variable to be of type Real, or try to coerce the value with 0.Num or Num(0), or just write the value as 0e0␤at <tmp…»
10:42 ZzZombo m: say my Num $n=0e0
10:42 camelia rakudo-moar 7966da: OUTPUT: «0␤»
10:42 ZzZombo but why?..
10:43 bjz_ joined #perl6
10:44 obfusk joined #perl6
10:47 jnthn ZzZombo: Because types are constraints, and 0 is an Int, not a Num
10:47 ZzZombo m: say (1,2,3,4,5).all ~~ * > 0
10:47 camelia rakudo-moar 7966da: OUTPUT: «{ ... }␤»
10:47 ZzZombo m: say (1,2,3,4,5).all ~~ (* > 0)
10:47 camelia rakudo-moar 7966da: OUTPUT: «all(True, True, True, True, True)␤»
10:48 ZzZombo how to get the ultimate result rather than the junction?
10:48 ZzZombo But somehow I expected 0 being silently coerced to Num
10:49 jnthn Use "so"
10:49 jnthn m: say so (1,2,3,4,5).all ~~ (* > 0)
10:49 camelia rakudo-moar 7966da: OUTPUT: «True␤»
10:49 ZzZombo m: say ?(1,2,3,4,5).all ~~ (* > 0)
10:49 camelia rakudo-moar 7966da: OUTPUT: «True␤»
10:50 jnthn I think that is wrong precedence though
10:50 ZzZombo m: say (1,2,3,4,5).all ~~ 0
10:50 camelia rakudo-moar 7966da: OUTPUT: «False␤»
10:50 ZzZombo why this is different?
10:51 jnthn say ?(1,2,3,4,5).all ~~ (* > 0) groups as say (?(1,2,3,4,5).all) ~~ (* > 0)
10:51 jnthn And all those numbers are true, so it's like True ~~ (* > 0), which is True > 0, which is True
10:51 jnthn m: say so (1,2,3,4,-5).all ~~ (* > 0)
10:51 camelia rakudo-moar 7966da: OUTPUT: «False␤»
10:52 jnthn m: say ?(1,2,3,4,-5).all ~~ (* > 0)
10:52 camelia rakudo-moar 7966da: OUTPUT: «True␤»
10:56 zakharyas1 joined #perl6
11:20 xtreak joined #perl6
11:20 llfourn joined #perl6
11:24 rindolf joined #perl6
11:27 sena_kun joined #perl6
11:39 bjz joined #perl6
11:46 notbenh joined #perl6
11:53 wamba joined #perl6
11:54 kurahaupo joined #perl6
11:56 ChoHag joined #perl6
11:56 n1ce joined #perl6
12:07 kurahaupo joined #perl6
12:08 kurahaupo_ joined #perl6
12:30 zakharyas joined #perl6
12:30 salv0 joined #perl6
12:36 aborazmeh joined #perl6
12:36 aborazmeh joined #perl6
12:45 lukaramu joined #perl6
12:50 ufobat joined #perl6
13:18 IOninja Side note for ticket reporters: "(HEAD)" is hard to figure out when you view the ticket later on. Would be nice if that included proper commit sha
13:18 IOninja Like this one: https://rt.perl.org/Ticket/Disp​lay.html?id=130566#txn-1444346
13:21 DrForr Insert your own hash conflict joke here.
13:22 jnthn "No, it's my turn to toke now!"
13:22 [Coke] The list of people who can add bugadmins now includes me, pmichaud, froggs, moritz, and IOninja.
13:23 IOninja wooo \o/
13:23 jnthn Nice :)
13:28 IOninja [Coke]: where's the interface to add users? If I go to Configuration -> Rights -> User Rights I only see one user. Enoch Root :}
13:32 lukaramu_ joined #perl6
13:36 [Coke] IOninja: if rt stops hanging, I'll tell you. :|
13:36 [Coke] (probably my work proxy)
13:37 IOninja Hanging for me too now.
13:38 [Coke] It's all on the same page; there's a box in the upper right that reads something like 'add user'
13:43 cschwenz joined #perl6
13:44 mcmillhj joined #perl6
13:44 cschwenz is https://github.com/kalkin/Ddt a hard fork of https://github.com/skaji/mi6 ?
13:44 IOninja [Coke]: oh yeah, I saw the box, sorry. I meant to ask how do I see existing users. Basically, someone says "I can't login" or whatever how do I view what sort of perms they got on their account or even if they have account?
13:44 IOninja cschwenz: what's a hard fork?
13:45 cschwenz as in, it really looks like the author or Ddt downloaded to source for App::Mi6 and made some changes before re-uploading the codebase as their own
13:46 wamba joined #perl6
13:46 cschwenz s{author or}{author of}
13:46 IOninja cschwenz: sounds about right. Not long ago the author claimed Ddt was a replacement for Mi6
13:47 IOninja cschwenz: from what I understand, they assumed mi6 was an abandoned project.
13:48 IOninja TestML seems to be thoroughly bustified and YAML depends on it...
13:49 cschwenz :-) heheh.  reported that one a few days ago.
13:49 IOninja Yes. Fixing ATM but can't run tests.
13:49 IOninja I mean... Fixing YAML one, but can't run tests..
13:49 cschwenz and once you get past that, https://github.com/perl6-commu​nity-modules/yaml-pm6/issues/3 awaits you
13:49 cschwenz ah
13:51 jnthn Was about to say YAML is working fine in my project, then realized I'm using YAMLish :)
13:52 IOninja heh
13:53 bbkr joined #perl6
13:53 Geth ¦ yaml-pm6: 224b49627f | (Zoffix Znet)++ | t/Bridge.pm
13:53 Geth ¦ yaml-pm6: Blind a MONKEY in test support module
13:53 Geth ¦ yaml-pm6:
13:53 Geth ¦ yaml-pm6: Fixes #3
13:53 Geth ¦ yaml-pm6: review: https://github.com/perl6-community-​modules/yaml-pm6/commit/224b49627f
13:57 lucasb joined #perl6
13:59 [Coke] IOninja: existing bug admins are in the list on the left. the list of all possible users is in the dropdown.
14:00 [Coke] for example, our names are at the bottom of the list on the left.
14:00 IOninja [Coke]: is this the right page? https://temp.perl6.party/rt.png
14:02 lucasb m: Seq.Int
14:02 camelia rakudo-moar 53a6d3: OUTPUT: «Cannot look up attributes in a Seq type object␤  in block <unit> at <tmp> line 1␤␤»
14:02 lucasb m: Seq.elems
14:02 camelia rakudo-moar 53a6d3: OUTPUT: «Cannot look up attributes in a Seq type object␤  in block <unit> at <tmp> line 1␤␤»
14:02 lucasb ^^ these should be multis instead of only methods, no?
14:03 lucasb so, they can give the helpful message: Invocant requires an instance of type Seq, but a type object was passed
14:03 IOninja Well, I give up with TestML. It looks for routine Point in a support test module and I don't know whether it shouldn't be looking of whether it should be there.
14:04 cschwenz IOninja:  :-(
14:04 IOninja huggable: eco YAMLish
14:04 huggable IOninja, nothing found
14:04 IOninja I guess YAMLish is a Perl 5 thing...
14:04 cschwenz https://github.com/Leont/yamlish
14:05 cschwenz YAMLish is a pure Perl6 implementation of YAML
14:05 IOninja huggable: eco Test
14:05 huggable IOninja, nothing found
14:05 IOninja huggable: you lie to me, robot!!!!
14:05 huggable IOninja, nothing found
14:05 IOninja Oh, wait, wrong robot.
14:05 IOninja buggable: eco YAMLish
14:05 * cschwenz thinks the huggable bot is b0rken
14:05 buggable IOninja, Nothing found
14:06 IOninja buggable: you lie to me, robot!!!!
14:06 cschwenz :-P
14:06 IOninja buggable: eco Test
14:06 buggable IOninja, Found 30 results: Testing, Test::Mock, PSpec, Test::Builder, TestML. See https://modules.perl6.org/#q=Test
14:06 IOninja buggable: eco YAML
14:06 buggable IOninja, Found 2 results: YAML, YAMLish. See https://modules.perl6.org/#q=YAML
14:06 IOninja buggable: eco YAMLish
14:06 buggable IOninja, YAMLish 'An implementation of a useful subset of YAML': https://github.com/Leont/yamlish
14:06 IOninja ...
14:06 IOninja Now it's just messin' with me
14:07 cschwenz maybe the string 'you lie to me' forces it to (re-)validate its cache?
14:07 IOninja lol
14:09 IOninja m: List.elems
14:09 camelia rakudo-moar 53a6d3: ( no output )
14:09 IOninja m: List.elems.say
14:09 camelia rakudo-moar 53a6d3: OUTPUT: «1␤»
14:09 IOninja m: List.Int.say
14:09 camelia rakudo-moar 53a6d3: OUTPUT: «Use of uninitialized value of type List in numeric context␤  in block <unit> at <tmp> line 1␤0␤»
14:09 cschwenz anyhow, in https://github.com/Leont/y​amlish/blob/master/TODO.md …  anyone have pointers for how to go about implementing any of the listed bullet points?
14:10 IOninja lucasb: not just, also need (::?CLASS:D:) in the sig (or Seq:Dr)
14:10 IOninja Seq:D
14:10 lucasb yes, Seq:D :)
14:10 cschwenz (as their lack of existence is why i tried using the Perl6 YAML module in the first place)
14:10 ggoebel joined #perl6
14:11 lucasb also, why it needs 3 methods that does the same thing? https://github.com/rakudo/rakudo/​blob/nom/src/core/Seq.pm#L87-L113
14:11 lucasb only .elems check for lazyness
14:12 lucasb I tried to make a lazy seq and call .Int and .Numeric, but it seems the lazyness is checked somewhere else
14:12 IOninja m: (lazy 1, 2).Seq.is-lazy.say
14:12 camelia rakudo-moar 53a6d3: OUTPUT: «No such method 'Seq' for invocant of type 'Seq'␤  in block <unit> at <tmp> line 1␤␤»
14:13 lucasb because they end up calling .elems somehow and triggers the "Cannot .elems a lazy list" message
14:13 IOninja Man, Range and Seq need .Seq :/
14:13 IOninja m: (lazy 1, 2).is-lazy.say
14:13 camelia rakudo-moar 53a6d3: OUTPUT: «True␤»
14:13 IOninja m: (lazy 1, 2).Numeric.say
14:13 camelia rakudo-moar 53a6d3: OUTPUT: «Cannot .elems a lazy list␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
14:14 IOninja lucasb: "somehow" is via .cache that returns a List
14:14 IOninja lucasb: so it seems the laziness check in elems() isn't needed
14:14 lucasb ah, understood. thanks IOninja
14:14 IOninja Oh wait
14:14 IOninja Yeah, it is
14:14 IOninja m: (1..*).Seq.Numeric.say
14:14 camelia rakudo-moar 53a6d3: OUTPUT: «No such method 'Seq' for invocant of type 'Range'␤  in block <unit> at <tmp> line 1␤␤»
14:14 * IOninja rages
14:15 lucasb about the other thing you said, should the methods Range.Range, Range.Seq and Seq.Seq exists?
14:15 IOninja m: (1...*).Numeric.say
14:15 camelia rakudo-moar 53a6d3: OUTPUT: «Cannot .elems a lazy list␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
14:15 IOninja hm
14:15 IOninja s: (1...*), 'Numeric', \()
14:15 SourceBaby IOninja, Sauce is at https://github.com/rakudo/rakudo/​blob/cf935ca/src/core/Seq.pm#L99
14:15 IOninja m: (1...*).list.say
14:15 camelia rakudo-moar 53a6d3: OUTPUT: «(...)␤»
14:15 IOninja Ah, ok. Yeah, it ain't needed in elems()
14:16 * lucasb wishes there was method/sub aliases
14:17 lucasb so you could just implement the .elems method and say that .Numeric and .Int are aliases of it
14:17 lucasb instead of duplicating its body
14:18 lucasb I remember lizmat++ implemented an "aka" trait, unfortunately it didn't get into core
14:21 lucasb In ruby I can say "alias length size" to have 1 method with 2 names, to use the name that I want at each moment. Sure, this lead to confusion, but anyway :)
14:21 IOninja We already had this discussion.
14:22 skids joined #perl6
14:22 lucasb sorry to rehash this again, I forgot :)
14:23 IOninja "should the methods … exist". Maybe. Maybe not. this is on the same level as https://rt.perl.org/Ticket/Display.html?id=130867 in that this should be made consistent across the entire codebase instead of making it piece-meal a few types here and there.
14:23 IOninja m: FatRat.FatRat
14:23 camelia rakudo-moar 53a6d3: OUTPUT: «Invocant requires an instance of type FatRat, but a type object was passed.  Did you forget a .new?␤  in block <unit> at <tmp> line 1␤␤»
14:24 [Coke] IOninja: ... I've never seen that page before in my life. :)
14:24 [Coke] give me a moment.
14:24 IOninja [Coke]: hm... remember some time ago you told me I can't comment on tickets I did not create, but I could because I had some special account somehow. Maybe that's the case here?
14:25 IOninja I don't even remember how I got my RT account.
14:25 [Coke] IOninja: is the URL I sent you redirecting you to the other URL you're getting to?
14:25 IOninja Oh, I didn't notice you sent me a URL
14:26 IOninja [Coke]: the url you sent me works and has the users... Wonder how to get to that page from the menus...
14:26 IOninja [Coke]: if I go to user defined groups, I get "Parrot commit"
14:27 newbie1 joined #perl6
14:29 [Coke] IOninja: there is no way to get there from the menus
14:29 [Coke] you have to go to the URL I sent you
14:29 IOninja Ah. OK then
14:30 IOninja Cool, then it works.
14:30 [Coke] \o/
14:30 rurban1 joined #perl6
14:31 IOninja Looks like I have really root-like perms... I have an option to disable perl5 queue, for example.
14:33 * IOninja does the maniacal laugh thing
14:34 cschwenz o_0
14:34 IOninja :)
14:40 [Coke] be good. :|
14:41 IOninja m: use Test; is-deeply ().Seq, ()
14:41 camelia rakudo-moar 53a6d3: OUTPUT: «ok 1 - ␤»
14:41 IOninja Looks like is-deeply is bustified a bit... I'd expect the above to fail :/
14:41 IOninja m: dd ().Seq eqv ()
14:41 camelia rakudo-moar 53a6d3: OUTPUT: «Bool::True␤»
14:41 IOninja uumm... OK then :|
14:43 IOninja m: sub (@a, @b) { dd [@a.WHAT, @b.WHAT] }(().Seq, ())
14:43 camelia rakudo-moar 53a6d3: OUTPUT: «[List, List]␤»
14:43 IOninja Feels like I've discovered this before....
14:43 * IOninja has bugjavu
14:44 IOninja m: sub (\a, \b) { dd [a.WHAT, b.WHAT] }(().Seq, ())
14:44 camelia rakudo-moar 53a6d3: OUTPUT: «[Seq, List]␤»
14:44 IOninja m: sub (Positional \a, Positional \b) { dd [a.WHAT, b.WHAT] }(().Seq, ())
14:44 camelia rakudo-moar 53a6d3: OUTPUT: «[List, List]␤»
14:44 IOninja ... I don't get it :/
14:45 IOninja Oh, seq is not positional duh
14:46 IOninja m: sub (Iterable \a, Iterable \b) { dd [a.WHAT, b.WHAT] }(().Seq, ())
14:46 camelia rakudo-moar 53a6d3: OUTPUT: «[Seq, List]␤»
14:46 cibs joined #perl6
14:46 bwisti joined #perl6
14:46 IOninja Well, worth trying this out...
14:46 * IOninja puts on the bomb suit
14:46 cyphase joined #perl6
14:46 IOninja ahem
14:46 IOninja *saper's suiit
14:46 * DrForr gets ready to run.
14:47 IOninja huh, sapper is "a soldier who digs trenches" in English? Weird. In Russian it's the bomb defusal guy
14:48 cschwenz1 joined #perl6
14:50 Actualeyes joined #perl6
14:52 stmuk I think it means both in English
14:52 stmuk "soldier engineer"
14:53 IOninja Ah
14:55 llfourn joined #perl6
14:55 lucasb m: sub f(List) {}; f ().Seq
14:55 camelia rakudo-moar 53a6d3: OUTPUT: «Internal error: inconsistent bind result␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
14:56 IOninja :|
14:56 lucasb I was expecting "Calling f(Seq) will never work with declared signature (List)"
14:56 IOninja m: sub f(List $) {}; f ().Seq
14:56 camelia rakudo-moar 53a6d3: OUTPUT: «Internal error: inconsistent bind result␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
14:57 lucasb also, how come you managed to bind a Seq to a Positinal parameter and got a List as result?
14:57 lucasb m: sub f(Positional $x) { say $x.WHAT }; f (1,2,3).Seq
14:57 camelia rakudo-moar 53a6d3: OUTPUT: «(List)␤»
14:57 lucasb do Seqs get mutated somehow in argument lists?
14:58 IOninja hm, changing infix:<eqv> (@a, @b) to (Iterable \a, Iterable \b) crashes S32-hash/map.t test... hm, but inside Test.pm6
15:00 IOninja m: use Test; is-deeply Hash.Map, Map
15:00 camelia rakudo-moar 53a6d3: OUTPUT: «ok 1 - ␤»
15:00 IOninja fails for me...
15:01 IOninja m: sub (Mu $got, Mu $expected) {say $got eqv $expected}(Hash.Map, Map)
15:01 camelia rakudo-moar 53a6d3: OUTPUT: «True␤»
15:01 IOninja Actually this case crashes, but not `Hash.Map eqv Map` ... wtf :/
15:03 IOninja nm, see it
15:03 IOninja m: Map.elems
15:03 camelia rakudo-moar 53a6d3: OUTPUT: «Invocant requires an instance of type Map, but a type object was passed.  Did you forget a .new?␤  in block <unit> at <tmp> line 1␤␤»
15:03 IOninja tis why
15:03 ZzZombo How can I declare a throw-away named argument?
15:04 IOninja m: $ = Seq eqv Seq
15:04 camelia rakudo-moar 53a6d3: OUTPUT: «Cannot look up attributes in a Seq type object␤  in block <unit> at <tmp> line 1␤␤»
15:04 timotimo maybe :thename($) works
15:05 IOninja m: sub (:thename($), *%_) { dd %_ }(:meow, :thename)
15:05 camelia rakudo-moar 53a6d3: OUTPUT: «{:meow}␤»
15:05 IOninja does
15:05 timotimo isn't it nice when you expect something to work and it does
15:06 IOninja :)
15:08 IOninja m: sub z (Iterable \a) { dd [a.WHAT, a.elems] }; my $s = (24, 55).Seq; z $s; say $s.elems
15:08 camelia rakudo-moar 53a6d3: OUTPUT: «[Seq, 2]␤2␤»
15:08 IOninja How come this doesn't trigger the "this seq has been iterated before" thing?
15:09 timotimo it potentially knows it's backed by a constant list OSLT?
15:09 IOninja What's OSLT? On Stack.. List... T?
15:10 IOninja Oh that seq isn't lazy?
15:10 timotimo or something like that
15:10 IOninja m: sub z (Iterable \a) { dd [a.WHAT, a.Bool] }; my $s = lazy 24, 55; z $s; say $s.elems
15:10 camelia rakudo-moar 53a6d3: OUTPUT: «[Seq, Bool::True]␤This Seq has already been iterated, and its values consumed␤(you might solve this by adding .cache on usages of the Seq, or␤by assigning the Seq into an array)␤  in block <unit> at <tmp> line 1␤␤»
15:10 IOninja ah yeah
15:10 timotimo i can't believe my hunch was correct
15:11 IOninja :D
15:14 IOninja so...
15:14 IOninja m: say ().Seq eqv ()
15:14 camelia rakudo-moar 53a6d3: OUTPUT: «True␤»
15:14 IOninja That's a bug, right?
15:15 IOninja I have a fix with a spotless stresstest run... But wondering a bit if that was on purpose...
15:16 cschwenz1 p6: say ().Seq eqv ().List
15:16 camelia rakudo-moar 53a6d3: OUTPUT: «True␤»
15:16 cschwenz1 p6: say ().Seq eqv ().Array
15:16 camelia rakudo-moar 53a6d3: OUTPUT: «False␤»
15:17 IOninja In particular, lucasb's question...
15:17 IOninja that makes me wonder
15:17 IOninja m: sub (@a) {}( ().Seq )
15:17 camelia rakudo-moar 53a6d3: ( no output )
15:17 IOninja why does it get accepted
15:17 IOninja m: sub (@a) {}.signature.params[0].type.say
15:17 camelia rakudo-moar 53a6d3: OUTPUT: «(Positional)␤»
15:17 timotimo ?
15:17 IOninja m: say Seq ~~ Positional
15:17 camelia rakudo-moar 53a6d3: OUTPUT: «False␤»
15:18 timotimo that's the positional bind failover
15:18 IOninja Ah
15:18 * IOninja looks that up
15:18 IOninja timotimo: what about ().Seq eq () giving True?
15:18 araraloren joined #perl6
15:19 timotimo no idea
15:19 elaADnlxie joined #perl6
15:19 elaADnlxie eq or eqv? ;)
15:19 timotimo eqv
15:21 IOninja m: say ().Seq.Str
15:21 camelia rakudo-moar 53a6d3: OUTPUT: «␤»
15:21 IOninja m: say (1, 2, 3).Seq.Str
15:21 camelia rakudo-moar 53a6d3: OUTPUT: «1 2 3␤»
15:21 IOninja m: say (1, 2, 3).Str
15:21 camelia rakudo-moar 53a6d3: OUTPUT: «1 2 3␤»
15:21 IOninja Hm.
15:21 IOninja I'll stash it in a branch and ask jnthn or TimToady
15:22 IOninja whether ().Seq eq () should give true (as it does now) or false (as in my fix)
15:23 elaADnlxie m: say (1, 2, 3).Seq eqv [1, 2, 3]
15:23 camelia rakudo-moar 53a6d3: OUTPUT: «False␤»
15:23 elaADnlxie m: say (1, 2, 3).Seq eqv (1, 2, 3)
15:23 camelia rakudo-moar 53a6d3: OUTPUT: «True␤»
15:23 elaADnlxie m: say [1, 2, 3] eqv (1, 2, 3)
15:23 camelia rakudo-moar 53a6d3: OUTPUT: «False␤»
15:24 elaADnlxie unless there's some magic reason for it to give true, it is kinda obvious that it should be false
15:26 IOninja elaADnlxie: well, what's the magic reason for positonalbindfailover?
15:27 * elaADnlxie reads
15:29 awwaiid joined #perl6
15:29 IOninja .ask jnthn would you have a second to look at https://github.com/rakudo/rakudo/pull/1030 ? It passes stresstest but I'm not 100% sure the original behaviour wasn't intended.
15:29 yoleaux IOninja: I'll pass your message to jnthn.
15:29 cdg joined #perl6
15:30 elaADnlxie IOninja: is it related to this?
15:30 * IOninja waits for the this....
15:30 elaADnlxie to the eqv issue
15:31 IOninja elaADnlxie: yes, the reason it ends up True is because we use (@a, @b) in the sig and the failover thing turns seq into a list
15:31 elaADnlxie IOninja: so it caches it unnecessarily?
15:31 IOninja I guess.
15:31 cdg joined #perl6
15:31 IOninja Well, I dunno
15:32 IOninja m: say (lazy 2, 3) eqv 54
15:32 camelia rakudo-moar 53a6d3: OUTPUT: «False␤»
15:32 IOninja m: my $x = (lazy 2, 3); $ = $x eqv 54; say $x.elems
15:32 camelia rakudo-moar 53a6d3: OUTPUT: «Cannot .elems a lazy list␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
15:32 IOninja It's not like you can use it afterwards
15:32 IOninja m: my $x = (lazy 2, 3); $ = $x eqv 54; say $x.cache.elems
15:32 camelia rakudo-moar 53a6d3: OUTPUT: «Cannot .elems a lazy list␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
15:32 IOninja m: my $x = (lazy 2, 3); $ = $x eqv 54; say $x.cache.Array.flat
15:32 camelia rakudo-moar 53a6d3: OUTPUT: «(...)␤»
15:33 IOninja m: my $x = (lazy 2, 3); $ = $x eqv 54; put $x.cache.Array.flat
15:33 camelia rakudo-moar 53a6d3: OUTPUT: «...␤»
15:33 IOninja jesus
15:33 IOninja m: my $x = (lazy 2, 3); $ = $x eqv 54; put $x.cache[1]
15:33 camelia rakudo-moar 53a6d3: OUTPUT: «3␤»
15:33 IOninja well... that still works on my version...
15:35 IOninja elaADnlxie: I don't know how the bind thing works, but unless types mismatch `eqv` goes to check each element and reifies everything when things are the same
15:36 IOninja elaADnlxie: why did you change nick. This one's hard to remember and I can't .tell you stuff
15:36 IOninja And you don't read `AlexDaniel: ...` stuff
15:37 n1ce joined #perl6
15:37 araraloren Oh, elaADnlxie is AlexDaniel .. :)
15:37 araraloren Magic .
15:38 IOninja And LeCamarade is Zoffix
15:38 IOninja We're all cross-nickers
15:38 DrForr Don't get your nicks all in a twist.
15:41 moritz [Coke]: re RT bugadmin, how does that work?
15:42 [Coke] people complain they can't update tickets. You verify they are upstanding citizens, then go to that link, and add their RT login id (or email) and submit.
15:43 [Coke] I have never had occasion to remove someone from the list, but you could do that too.
15:44 moritz [Coke]: is https://rt.perl.org/Admin/Gr​oups/Members.html?id=178234 "that link"?
15:44 moritz no, "parrot commits" sounds wrong
15:45 [Coke] no
15:45 ZzZombo m: say 0e0=>Inf
15:45 ZzZombo m: say Inf=>0e0
15:45 camelia rakudo-moar 53a6d3: OUTPUT: «0 => Inf␤»
15:45 camelia rakudo-moar 53a6d3: OUTPUT: «Unexpected named argument 'Inf' passed␤  in block <unit> at <tmp> line 1␤␤»
15:45 [Coke] I sent you the link
15:45 ZzZombo :s
15:45 [Coke] Was in the email.
15:46 ZzZombo is there a Pair analog for any values as the key?
15:46 wamba joined #perl6
15:46 IOninja ZzZombo: what makes no sense.
15:47 ZzZombo what or that, if the first, I
15:47 moritz [Coke]: haven't got any emails yet; will check my spam filter
15:47 moritz m: say Pair.new(2, 2).key.^name
15:47 camelia rakudo-moar 53a6d3: OUTPUT: «Int␤»
15:47 ZzZombo 'm confused by the dot at the end of the sentence
15:47 [Coke] it's on your RT email addy, if that helps.
15:48 IOninja ZzZombo: is there a car analog for any human as the passenger?
15:48 moritz ZzZombo: ^^ a pair with non-Str key
15:48 [Coke] ZzZombo: do you mean "Any", not any?
15:48 IOninja Oh, now I understand
15:48 [Coke] moritz++
15:48 ZzZombo m: say Pair.new(Inf,0e0)
15:48 camelia rakudo-moar 53a6d3: OUTPUT: «Inf => 0␤»
15:49 [Coke] m: say Pair.new(Inf,0e0).perl;
15:49 camelia rakudo-moar 53a6d3: OUTPUT: «(Inf) => 0e0␤»
15:49 IOninja m: (42 => 42).key.^name.say
15:49 camelia rakudo-moar 53a6d3: OUTPUT: «Int␤»
15:49 ZzZombo thanks, moritz
15:49 IOninja Actually, no I wasn't wrong.
15:49 moritz found an email from my wife in the spam filter, but not from [Coke]++ :(
15:49 IOninja Pairs do not stringify keys
15:50 IOninja m: ((Inf)=>0e0).key.^name.say
15:50 camelia rakudo-moar 53a6d3: OUTPUT: «Num␤»
15:50 IOninja m: %(Inf=>0e0).keys[0].^name.say
15:50 camelia rakudo-moar 53a6d3: OUTPUT: «Str␤»
15:50 timotimo are you saying we need a %:() syntax?
15:51 [Coke] irc'd it.
15:51 IOninja timotimo: what would it do?
15:51 [Coke] ... that looks some sort of ASCII animal.
15:51 timotimo it'd give you an object hash
15:51 timotimo much like :{ } does
15:51 IOninja ....
15:51 [Coke] m: :{ } :cookie!
15:51 camelia rakudo-moar 53a6d3: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Bogus postfix␤at <tmp>:1␤------> 3:{ } :cookie7⏏5!␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤        statement modifie…»
15:51 [Coke] m: :{ }, :cookie!
15:51 camelia rakudo-moar 53a6d3: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Bogus postfix␤at <tmp>:1␤------> 3:{ }, :cookie7⏏5!␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤        statement modifi…»
15:51 [Coke] aw.
15:51 IOninja timotimo: ... and so we don't need any syntax?
15:52 IOninja m: :{Inf=>0e0}.keys[0].^name.say
15:52 camelia rakudo-moar 53a6d3: OUTPUT: «Str␤»
15:52 IOninja m: :{(Inf)=>0e0}.keys[0].^name.say
15:52 camelia rakudo-moar 53a6d3: OUTPUT: «Num␤»
15:52 timotimo *shrug*
15:52 IOninja m: $_ = 42; :{ $_ =>0e0}.keys[0].^name.say
15:52 camelia rakudo-moar 53a6d3: OUTPUT: «Int␤»
15:52 timotimo that's probably correct
15:56 jnthn IOninja: PositionalBindFailover is so that you can have `sub foo(@a) { }` and call it with stuff like foo(@b.grep(*.bar)), which should not work otherwise since Iterable is not Positional
15:56 yoleaux 15:29Z <IOninja> jnthn: would you have a second to look at https://github.com/rakudo/rakudo/pull/1030 ? It passes stresstest but I'm not 100% sure the original behaviour wasn't intended.
15:56 llfourn joined #perl6
15:58 pyrimidine joined #perl6
15:58 IOninja m: say ().Seq eqv ()
15:58 camelia rakudo-moar 53a6d3: OUTPUT: «True␤»
15:58 IOninja ^ is that not a bug for the same reasons, then?
15:58 jnthn It's a bug because eqv is meant to distinguish by type
15:58 IOninja \o/
15:59 IOninja I'll merge the PR thenm
15:59 jnthn I'd guess eqv was a casualty of the GLR behavior change
16:02 cdg joined #perl6
16:03 IOninja ugh, GitHub seems to be bent on making the site as ugly as possible.
16:03 IOninja They now changed all the merge colors to Burn-Out-Your-Retina Blue
16:04 IOninja And I bet this was because after the top bar change people told them notifications icon was hard to notice -_-
16:04 [Coke] I see the code links are now a deeper blue. Reminds me of C64
16:05 IOninja oh god, yes, the links changed too >_<
16:05 IOninja Reminds me of the 90s when all the sites had default blue link colours.
16:06 [Coke] FWIW, I am not bothered by their color choices.
16:07 IOninja I'm terribly annoyed.
16:07 telex joined #perl6
16:08 IOninja The old colours were very welcoming. The new style—especially with this caustic blue—just make me want to close the page ASAP
16:08 IOninja There are always user styles, I guess....
16:12 timotimo *sigh* the good old times when all your site needed to stand out was non-default links for normal, hover, and visited ...
16:14 pyrimidine joined #perl6
16:17 Geth ¦ ecosystem: fd233e6de7 | (Jonathan Worthington)++ | META.list
16:17 Geth ¦ ecosystem: Add SSH::LibSSH.
16:17 Geth ¦ ecosystem: review: https://github.com/perl6/e​cosystem/commit/fd233e6de7
16:22 IOninja The good old times when www.csszengarden.com was the ideal and not "some nerd booed us for using default bootstrap colours so let's change them by banging our head on the number pad!"
16:23 timotimo %)
16:24 timotimo that face when your buddy has a hexadecimal number pad and you just can't stand that every keyboard out there only has decimal numpads
16:25 IOninja :)
16:27 pyrimidine joined #perl6
16:30 IOninja Having trouble reproing this to write a test: https://rt.perl.org/Ticket/Display.html?id=127403
16:30 IOninja At least via a bot...
16:30 * IOninja builds 2016.01 release...
16:30 [Coke] win 32
16:30 IOninja [Coke]: you won!
16:30 [Coke] oops
16:32 timotimo i'm glad microsoft finally built a proper win64
16:33 khw joined #perl6
16:33 [Coke] timotimo: http://nerdist.com/smash-mouths-all-star-made-​with-windows-xp-sounds-might-break-your-brain/
16:34 timotimo all star is a fantastic base upon which to build memeperiums
16:35 gdonald_ joined #perl6
16:35 IOninja Can't repro with a build either....
16:35 IOninja Guess I'll close it without a test...
16:35 timotimo so sad that the linux/opensource people haven't yet built a worthy replacement for Space Cadet
16:36 timotimo it's very clear that linux has only such a weak presence on the desktop because of lack of space cadet
16:36 timotimo i mean, they already have solitaire and spider solitaire and also minesweeper
16:41 elaADnlxie joined #perl6
16:42 elaADnlxie .
16:42 AlexDaniel .
16:42 elaADnlxie IOninja: nobody .tells me anyway :)
16:43 IOninja I suspect this bug hits OSX only. If anyone has OSX and can build 86a90be to repro the bug and write the test to cover it: https://rt.perl.org/Ticket/Disp​lay.html?id=127403#txn-1451967
16:43 elaADnlxie IOninja: thing is, I'm wondering what should happen if you eqv two Seqs
16:43 elaADnlxie IOninja: or even a Seq and something else
16:43 elaADnlxie pretty sure they should not be reified
16:43 IOninja elaADnlxie: 'cause you were using this weird nick and I didn't bother using the bot, it was just amention in hopes you at least read the log
16:44 elaADnlxie I do, sometimes :)
16:44 IOninja Well, I said something
16:44 IOninja I forget what
16:45 IOninja Oh, no I didn't
16:45 IOninja But I wanted to
16:45 elaADnlxie now you understand how we feel… :)
16:45 IOninja It's about (HEAD) in tickets. I've no idea what HEAD is when reading the ticket, so if that's bot-generated the bot should say what SHA the head is
16:46 IOninja mc: say 42
16:46 committable6 IOninja, ¦«2015.12»:
16:46 elaADnlxie right! I've never thought about it
16:46 elaADnlxie IOninja: and now you finally noticed how I broke the bot!
16:46 timotimo we can probably convert a date/time into "what is HEAD in commitable right now?"
16:46 IOninja Oh hehe
16:46 elaADnlxie e: say 42
16:46 evalable6 elaADnlxie, rakudo-moar dd1dab2e3: OUTPUT«42»
16:46 elaADnlxie evalable kinda does it already
16:46 elaADnlxie wow, what a SHA…
16:47 elaADnlxie c: HEAD say 42
16:47 committable6 elaADnlxie, ¦«HEAD»: 42
16:47 timotimo it's easy as 1 2 3
16:47 elaADnlxie committable doesn't
16:47 elaADnlxie there's this ticket also: https://github.com/perl6/whateverable/issues/49
16:47 elaADnlxie (if open, then not fixed)
16:54 SmokeMachine Im fixing the ?? !! PR... I have a question: do you the unicode ⁇ should match the not unicode !! and vice-versa? in my opinion it shouldn't... but I just want to be sure...
16:55 eroux joined #perl6
16:56 llfourn joined #perl6
16:56 moritz is there a good reason to require a match?
16:57 moritz m: say ༩9
16:57 camelia rakudo-moar dd1dab: OUTPUT: «99␤»
16:57 moritz we allow mixing of scripts in numbers, so I think it would be consistent to allow a mixing here too
16:58 IOninja m: say 42 »+« 55
16:58 camelia rakudo-moar dd1dab: OUTPUT: «97␤»
16:58 IOninja m: say 42 »+<< 55
16:58 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Missing « or »␤at <tmp>:1␤------> 3say 42 »+7⏏5<< 55␤    expecting any of:␤        infix␤        infix stopper␤»
16:58 SmokeMachine moritz: match, I mean: ⁇ !! and ?? ‼ be OK
16:58 IOninja We don't allow that here, and IMO we shouldn't
16:58 SmokeMachine IOninja: ok! i agree!
16:59 IOninja The `⁇ !!` looks like "it works only by accident" to me. There's no good reason to mix them that way when writing code.
16:59 SmokeMachine IOninja: I trying to make ?? !! and ⁇ ‼ a single token...
16:59 SmokeMachine IOninja: I agree...
17:01 IOninja m: "༩9".comb».uniprop.say
17:01 camelia rakudo-moar dd1dab: OUTPUT: «(Nd Nd)␤»
17:02 IOninja And these work because they have the same Unicode property
17:02 rurban joined #perl6
17:02 elaADnlxie I'd say it should work, but then »<< stuff has to be changed as well. Therefore no :)
17:03 SmokeMachine IOninja: Im trying something like this... but the $*GOAL inside of the [] isn't working... https://www.irccloud.com/pastebin/gQSxKzMR/
17:04 IOninja SmokeMachine: stick {} before it
17:05 SmokeMachine IOninja: do you mean {$*GOAL} ?
17:05 IOninja That's not before it :)
17:06 IOninja Hold on.
17:06 SmokeMachine IOninja: sorry, but {}$*GOAL didn't make sense for me... :P
17:07 IOninja m: grammar { token TOP { <foo> {} :my $*GOAL = $<foo> eq 'foo' ?? 'x' !! 'y'; [$*GOAL ]}; token foo { .**3 } }.parse('foox').say
17:07 camelia rakudo-moar dd1dab: OUTPUT: «「foox」␤ foo => 「foo」␤»
17:07 IOninja m: grammar { token TOP { <foo> :my $*GOAL = $<foo> eq 'foo' ?? 'x' !! 'y'; [$*GOAL ]}; token foo { .**3 } }.parse('foox').say
17:07 camelia rakudo-moar dd1dab: OUTPUT: «Use of Nil in string context␤  in regex TOP at <tmp> line 1␤Nil␤»
17:07 IOninja Right, before the `:my` thing
17:08 SmokeMachine IOninja: thanks!
17:08 IOninja SmokeMachine: updating $/ is very expensive so it's not done willy-nilly and empty {} forces the update, so that ~$<sym> inside the :my thing has proper value
17:08 SmokeMachine thanks! I got it!
17:10 IOninja SmokeMachine: and $*TERNARYBEGIN stuff... that can probably be avoided by just using the ~$<sym> instead
17:10 IOninja like, don't store it in a variable
17:10 SmokeMachine IOninja: yes, Im going that way!
17:10 IOninja And in `~$<sym> eq '??'` eq already stringifies, no need for `~`
17:11 SmokeMachine ok
17:15 IOninja Well, any block forces the update, not just the empty one. But if you don't got any code to run in a block, you can use an empty ojne.
17:16 * perlpilot wonders how to type the unicode ?? on his keyboard without needing to know the hex value.
17:16 perlpilot I may need to remap <compose>?? to be ⁇ instead of ¿
17:17 IOninja same
17:17 IOninja ¡
17:17 perlpilot yeah, that too
17:18 IOninja u: ⁇‼
17:18 unicodable6 IOninja, U+2047 DOUBLE QUESTION MARK [Po] (⁇)
17:18 unicodable6 IOninja, U+203C DOUBLE EXCLAMATION MARK [Po] (‼)
17:18 elaADnlxie you can add it to your compose file, or you can add it to your keyboard layout directly
17:18 IOninja The codes are pretty easy to remember :)
17:18 elaADnlxie or you can configure your editor
17:18 IOninja m: say 42 ⁇ "heh" ‼ "meow"
17:18 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Confused␤at <tmp>:1␤------> 3say 427⏏5 ⁇ "heh" ‼ "meow"␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statement modifier…»
17:18 elaADnlxie … or you can learn to use your editor so that you can search characters by name…
17:19 IOninja Hm, these are starting to grow on me :}
17:19 elaADnlxie IOninja: wait for ≤ ≥ ;)
17:19 SmokeMachine is mon broken?
17:19 IOninja elaADnlxie: And the =/=
17:20 elaADnlxie oh, ≠, right
17:20 IOninja No idea what the code for it is
17:20 IOninja u: ≠
17:20 unicodable6 IOninja, U+2260 NOT EQUAL TO [Sm] (≠)
17:20 IOninja SmokeMachine: what's 'mon'?
17:20 IOninja n
17:21 SmokeMachine sorry, nom
17:21 * IOninja eyes ≢ and ≣
17:21 IOninja SmokeMachine: nope, passed all stresstests on its last commit.
17:21 elaADnlxie note for emacs users: C-x 8 RET to enter characters by name, and helm can help you with the search
17:21 IOninja SmokeMachine: did you pull from rakudo/rakudo tho?
17:22 SmokeMachine git pull --rebase https://github.com/rakudo/rakudo
17:22 IOninja Yeah, and did that succeed?
17:22 IOninja SmokeMachine: and... did you do it recently to pull all the changes?
17:22 IOninja Oh, reminds me, I need to write the test for ().Seq eqv () thing
17:23 IOninja SmokeMachine: also is t/spec perl6/roast/master or is it your fork that's now outdated?
17:24 SmokeMachine yes... but its not I just did it... and now make doesn't work...
17:25 IOninja run configure
17:25 IOninja perl Configure.pl --gen-moar --gen-nqp --backends=moar; make; make test; make install
17:25 SmokeMachine of course! sorry!
17:26 SmokeMachine about the t/spec, I do this: https://www.irccloud.com/pastebin/Fd5FBqrF/
17:26 IOninja m: use Test; cmp-ok 42, '!eqv', 43
17:26 camelia rakudo-moar dd1dab: OUTPUT: «not ok 1 - ␤␤# Failed test at <tmp> line 1␤# Could not use '"!eqv"' as a comparator.␤»
17:27 IOninja m: use Test; cmp-ok 42, &[!eqv], 43
17:27 camelia rakudo-moar dd1dab: OUTPUT: «ok 1 - ␤»
17:27 IOninja Str version should prolly do the same thing; though I recall the code for it is tricky as it is....
17:31 SmokeMachine IOninja: running stress tests...
17:32 IOninja don't forget TEST_JOBS var
17:32 SmokeMachine does dubious tests mean error?
17:33 IOninja yes, that's often due to them failing to compile
17:34 sufrostico joined #perl6
17:35 sufrosti1o joined #perl6
17:37 SmokeMachine IOninja: now I have to ride my girls to the movies... should I update my PR to get more comments and see what happened with the tests when I get back? or should I update when the tests are passing?
17:38 IOninja SmokeMachine: update when tests are passing.
17:38 SmokeMachine ok
17:38 IOninja And well,. show the tests on IRC, maybe some failures aren't due to your PR
17:44 timotimo especially since we also have added some roast commits and some rakudo commits since that PR started
17:46 IOninja lulz S03-operators/eqv.t has seriously Perl-5-ish tests in it
17:46 timotimo it's probably 10 years old
17:46 IOninja my $a = \3; my $b = \3; ok ($a eqv $a), "eqv on scalar references (1-1)";
17:46 timotimo "references" %)
17:46 timotimo m: my $a = \3; dd $a
17:46 camelia rakudo-moar dd1dab: OUTPUT: «Potential difficulties:␤    To refer to a positional match capture, just use $0 (numbering starts at 0).␤    Parenthesize as \(...) if you intended a capture of a single numeric value.␤    at <tmp>:1␤    ------> 3my $a = \7⏏3; dd $a␤Cap…»
17:46 timotimo yeah
17:47 timotimo that's skipped, right?
17:47 IOninja No
17:47 IOninja That's just a warning.
17:47 timotimo oh
17:48 IOninja m: $*ERR.close; my $a = \3; dd $a
17:48 camelia rakudo-moar dd1dab: OUTPUT: «Potential difficulties:␤    To refer to a positional match capture, just use $0 (numbering starts at 0).␤    Parenthesize as \(...) if you intended a capture of a single numeric value.␤    at <tmp>:1␤    ------> 3$*ERR.close; my $a = \7⏏3;…»
17:48 IOninja :(
17:48 IOninja m: BEGIN $*ERR.close; my $a = \3; dd $a
17:48 camelia rakudo-moar dd1dab: ( no output )
17:48 IOninja m: BEGIN $*ERR.close; my $a = \3; say $a
17:48 camelia rakudo-moar dd1dab: ( no output )
17:48 timotimo need to ... yeah
17:48 IOninja orly
17:48 pyrimidine joined #perl6
17:50 IOninja Ah, tis the bot quirk
17:50 IOninja Doesn't do anything in normal terminal
17:51 IOninja "You have POTENTIAL difficulties in your code, but I won't stfu, so you may as well go ahead and change them right now. Love. Perl6"
17:52 timotimo haha
17:52 timotimo it does offer something to shut the compiler up
17:52 timotimo in this case \(3) instead of \3
17:52 IOninja heh
17:52 timotimo which is also how it prints it out
17:53 ZzZombo_ joined #perl6
17:53 mcmillhj joined #perl6
17:56 Sound joined #perl6
17:56 ambs joined #perl6
17:57 llfourn joined #perl6
17:57 ribasushi joined #perl6
17:59 IOninja m: use MONKEY; class Foo { method message { say "class" } }; role Bar { method message { say "role" } }; augment class Foo does Bar {}; Foo.new.message
17:59 camelia rakudo-moar dd1dab: OUTPUT: «class␤»
17:59 IOninja Is there a way to replace a method in a class?
18:02 timotimo well, putting a method into a class that's the same as in a role is how you resolve conflicts in multiple-inheritance situations
18:05 [Coke] m: use MONKEY; class Foo { method message { say "class" } }; agument class Foo {method message { say "ook"}; Foo.new.messsage;
18:05 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Redeclaration of symbol 'Foo'␤at <tmp>:1␤------> 3age { say "class" } }; agument class Foo7⏏5 {method message { say "ook"}; Foo.new.m␤    expecting any of:␤        generic role␤»
18:05 aindilis joined #perl6
18:05 [Coke] m: use MONKEY; class Foo { method message { say "class" } }; augment class Foo {method message { say "ook"}; Foo.new.messsage;
18:05 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Package 'Foo' already has a method 'message' (did you mean to declare a multi-method?)␤at <tmp>:1␤»
18:05 IOninja m: class Foo { method message { say "class" } }; Foo.^lookup('message').wrap: method () { say "role" }; Foo.new.message
18:05 camelia rakudo-moar dd1dab: OUTPUT: «role␤»
18:11 IOninja m: \3
18:11 camelia rakudo-moar dd1dab: OUTPUT: «Potential difficulties:␤    To refer to a positional match capture, just use $0 (numbering starts at 0).␤    Parenthesize as \(...) if you intended a capture of a single numeric value.␤    at <tmp>:1␤    ------> 3\7⏏3␤»
18:12 IOninja m: BEGIN X::Comp::Group.^lookup('gist').wrap: -> | { say "'You're the boss, boss! I'll keep my face shut'" }; \3
18:12 camelia rakudo-moar dd1dab: OUTPUT: «'You're the boss, boss! I'll keep my face shut'␤True»
18:12 IOninja ehehe. I showed it who's boss :}
18:12 esh joined #perl6
18:12 IOninja m: BEGIN X::Comp::Group.^lookup('gist').wrap: -> | { "'You're the boss, boss! I'll keep my face shut'" }; say \3
18:12 camelia rakudo-moar dd1dab: OUTPUT: «'You're the boss, boss! I'll keep my face shut'\(3)␤»
18:13 IOninja m: BEGIN X::Comp::Group.^lookup('gist').wrap: -> | {''}; say \3
18:13 camelia rakudo-moar dd1dab: OUTPUT: «\(3)␤»
18:15 [Coke] Any sixers in NYC? I'll be visiting for perl things on the 14th.
18:18 IOninja m: sub infix:<?> is tighter(&postfix:<i>){ $^a || $^b }; say 42 ? 5
18:18 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Confused␤at <tmp>:1␤------> 3hter(&postfix:<i>){ $^a || $^b }; say 427⏏5 ? 5␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        st…»
18:18 IOninja Can't define your own op that's a `?`, eh?
18:18 timotimo bah, smls beat me by about 2 minutes on stackoverflow
18:21 IOninja heh, that person with PCRE jumping in :P
18:23 timotimo yeah
18:27 esh joined #perl6
18:27 cyphase joined #perl6
18:28 pyrimidine joined #perl6
18:31 * IOninja keeps mixing up meanings of <before>/<after>
18:34 esh joined #perl6
18:36 IOninja .oO( Pro::Test )
18:37 IOninja Gonna make a testing module.
18:38 tony-o IOninja: check out 'Green'
18:38 IOninja buggable: eco green
18:38 buggable IOninja, Green 'Parallel testing utility, it's really great': https://github.com/tony-o/perl6-green
18:38 tony-o if you want to contribute/have feedback i'd love to have/hear it
18:38 IOninja no docs?
18:38 tony-o http://ugexe.com/parallel-test​ing-and-a-perilous-pilgrimage/
18:39 tony-o i have a bug that was filed, i'm writing docs as we speak, actually
18:40 tony-o (writing docs in the README rather than a link to the blog post in the README)
18:40 IOninja My first impression is it looks really ugly.
18:40 IOninja What's with that epileptic skull at the end?
18:41 tony-o my sweet profile photo
18:41 IOninja tony-o: so does it produce TAP?
18:41 tony-o what do you mean it looks ugly, the output?
18:41 tony-o IOninja: it consumes TAP
18:41 IOninja Oh
18:42 IOninja No I meant the code. All the brace-fest
18:42 * IOninja installs
18:42 IOninja `zef install https://github.com/tony-o/perl6-green` don't work... I thought it was the future!
18:43 tony-o it's  doable without all of the braces (with the exception of the subs)
18:43 tony-o lol, really?
18:43 IOninja I think it expects a ZIP archive or something
18:43 tony-o oh my zef is in the middle of changes
18:43 tony-o and it's borked
18:44 jdickens joined #perl6
18:44 tony-o `zef install Green` should work, though
18:44 IOninja I just cloned and zef install .
18:44 tony-o that works too
18:44 IOninja Seems to be just hanging... Unless it's compiling a gajillion of modules :/
18:45 tony-o terminal::ansicolor
18:45 tony-o is the only module it uses
18:45 Actualeyes left #perl6
18:45 IOninja This is what I'm trying: https://gist.github.com/zoffixznet​/4a7e298a0255d3654fb31d901eb25407
18:45 IOninja And I get no output, it just sits there
18:46 espadrine joined #perl6
18:46 jdickens Does anyone remeber the name of the video where a guy from  a big perl shop (perhaps bookings.com) say they choose perl because they got tired of going with the latest fad framework/language
18:46 IOninja jdickens: dunno, but that sounds like something Curtis 'Ovid' Poe might say....
18:47 tony-o IOninja: you'd run that file with green, not perl6
18:47 IOninja Ohh
18:48 tony-o still hangs, looks like i need to remove some dust from that one too - arg
18:48 IOninja :)
18:49 tony-o there is a lot of shorthand ways without all of the braces, checkout the examples/ folder
18:49 IOninja tony-o: I assume in the shorthand `ok 1 == 1;` I can still add proper description?
18:50 tony-o yessir
18:51 IOninja tony-o: FWIW, I'm a bit amused with the description on the site about making it easy to run, but the first thing I tried running is green my-test-file and it complained that there's no such such directory and I had to create one and move the test file there :)
18:51 tony-o yea i know
18:52 tony-o looks like i have a queue of old modules i need to maintain :-)
18:52 IOninja :)
18:54 tony-o it *was* easy to run when it was working, though
18:54 tony-o that's my excuse, anyway
18:54 * IOninja has 6p alias to run tests :P
18:55 IOninja `prove -e 'perl6 -Ilib' -vlr`
18:55 DrForr IOninja: '6p' and '6' here :)
18:55 tony-o i just use !pro and it runs the same prove command i originally used 3 years ago
18:58 llfourn joined #perl6
19:01 cdg_ joined #perl6
19:02 effbiai joined #perl6
19:02 effbiai joined #perl6
19:03 tony-o found the issue IOninja , the errors aren't bubbling out of scope anymore, doh
19:03 Geth ¦ ecosystem: bradclawsie++ created pull request #300: add Context
19:03 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/pull/300
19:07 Geth ¦ ecosystem: 2cf6648946 | (Brad Clawsie)++ | META.list
19:07 Geth ¦ ecosystem: add Context (#300)
19:07 Geth ¦ ecosystem:
19:07 Geth ¦ ecosystem: https://github.com/bradclawsie/Context
19:07 Geth ¦ ecosystem: review: https://github.com/perl6/e​cosystem/commit/2cf6648946
19:08 IOninja tony-o: but in any case, for Pro::Test I was thinking more of re-touching Test.pm6 a bit. Its routines are basically Perl 5's copies, which don't fit well into Perl 6.
19:08 IOninja Not a whole 'nother system of testing
19:09 tony-o i'd love to see that
19:09 IOninja Like, `is`. I'll burn it with fire.
19:09 tony-o and i could integrate green with it
19:09 IOninja Cool.
19:10 IOninja Won't happen any time soon, 'cause I gotta do IO stuff for the next 2 months :P
19:10 nowan_ joined #perl6
19:10 IOninja ninjaing /o/  -o-  \o-
19:10 tony-o i'm a fan of getting the IO stuff tip top
19:11 tony-o not that it's not already pretty ++
19:11 IOninja .oO( you clearly haven't seen the code :o )
19:11 IOninja :D
19:12 IOninja Hm, and after IO I wanted to sort out the FatRat stuff.
19:12 IOninja Time to quit my job and be hobo! I can always program at a local library :P
19:16 tony-o i have seen it, i've spent a lot of time digging around in it and chatting with timotimo and jnthn :-), it works and it's come a long ways since 2012 when i first started digging around in there
19:17 IOninja :)
19:18 El_Che IOninja: weren't you a hobo already? ;)
19:19 IOninja El_Che: why do you say that?
19:19 tony-o Green fixes are pushed up to github IOninja
19:19 IOninja I actually have been a hobo for about a month in my teens but didn't really realize it at the time...
19:20 IOninja tony-o: cool
19:20 tony-o being a hobo is fun, ultraromance++
19:22 El_Che IOninja: you change nicks al the time. I thought you used the one on whatever public pc was used ;)
19:22 IOninja lol
19:30 alphah joined #perl6
19:30 labster joined #perl6
19:33 alphah Hello Perl6, How to disable the error message when try to shift empty array? 'p6: my @a.shift or die "Usgae:"'
19:34 [Coke] m: my @a; @a.shift;
19:34 camelia rakudo-moar dd1dab: OUTPUT: «Cannot shift from an empty Array␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
19:34 IOninja p6: try (my @a.shift) or die "Usgae:"
19:34 camelia rakudo-moar dd1dab: ( no output )
19:35 * IOninja was hoping for output there...
19:35 IOninja alphah: back up a bit. Why do you need this?
19:35 [Coke] @a // @a.shift
19:35 IOninja :/
19:36 IOninja useless use of // :)
19:36 timotimo IOninja: i expect your try was swallowing the whole statement
19:36 timotimo i.e. do it like this:
19:37 timotimo p6: (try my @a.shift) or die "Usage: "
19:37 IOninja timotimo: mhm, paren in wrong place
19:37 camelia rakudo-moar dd1dab: OUTPUT: «Usage: ␤  in block <unit> at <tmp> line 1␤␤»
19:37 [Coke] perhaps I meant @a && @a.shift. :P
19:37 IOninja perhaps .shift should die :) I don't get why it does
19:38 timotimo um but it does already die?
19:38 IOninja *shouldn't
19:38 timotimo oh
19:38 IOninja alphah: you still alive?
19:38 Ven joined #perl6
19:38 timotimo m: my @a.pop # also dies
19:38 camelia rakudo-moar dd1dab: OUTPUT: «Cannot pop from an empty Array␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
19:38 IOninja alphah: kinda sucks that you ask a question and leave, while the rest of ask asked you questions and waiting for response...
19:40 alphah @IOninja I need to shift the array based on user input (it's Arguments array) and I need to assign an Arg. A value.
19:40 alphah I did not leave, I'm just rying to explain why I need it,, (English is my not first so it take time)
19:41 DrForr alphah: 'my @a.shift;' would throw away the shifted value, if it did work. You probably wanted 'my $arg = @a.shift;' which would preserve the argument.
19:41 IOninja alphah: but how do you end up with an array that has stuff that you want to shift in the first place?
19:41 moritz alphah: maybe you want @a && @a.shift ?
19:42 DrForr alphah: Also, you might want to read the documentation for MAIN - It can do some things that you might be overlooking.
19:42 alphah I'll post the code, one minute
19:42 IOninja OK
19:43 timotimo and of course looking at the multiple GetOpt and similar modules also probably helps
19:43 [Coke] (use a paste service, please)
19:46 alphah I dont want to use getopt, i need the program args to look like Human sentences,, without "--"  or "-":any way here is the code:
19:46 alphah while @!laws.shift -> $law {
19:46 alphah given $law { -> $law {
19:46 IOninja alphah: would you use a pastebin please? It's hard to read (or run) code pasted into IRC
19:46 lep-delete joined #perl6
19:47 IOninja alphah: here: https://gist.github.com/ paste code. Press button, and give us the url of the page
19:47 alphah alright one secone (Have not used it before), and sorry guys I'm tottaly noop
19:47 IOninja noop :P{
19:47 bjz joined #perl6
19:48 DrForr alphah: We all had to start somewhere :)
19:48 IOninja Except me. I was born awesome.
19:48 [Coke] IOninja: really? What happened?
19:48 IOninja Hm?
19:49 IOninja I don't get it.
19:49 * [Coke] is implying that you are no longer awesome, and then asks what happened to cause the change.
19:49 esh joined #perl6
19:49 IOninja Oh, ok
19:49 timotimo haha ooooh
19:50 [Coke] ¿uɹnq ǝɥʇ ʃǝǝɟ
19:50 IOninja While we wait: on the subject of things dying.... .push dies, but .pop returns a Failure
19:50 IOninja and .unshift, .shift return Failures
19:50 alphah https://gist.github.com/anonymous​/e7a70d174279f711917d78dc3f63be65
19:51 IOninja hahaha
19:51 IOninja I knew Perl 6 with 8-space tab looked mental :P
19:51 IOninja alphah: but that's not all the code. Where do you get @!laws from?
19:51 timotimo i'd get neck cramps from coding like that
19:52 IOninja alphah: AND where is that used afterwards that you're shifting from it?
19:53 alphah I actually have 2-tab  but "cat" and copy/paste converted it
19:53 timotimo ah, of course
19:53 alphah anyway @!laws = @*ARGS
19:53 IOninja alphah: what I mean is... you do know you can write it with a `for`: https://gist.github.com/zoffixznet​/3462578766ab1958d4e3062b051765a0
19:53 pyrimidine joined #perl6
19:53 IOninja alphah: OK, but why shift it? As opposed to leaving it as is.
19:54 moritz Please vote for covers for the "Perl 6 by Example" book: https://en.99designs.de/contests/poll/f5ls74
19:54 alphah say the use will run the program is program.p6 arg1 valu1 arg2 val2 arg3bool
19:55 IOninja moritz: #57 by far
19:55 IOninja alphah: but you just wanna loop over all the args, right.
19:56 alphah yes
19:56 moritz IOninja: thanks
19:56 IOninja alphah: right, so toss shift outta the window. It's for modifying arrays and you don't care about it. Just loop over it with `for`
19:57 moritz IOninja: can you please also leave a vote on that page, so that I don't lose overview? :-)
19:57 IOninja Done. I think.
19:58 moritz I says votes (0) :(
19:58 moritz ah no
19:58 moritz only on the overview
19:59 moritz thanks!
19:59 IOninja m: @*ARGS = 'origin'; multi MAIN (@ ('origin')) { say "meow"; }
19:59 camelia rakudo-moar dd1dab: OUTPUT: «Usage:␤  <tmp> <Positional> ␤»
19:59 IOninja It doesn't like literals in subsigs?
19:59 llfourn joined #perl6
20:00 IOninja Ah, need a slurp
20:00 IOninja Um, nope
20:00 IOninja m: @*ARGS = 'meow meow meow'; multi MAIN (*@ ('origin')) { say "meow"; }
20:00 camelia rakudo-moar dd1dab: OUTPUT: «Usage:␤  <tmp> [<Positional> ...] ␤»
20:00 IOninja :/
20:00 IOninja nm... PEBKAK
20:03 alphah @IOninja will see if I can get rid of shift
20:03 IOninja alphah: it's in the first gist I showed you. Just use `for @!laws -> $law`
20:03 IOninja alphah: also, you can do stuff like this: https://gist.github.com/zoffixznet​/737ba0148c1818b22cd326189cce19b8
20:04 IOninja oh wait, you don't need the slurpy :}
20:05 IOninja alphah: I meant this: https://gist.github.com/zoffixznet​/399d32f6a62861f240cff385d1e97980
20:05 alphah alright will take a look at these, Thanks for help
20:08 IOninja m: my @laws = <power force meow>; for @laws { when 'power' { say 'Power overwhelming' }; when 'force' { say 'Use the force, Luke' }; when 'meow' { say 'KITTY!' } }
20:08 camelia rakudo-moar dd1dab: OUTPUT: «Power overwhelming␤Use the force, Luke␤KITTY!␤»
20:09 IOninja m: my @laws = <power force meow>; while (try @laws.shift) {  when 'power' { say 'Power overwhelming' }; when 'force' { say 'Use the force, Luke' }; when 'meow' { say 'KITTY!' } }
20:09 camelia rakudo-moar dd1dab: ( no output )
20:09 IOninja Glitch?
20:09 IOninja works if you declare explicit -> $_ sig
20:10 ajr_ joined #perl6
20:11 IOninja m: Nil.head
20:11 camelia rakudo-moar dd1dab: OUTPUT: «Cannot resolve caller head(Nil: ); none of these signatures match:␤    (Any:D $: *%_)␤    (Any:D $: $n, *%_)␤  in block <unit> at <tmp> line 1␤␤»
20:12 IOninja Another area in need of polish. Our "safe call" operator ain't that safe.
20:12 ajr_ By dint of some scary fiddling with swap space, I have managed to install Perl 6 on a Raspeberry Pi 3
20:12 IOninja wooo \o/
20:12 IOninja ajr_: how much spaw did you use?
20:13 ajr_ Some of the tests for Rakudo* failed, but Perl 6 REPL says "Hello" back to me
20:13 IOninja Cool
20:13 [Coke] \o/
20:14 ajr_ I changed the multiplier to 3 and assigned it to a USB key
20:14 IOninja cool
20:14 IOninja m: say Cool xx 5
20:14 camelia rakudo-moar dd1dab: OUTPUT: «((Cool) (Cool) (Cool) (Cool) (Cool))␤»
20:14 ajr_ (Do not assign unlimited swap to your SD card; the result will be very painful
20:14 ajr_ )
20:16 ajr_ That was with 2016.10. I'll try 2017.01. If I get test failures, where's the best place to report them?
20:17 IOninja huggable: rakudobug
20:17 huggable IOninja, Report bugs by emailing to rakudobug@perl.org
20:17 IOninja ^ there
20:17 IOninja ajr_: FWIW, instead of building Rakudo Star just build the compiler.
20:17 IOninja ajr_: http://rakudo.org/downloads/rakudo/
20:18 IOninja ajr_: do you have git on that thing? After you install the compiler, just clone https://github.com/ugexe/zef and run perl6 -Ilib bin/zef install . in the repo to bootstrap it
20:19 IOninja ajr_: oh, also I misspoke. The failures: if they're Rakudo's tests, report them by emailing to rakudobug@perl.org, but if these are module failure tests, report them to the appropiate module author. You can usually get the repo by going to https://modules.perl6.org/repo/THE_MODULE_NAME
20:21 IOninja heh
20:21 IOninja Hope they got the correction about where to report stuff.
20:25 IOninja huggable: zef
20:25 huggable IOninja, nothing found
20:25 IOninja huggable: zef :is: To install Perl 6's zef package manager:  cd $(mktemp -d); git clone https://github.com/ugexe/zef .;  perl6 -Ilib bin/zef install .
20:25 huggable IOninja, Added zef as To install Perl 6's zef package manager:  cd $(mktemp -d); git clone https://github.com/ugexe/zef .;  perl6 -Ilib bin/zef install .
20:26 IOninja huggable: zef :is: To install Perl 6's zef package manager:  cd $(mktemp -d) && git clone https://github.com/ugexe/zef . &&  perl6 -Ilib bin/zef install .
20:26 huggable IOninja, Added zef as To install Perl 6's zef package manager:  cd $(mktemp -d) && git clone https://github.com/ugexe/zef . &&  perl6 -Ilib bin/zef install .
20:27 ZzZombo joined #perl6
20:32 ajr_ joined #perl6
20:33 ajr_ Sorry, flaky connection dropped me. Why do you recommend compiler-only, rather than R*?
20:34 timotimo we didn't make a rakudo star release for the past month yet
20:36 geekosaur r* always lags a bit, rakudo dev moves quickly whacking bugs in key areas
20:36 geekosaur like, if you're playing with threads, you almost always want to track rakudo git
20:37 labster joined #perl6
20:37 IOninja ajr_: not to the the most regular users, but you're doing something tricky and it sounds like you could benefit from NOT installing all the modules that come with Rakudo Star that you most likely won't ever use.
20:37 IOninja ajr_: I mean... Rakudo Star *is* for most regular users who just want to push button and receive bacon
20:37 ajr_ I'm nowhere near that bleeding-edge. Isn't verifying the building process for the masses useful?
20:39 ajr_ I'm concerned about all the Python hissing, especially on the Pi. I want to make sure that noobs have a guide
20:41 IOninja ajr_: what sort of RPi you got? I wanna get one myself...
20:41 IOninja The one that managed to build Perl 6
20:43 IOninja Though, I suppose fixing all the test failures on Windows would be a more desirable task.
20:44 IOninja If anyone wants to have a go: https://github.com/perl6/roast/issues/197
20:48 lichtkind_ joined #perl6
20:48 f3ew_ joined #perl6
20:48 garu_ joined #perl6
20:48 mls_ joined #perl6
20:48 b^_^d joined #perl6
20:48 ggoebel joined #perl6
20:50 stmuk I've built R on a RPI3 before although I had to upgrade GCC (the one Raspian ships with or shipped with gave me an odd internal error)
20:50 ajr_ IOninja - the one that came with a Pi-Top CEED  https://pi-top.com/product/ceed  - a 3
20:51 ajr_ (Using the Pi-top OS)
20:51 Util_ joined #perl6
20:52 [Coke] IOninja: did jnthn's recent \n | \r\n fix help any of those?
20:53 ajr_ stmuk - what did you do about swap space?
20:54 stmuk I think I added an extra swap file
20:58 ajr_ BTW, giving make -j 4 seemed to be worthwhile. Watching top, at least a couple of times it seemed to be running > 1 job
21:00 cdg joined #perl6
21:01 llfourn joined #perl6
21:02 TEttinger joined #perl6
21:05 ajr_ stmuk - where did you put it? I set the swap file to a USB key, which seemed to work, despite only being USB 2
21:05 stmuk I think I had a total of 2GB VM and it took several hours (forget exactly how long). Next time I shall try -j
21:06 stmuk ajr_: I forget exactly where
21:07 IOninja [Coke], haven't tried but I doubt it's more than a couple
21:07 kurahaupo__ joined #perl6
21:09 lucs (bis) Inline::Perl5 problem: https://gist.github.com/lucs/dd​83de28db51228e7f2c2f5878eb00c2
21:16 lucs My description is probably pretty thin to help for debugging, but maybe someone can suggest what else would be needed to make a proper issue report.
21:17 lucs The Perl 5 code I happen to be inlining is not mine, and I don't quite know how to make extract a small working (or rather, failing) example.
21:17 lucs s/make //
21:19 pyrimidine joined #perl6
21:21 sena_kun joined #perl6
21:22 darthdeus joined #perl6
21:22 darthdeus hey guys, I just found out about perl6 today and holyshit :O how is this not the best language ever? :D
21:23 IOninja It is :)
21:23 IOninja What do you like about it?
21:25 darthdeus huffman coding syntax :P metaoperators, perfect lambda syntax, exception/error handling, grammars :P
21:25 elaADnlxie darthdeus: you're welcome in our efforts to make rakudo faster!
21:25 IOninja :)
21:25 darthdeus I have yet to write my first line of code though, only been on a lecture that was kinda "why is perl6 better than everything else"
21:25 darthdeus elaADnlxie: yeah I've heard that performance is the current issue
21:26 elaADnlxie well, start with something like…
21:26 IOninja hah, cool
21:26 elaADnlxie m: say ‘hello world’
21:26 camelia rakudo-moar dd1dab: OUTPUT: «hello world␤»
21:26 DrForr What lecture was that?
21:26 darthdeus DrForr: my university has a new course on perl6
21:26 IOninja :o wow
21:26 elaADnlxie :O
21:26 [Coke] Color us surprised.
21:26 elaADnlxie darthdeus: ok, what university is that?
21:26 [Coke] What school?
21:26 lichtkind joined #perl6
21:27 DrForr This needs to be tweeted :)
21:27 IOninja Yes
21:27 darthdeus it's kinda one-off though, I doubt it will repeat ... there was one on perl5 two years ago too
21:27 darthdeus elaADnlxie: http://www.mff.cuni.cz/to.en/
21:27 gfldex darthdeus: could you forward some hugs from the Perl 6 docs departement to that class?
21:27 El_Che nice
21:28 [Coke] mmm, tell the prof. we said hi. :)
21:28 darthdeus will do :P btw here's the course overview, though not much detail there https://is.cuni.cz/studium/eng/predmet​y/index.php?do=predmet&amp;kod=NDMI094
21:29 lizmat seems to be from last summer ?
21:29 * IOninja cringes at that description
21:29 darthdeus elaADnlxie: btw regarding rakudo performance, I would love to dive deep into the implementation, but is it reasonable to think that I could actually improve anything? :P
21:30 darthdeus lizmat: yeah looks like the semester is wrong, it's running the first time this year
21:30 El_Che IOninja: behave :)
21:30 IOninja darthdeus, yes. I started with Perl 6 just over a year ago and made lots of core fixes. A lot of it is Perl 6, some NQP (subset of Perl6) and C at the VM level
21:30 elaADnlxie darthdeus: yes. Most things are written in perl 6 + nqp, and you can optimize a bunch of stuff even on that level
21:31 IOninja El_Che: ?
21:32 El_Che IOninja: about the cringing. It one of the first perl6 uni courses
21:32 elaADnlxie IOninja: maybe we should start a choir or something. That was close enough!
21:32 DrForr Well, I have a potential textbook sitting at my elbow :)
21:32 IOninja El_Che: yeah, but it deacribes Perl 6 as experimental language and sucxessor to Perl 6
21:32 pyrimidine joined #perl6
21:32 IOninja El_Che: to Perl 5 I mean
21:33 IOninja El_Che: neighter are true, so that makes me question the content
21:33 lizmat it's all in the eye of the beholder  :-)
21:33 El_Che lizmat: now I need to ask you to behave :)
21:33 IOninja haha
21:33 IOninja fair enough
21:33 darthdeus what's wrong about perl6 being successor of 5? even if they're not compatible
21:33 lizmat some people have other ideas about that
21:34 IOninja darthdeus: MASSIVE political one.
21:34 darthdeus but I see your point, since to this day I've dismissed perl6 as literally "another version of PHP"
21:34 IOninja darthdeus: many Perl 5 people wish Perl 6 would crawl into a hole and die so they get vocal when claims are made about Perl 6 replacing Perl 5
21:34 lizmat ooh, wow  :-)
21:34 IOninja lol
21:35 DrForr It's always fun when chunks of the building hit my balcony.
21:35 IOninja o_O do you live inal a gingerbread house? :)
21:36 DrForr Welcome to Romania :/
21:37 mst darthdeus: many perl5 people spent years hearing perl6 people vocally wish perl5 would crawl into a hole and die
21:37 mst darthdeus: basically, humans are tribal and it's all dumb
21:37 IOninja :)
21:37 El_Che amen, mst
21:38 * mst would note he's mostly a perl5 person ... who regularly yells at perl5 people for banging on perl6
21:38 darthdeus mst: why? I understand others not really liking perl, I mean I kinda wish PHP would crawl into a hole and die, but why would perl5 people hate perl6?
21:38 mst darthdeus: ...
21:38 mst darthdeus: did younot even read what I said? :(
21:38 IOninja darthdeus: change is scary
21:38 IOninja darthdeus: also, Perl 6 had a rocky start that did massive marketing damage to Perl brand
21:39 darthdeus mst: I did :P sorry but just because perl6 wishes perl5 to die doesn't mean they're wrong ... I mean it's kinda like when c++11 wishes c++98 to die
21:39 mst darthdeus: NO IT ISN'T THAT IS THE WHOLE POINT
21:39 avar For a while in the 2000s the message with p6 was "it'll be done real soon", and as a result perl5 suffered since everyone thought it was worthless to maintain / contribute since surely it would be replaced by perl6 in a year or two
21:39 El_Che hahaha
21:39 mst they are DIFFERENT LANGUAGES
21:39 lucs mst: HI, HOW ARE YOU?
21:39 mst darthdeus: from the perl5the narrative coming out of the perl6 community was "we're the replacement when we get there, perl5 is already dead" for some years
21:39 El_Che it cold and rainy outside, let's have this discussion again
21:39 avar But now it's 2017 and while there's a p6 distro and stuff now, no big company/project aside from perl6 itself uses it...
21:39 elaADnlxie btw, even though I see no perl 6 being taught at my university just yet, I've been using it for a couple of courses now. Obviously, other students get some exposure as well, because of me :) The most impressive case was with the course on programming languages (about writing parsers, compilers, etc.), where I was using Perl 6 for almost everything (the focus of the course was on flex+bison :P)
21:40 mst right, so perl5 development picked up again, and we went "hmm, maybe there's two good perl futures here"
21:40 mst the trick is to stick to that narrative
21:40 mst so we don't end up with wilful misinformation like darthdeus mistakenylu thinking comparing two versions of the C++ spec has any bearing on reality
21:40 sufrostico joined #perl6
21:40 IOninja darthdeus: don't mind mst yelling, it's his thing. He's nice on the inside :)
21:40 sufrosti1o joined #perl6
21:41 IOninja Also SHIBOLEET!! SHIBOLEET!
21:41 sufrosti2o joined #perl6
21:41 avar mst: Although if perl6 actually becomes a viable replacement, as the 2000s promised, the two good futures thing might not be needed :)
21:41 mst I've spent the best part of a decade trying to stamp out that sort of misinformation from everywhere so we don't get stupid drama yet again
21:41 darthdeus mst: I understand that perl6 is completely different than perl5 in a lot of ways, but for me c++11 is also completely different than c++98 ... but I understand that they might be different distance apart :P
21:41 avar but that's shoulda coulda territory
21:41 El_Che if we're using the hole metaphore, infighting results in one big hole big enough for two
21:41 IOninja Read the comic https://xkcd.com/806/
21:41 mst avar: it might not be needed but 'shoot for both and let the technology fight, not the humans' is my preference
21:41 darthdeus mst: all things considering, should it even be named perl6 then?
21:41 IOninja darthdeus: no
21:42 darthdeus rakudo sounds better :P
21:42 avar mst: Yeah 100% agree, just explaining that a lot of the butthurt is because in the 2000s everyone was just assuming that the p6 tech would replace the p5 tech in a year or two...
21:42 IOninja darthdeus: but for historical reasons and the wish of creator of both languages the name stuck
21:42 RabidGravy it's all a bit late for that
21:42 mst right, it might have been better having been named something else originally
21:42 mst but at this point it's probably more trouble than its worth to try and retcon it
21:42 DrForr darthdeus: Unfortunately that horse left the proverbial barn several years ago.
21:43 RabidGravy anyhow tomorrow I will write Perl 6 and get paid for it
21:43 darthdeus afaik the docs said somewhere that perl6 is "a language for the next 200 years" ... in light of that, saying it's too late because it's 10 years old doesn't mean much :P
21:43 avar This is made more complex by the fact that. "Originally" perl6 wasn't a new language at all, it was more like what python 3 became
21:43 avar I.e. we'll fix this wart and that wart, but we'll use the same runtime (or compatible), 99.5% of the source is compatible etc.
21:44 mst darthdeus: nobody's saying it's too late, only that it's probably too late for changing the name to be that helpful
21:44 mst but "two languages, one family" is what all the official docs say now
21:44 mst and please just keep to that narrative for the avoidance of drama
21:44 mst whatever you may think about C++ :)
21:45 RabidGravy and write software in a language that pleases you
21:45 * mst likes both perls :D
21:45 tony-o mst++
21:45 RabidGravy I do too
21:46 pyrimidine joined #perl6
21:46 El_Che mst is the perl dalai lama
21:47 darthdeus I just have to find a use case for p6 now :(
21:48 darthdeus also probably a silly question, but why is there both zef and panda? don't they do the same thing?
21:48 elaADnlxie darthdeus: I think we're slowly moving to zef
21:48 kurahaupo__ joined #perl6
21:48 RabidGravy but one day there may even be another one
21:49 IOninja slowly? I thought we were done moving...
21:50 RabidGravy as a complete aside I have put aside the IBM MQ client as the interface doesn't play well with NC
21:50 IOninja darthdeus: for next 100 years. It's a reference to The 100-Year Language essay: http://paulgraham.com/hundred.html
21:50 avar I was packaging rakudo yesterday, so I look up module on github being installed by zef, and the readme says "install with panda this way" :)
21:51 IOninja RabidGravy: do you use `is-deeply` a lot? I may have broke it… err… made it better by detecting failures, I mean!
21:52 darthdeus IOninja: cool, thanks :)
21:52 IOninja avar: grepped the repo and don't realle see where...
21:52 darthdeus and also, in the light of rakudo being slow, how slow is slow? is it slow compared to perl5 and other scripting languages, or slow compared to what it could?
21:53 RabidGravy IOninja, let's see
21:53 RabidGravy I don't use it a lot
21:53 IOninja darthdeus: a lot depends on what you're doing, but definitely slow compared to what it could be. There's a ton of performance work to be done (and is being done).
21:54 * [Coke] wonders how chromatic ended up on that listing.
21:54 IOninja darthdeus: and well, of course that means that if you compare it to 20-25 year old products like Python and Ruby and Perl 5, it'd be much slower too (or first production release was just over a year ago)
21:54 RabidGravy as I've said a milliuon times, it;s fast enough to strean 320K mp3 - it's fast enough
21:54 IOninja [Coke]: which one?
21:54 [Coke] https://is.cuni.cz/studium/eng/predmet​y/index.php?do=predmet&amp;kod=NDMI094
21:55 IOninja "Chromatic (editor): Using Perl 6 (pracovní verze). Available online at https://github.com/perl6/book/"
21:55 IOninja The author of the course used the horribly-outdated book mabby?
21:55 [Coke] ah, https://github.com/perl6/book/blob/a5f3c17f2d0b​e6cbb00bcd0fcfd8e7829a52c8a7/lib/book.sty#L308 maybe.
21:55 IOninja Ah
21:56 RabidGravy IOninja, 26 times in 59 modules so not a lot :)
21:57 IOninja darthdeus: also "speed" is a relative concept. A rough comparison between my Perl 5 and Perl 6 code lands Perl 6 versions about half the size. If you have to pay a programmer for 10 hours instead of 20 hours to write a program runs once a night that completes in 1 minute instead of 1 second, that's a huge win
21:58 IOninja *a program that runs once..
21:58 RabidGravy indeed
21:58 darthdeus IOninja: yeah, the reason I was asking was kinda if I could take my current miniproject that's an erlang/elixir websocket service and write in perl6 instead while still having it reasonably fast :P but I guess I should just start with scripting hehe
21:59 avar IOninja: It's the repos of modules on modules.perl6.org
22:00 avar But I can't remember which module it was, even though this was yesterday memory--
22:00 robertle joined #perl6
22:01 RabidGravy well I have 57 modules that mention *panda*
22:01 RabidGravy *shrug*
22:02 IOninja I think some modules mention `ufo` as installer still :P
22:02 RabidGravy I fixed all of mine that did
22:02 IOninja That was fast :D
22:03 llfourn joined #perl6
22:03 RabidGravy [jonathan@coriolanus modules]$ grep ufo */README.md
22:03 RabidGravy [jonathan@coriolanus modules]$
22:04 RabidGravy but
22:04 RabidGravy [jonathan@coriolanus modules]$ grep -l panda */README.md | wc
22:04 RabidGravy 61      61    1518
22:04 RabidGravy apparently
22:04 RabidGravy [jonathan@coriolanus modules]$ grep -l zef */README.md | wc
22:04 RabidGravy 55      55    1360
22:05 RabidGravy anyhow toodles
22:05 IOninja \o
22:05 avar u rakudo-star-2017.01 (280K) $ grep -r panda modules/
22:06 avar wc -l on that => 169
22:06 IOninja :S
22:06 IOninja there are only like... 20-30 modules in the distro
22:06 * IOninja downloads
22:07 IOninja only 69 if you exclude panda's repo itself
22:08 tony-o zoffix sent out a ton of PRs a while ago to fix that and p6 version in METAs
22:08 IOninja And only 33 if you exclude travis config
22:08 tony-o also, RabidGravy, are your machines all shakespeare themed?
22:08 IOninja buggable: eco
22:08 buggable IOninja, Out of 785 Ecosystem dists, 87 have warnings and 3 have errors. See https://modules.perl6.org/update.log for details
22:08 IOninja Used to be like 600 warnings or something :P
22:10 IOninja all those error look bogus
22:10 IOninja temp github outage
22:11 tony-o s3 issues?
22:15 IOninja Can anyone clue me in on what PROCESS:: thing is about? I see PROCESS::<$VM>, PROCESS::<$CWD>, etc. What's the difference between those and $*CWD?
22:15 IOninja and $*VM
22:16 cog__ joined #perl6
22:17 jnthn PROCESS:: is the last place that a $*foo lookup looks
22:18 IOninja And that's it?
22:19 jnthn (After the call stack, the callstack of the thing that started you if you're in a start block, and GLOBAL)
22:19 pyrimidine joined #perl6
22:19 jnthn That's all with regard to how it relates to $*foo, yes
22:19 jnthn It's purpose is to be a process-global palce
22:19 jnthn *place
22:19 jnthn More global than global
22:20 IOninja What's this &chdir stuff is about? https://github.com/rakudo/rakudo/blob/dd​1dab2/src/core/io_operators.pm#L147-L162
22:20 jnthn Since GLOBAL is actually subject to where you are
22:20 IOninja m: say &*chdir
22:20 camelia rakudo-moar dd1dab: OUTPUT: «sub chdir ($path) { #`(Sub|61400920) ... }␤»
22:20 labster joined #perl6
22:20 IOninja like why have two
22:20 jnthn Normally chdir doesn't do anything expcet update $*CWD
22:21 jnthn PROCESS::<&chdir> actually does an OS-level chdir
22:21 IOninja Thanks.
22:21 IOninja (I see it now in the code :P)
22:22 jnthn This is because a process can only have one cwd
22:22 jnthn Which plays rather badly with multiple threads of execution.
22:22 tony-o m: $*CWD.say;
22:22 camelia rakudo-moar dd1dab: OUTPUT: «"/home/camelia".IO␤»
22:22 jnthn It's the same reason why %*ENV can be localized, and we never call setenv (which is also a rather bad idea in a multi-threaded application)
22:22 tony-o m: $*CWD.say; PROCESS::<&chdir> '/tmp'; $*CWD.say;
22:22 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3$*CWD.say; PROCESS::<&chdir>7⏏5 '/tmp'; $*CWD.say;␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        stateme…»
22:23 tony-o m: $*CWD.say; PROCESS::chdir '/tmp'; $*CWD.say;
22:23 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3$*CWD.say; PROCESS::chdir7⏏5 '/tmp'; $*CWD.say;␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement …»
22:23 tony-o m: $*CWD.say; PROCESS::chdir('/tmp'); $*CWD.say;
22:23 camelia rakudo-moar dd1dab: OUTPUT: «"/home/camelia".IO␤Could not find symbol 'chdir'␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
22:23 tony-o bleh
22:23 jnthn PROCESS::<&chdir>
22:23 tony-o m: $*CWD.say; PROCESS::<&chdir>('/tmp'); $*CWD.say;
22:23 camelia rakudo-moar dd1dab: OUTPUT: «"/home/camelia".IO␤"/tmp".IO␤»
22:23 tony-o too impatient today.
22:28 IOninja m: $*CWD.say
22:28 camelia rakudo-moar dd1dab: OUTPUT: «"/home/camelia".IO␤»
22:32 lucs In a *.t file for example, is it possible to wrap a 'todo' test in such a way that perl6 won't even attempt to compile it? (because for example, since its code is 'todo', it doesn't yet compile)
22:32 Geth ¦ doc: 4e48f6ab4e | (Zoffix Znet)++ | doc/Language/packages.pod6
22:32 Geth ¦ doc: Add mention of dynamic vars last look in PROCESS::
22:32 Geth ¦ doc: review: https://github.com/perl6/doc/commit/4e48f6ab4e
22:33 IOninja lucs: no, todo code is run and it's expected to fail.
22:33 lucs Aha, so I guess that's not precisely what I want.
22:33 IOninja lucs: you want to `skip`. skip 1, 'stuff hangs'; if 0 { ... the tests }
22:33 IOninja Dunno what better than if 0 to put in there.
22:33 IOninja I guess just ensure it doesn't run at all
22:34 lucs Trying, thanks
22:34 IOninja lucs: some examples here: https://docs.perl6.org/language/testing#index-e​ntry-skip-skip%28%24reason%2C_%24count_%3D_1%29
22:35 IOninja if $can-run { do a bunch of tests } else { skip 5, 'your system sucks; cannot run some tests' }
22:35 IOninja Oh, I got the order wrong
22:36 IOninja One thing I'll do right in Pro::Test is to make skip and todo DWIM with the skippage count
22:38 lucs Hmm... How would I write a test for a yet non-implemented operator for example? Would it need to be protected by an eval so the compiler doesn't see it?
22:39 lizmat either that, or mark the test as "skip" ?
22:40 lucs I don't quite understand how to use 'skip' correcly I guess :(
22:40 IOninja lucs: and try, because EVAL is not Perl 5's eval. You could add a dummy op tho
22:41 IOninja m: sub infix:<♥> {@_; False}; use Test; cmp-ok 42, &[♥], 5, '42 ♥ 5'
22:41 camelia rakudo-moar dd1dab: OUTPUT: «not ok 1 - 42 ♥ 5␤␤# Failed test '42 ♥ 5'␤# at <tmp> line 1␤# expected: '5'␤#  matcher: 'infix:<♥>'␤#      got: '42'␤»
22:41 IOninja lucs: I dunno, why skip? Write them as normal
22:42 dct joined #perl6
22:42 lizmat IOninja: but then the test won't compile ?
22:43 IOninja lucs: and let the test crash. Or put (try ::('&infix:<♥>')) or skip-rest 'cannot run this'
22:43 lizmat unless you add a dummy op, but then that would mask the implemented op ?
22:43 IOninja lizmat: oh right.
22:43 lucs Okay, my generic question was: how do I write a test so that the compiler won't even see the code if something like 'todo' or 'skip', or whatever it takes, is used.
22:43 IOninja lizmat: but I don't see too much wrong with letting the test not compile :)
22:43 lucs Here's my real case:
22:44 lucs Inline::Perl5 appears to fail correctly handle inner packages.
22:44 Voldenet joined #perl6
22:44 Voldenet joined #perl6
22:44 lizmat good night, #perl6!
22:44 IOninja m: use Test; BEGIN (try ::infix('&infix:<♥>')) || skip-rest 'Cannot proceed; no love'; ok 42 ♥ 5
22:44 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤No such symbol 'infix'␤at <tmp>:1␤------> 3use Test; BEGIN (try ::infix7⏏5('&infix:<♥>')) || skip-rest 'Cannot pro␤»
22:44 IOninja m: use Test; BEGIN (try ::('&infix:<♥>')) || skip-rest 'Cannot proceed; no love'; ok 42 ♥ 5
22:44 camelia rakudo-moar dd1dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤An exception occurred while evaluating a BEGIN␤at <tmp>:1␤Exception details:␤  A plan is required in order to use skip-rest␤    in sub skip-rest at /home/camelia/rakudo-m-ins​t-2/share/perl6/sources…»
22:44 IOninja really
22:44 lucs So a successful test would be something like  is(InnerPackage.foo, 42) , but that won't even compile if InnerPackage wasn't found.
22:45 lucs Using todo or skip, that code still doesn't compile (unless the feature is correctly implemented).
22:46 IOninja m: use Test; BEGIN { plan 1; (try ::('&infix:<♥>')) || skip-rest 'Cannot proceed; no love' }; ok 42 ♥ 5
22:46 camelia rakudo-moar dd1dab: OUTPUT: «1..1␤ok 1 -  \# SKIP Cannot proceed; no love␤5===SORRY!5=== Error while compiling <tmp>␤Confused␤at <tmp>:1␤------> 3-rest 'Cannot proceed; no love' }; ok 427⏏5 ♥ 5␤    expecting any of:␤        infix␤        infix stopper␤ …»
22:47 IOninja m: use Test; BEGIN { plan 1; (try ::('&infix:<♥>')) || skip-rest('Cannot proceed; no love'), exit }; ok 42 ♥ 5
22:47 camelia rakudo-moar dd1dab: OUTPUT: «1..1␤ok 1 -  \# SKIP Cannot proceed; no love␤»
22:47 IOninja m: use Test; sub infix:<♥> { @_ }; BEGIN { plan 1; (try ::('&infix:<♥>')) || skip-rest('Cannot proceed; no love'), exit }; ok 42 ♥ 5
22:47 camelia rakudo-moar dd1dab: OUTPUT: «1..1␤# Looks like you planned 1 test, but ran 0␤»
22:47 IOninja :(
22:47 IOninja m: use Test; sub infix:<♥> { @_ }; BEGIN { plan 1; (try ::('&infix:<♥>')) || (skip-rest('Cannot proceed; no love'), exit) }; ok 42 ♥ 5
22:47 camelia rakudo-moar dd1dab: OUTPUT: «1..1␤ok 1 - ␤»
22:48 IOninja lucs: well, this works. Dunno why skip-rest doesn't exit of its own volition
22:48 IOninja lucs: if I were writing it, I'd just write it as normal test and leave it failing to compile; if it matteres that it doesn't, I'd just comment out the code
22:48 IOninja No need to overthink things.
22:50 lucs You're probably right.
22:51 lucs Yeah, I'll just 'todo' some bogus code and a message letting the maintainer that the real code is currently commented out.
22:51 lucs *know
22:53 alphah IOninja: Seems I couldnot use "for" to resolve the issue I posted earlier, I have to use while @laws.shift, to get value for Args; I'll use example you posted above to clear my point
22:54 alphah your examle m: my @laws = <power force meow>; while (try @laws.shift) -> $_ {  when 'power' { say 'Power overwhelming' }; when 'force' { say 'Use the force, Luke' }; when 'meow' { say 'KITTY!' } }
22:54 alphah I modified it to :
22:54 alphah m: my @laws = <power>; while @laws.shift -> $_ {when 'power' {@laws.shift or die "Usage:"}; when 'force' {say 'Use the force, Luke' }; when 'meow' {say 'KITTY!' } }
22:54 camelia rakudo-moar 9d497e: OUTPUT: «Usage:␤  in block <unit> at <tmp> line 1␤␤»
22:54 IOninja alphah: why cannot?
22:56 mcmillhj joined #perl6
22:57 alphah because the next value in the foor loop may be "a value in argument"  for example say "power" arg takes a value "9999"
22:57 IOninja alphah: what's your end goal? You got a bunch of words in @!laws... what're doing with them?
22:57 alphah if a shift failed, the next Arg will be "9999"    in the for loop
22:57 girafe joined #perl6
22:57 IOninja So far, it feels like you're greatly over-complicating with shifts code that's already over-complicated
22:58 alphah I want to create a config hash,, with keys and value for each arg passed to the script
22:59 alphah but I want htese args to be human readable words, without using "--" or "-"
22:59 alphah some of these args are Boolean,, some take values
22:59 IOninja m: my @laws = <power trip>; with @laws { when ('power', **) { say "some power command" }; when ('force', **, 42) { say 'some force command with 42' }; say "wrong laws, bruh" }
22:59 camelia rakudo-moar 9d497e: OUTPUT: «some power command␤»
23:00 IOninja m: my @laws = |<force power to>, 42; with @laws { when ('power', **) { say "some power command" }; when ('force', **, 42) { say 'some force command with 42' }; say "wrong laws, bruh" }
23:00 camelia rakudo-moar 9d497e: OUTPUT: «some force command with 42␤»
23:00 IOninja m: my @laws = <do stuff>; with @laws { when ('power', **) { say "some power command" }; when ('force', **, 42) { say 'some force command with 42' }; say "wrong laws, bruh" }
23:00 camelia rakudo-moar 9d497e: OUTPUT: «wrong laws, bruh␤»
23:00 IOninja alphah: you could do this sort of matching too
23:01 IOninja or stringify them and use a grammar
23:01 kyan joined #perl6
23:01 * IOninja shrugs
23:02 IOninja Each set of commands end up as one action tho, don't they? I'd use a bunch of MAIN multies for tha
23:03 alphah Each set of commands will create an object from different class
23:03 IOninja perfect; use the multies..
23:04 llfourn joined #perl6
23:04 IOninja Right now you have to loop through the array in your head and keep all the shifts in two separate places in mind to make out what's being called. Whereas with multies or hyperstar smartmatches you have a nice list of "command pattern -> do this thing"
23:07 mcmillhj joined #perl6
23:07 alphah I will end up with around 10 multis, I iwll do it in multis and see if it looks nicer... but one last question as I already did it using while.shift, and only thing remaining is to hide the error message thrown when trying to shift empty array, I would like to replace this message with Usage function... so my question is how can i replace that error with a custom error and exit
23:08 alphah m:  my @laws = <power>; while @laws.shift -> $_ {when 'power' {@laws.shift or die "Usage:"}; when 'force' {say 'Use the force, Luke' }; when 'meow' {say 'KITTY!' } }
23:08 camelia rakudo-moar 9d497e: OUTPUT: «Usage:␤  in block <unit> at <tmp> line 1␤␤»
23:08 alphah in this case I want to get rid of "in block <unit> at <unknown file> line 1"  line
23:09 IOninja alphah: don't use die just say() and exit()
23:09 IOninja m: class Force { has $.v }; class Power { has $.v }; multi process ('force', $v, |c) { take Force.new: :$v; process |c }; multi process ('power', $x, $n, |c) {take Power.new: :v($x - $n); process |c }; multi process (|) { die "your args suck, bruh" }; say gather process <force 42 power 70 31>;
23:09 camelia rakudo-moar 9d497e: OUTPUT: «your args suck, bruh␤  in sub process at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
23:09 IOninja I was hoping this would work, but apparently the candidate resolution doesn't let it :(
23:10 IOninja wonder why...
23:10 IOninja OH
23:10 IOninja m: class Force { has $.v }; class Power { has $.v }; multi process ('force', $v, |c) { take Force.new: :$v; process |c }; multi process ('power', $x, $n, |c) {take Power.new: :v($x - $n); process |c }; multi process () {}; multi process (|) { die "your args suck, bruh" }; say gather process <force 42 power 70 31>;
23:10 camelia rakudo-moar 9d497e: OUTPUT: «your args suck, bruh␤  in sub process at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
23:10 IOninja dammit
23:10 IOninja no idea why that don't work
23:11 imcsk8 joined #perl6
23:12 alphah no idea, also I dont understand why this doesn't throw error:
23:13 alphah m:my @laws = <power>; while @laws.shift -> $_ {when 'power' {@laws.shift}; when 'force' {say 'Use the force, Luke' }; when 'meow' {say 'KITTY!' } }
23:13 IOninja m: class Force { has $.v }; class Power { has $.v }; multi process ('force', $v, |c) { say Force.new: :$v; process |c }; multi process ('power', $x, $n, |c) {say Power.new: :v($x - $n); process |c }; multi process(){}; multi process (|) { die "your args suck, bruh" }; say gather process |<force 42 power 70 31>;
23:13 camelia rakudo-moar 9d497e: OUTPUT: «Force.new(v => IntStr.new(42, "42"))␤Power.new(v => 39)␤()␤»
23:13 alphah and this one throws:
23:13 IOninja Yey! It works. Almost.
23:13 alphah m:my @laws = <power>; while @laws.shift -> $_ {when 'power' {say @laws.shift }; when 'force' {say 'Use the force, Luke' }; when 'meow' {say 'KITTY!' } }
23:13 IOninja m: class Force { has $.v }; class Power { has $.v }; multi process ('force', $v, |c) { take Force.new: :$v; process |c }; multi process ('power', $x, $n, |c) {take Power.new: :v($x - $n); process |c }; multi process(){}; multi process (|) { die "your args suck, bruh" }; say gather process |<force 42 power 70 31>;
23:13 camelia rakudo-moar 9d497e: OUTPUT: «(Force.new(v => IntStr.new(42, "42")) Power.new(v => 39))␤»
23:13 IOninja Now it does \o/
23:14 robertle joined #perl6
23:14 IOninja m: my @laws = <power>; while @laws.shift -> $_ {when 'power' {@laws.shift}; when 'force' {say 'Use the force, Luke' }; when 'meow' {say 'KITTY!' } }
23:14 camelia rakudo-moar 9d497e: ( no output )
23:14 IOninja m: my @laws = <power>; while @laws.shift -> $_ {when 'power' {say @laws.shift }; when 'force' {say 'Use the force, Luke' }; when 'meow' {say 'KITTY!' } }
23:14 camelia rakudo-moar 9d497e: OUTPUT: «Cannot shift from an empty Array␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
23:14 IOninja alphah: <IOninja> Right now you have to loop through the array in your head and keep all the shifts in two separate places in mind to make out what's being called
23:15 IOninja alphah: oh wait, never mind that last one :)
23:16 alphah hmm
23:16 IOninja alphah: the reason is because .shift on empty array doesn't throw or die, it returns a Failure, which doesn't explode in some instances... I'd expect it to here, I think
23:16 alphah makes sense
23:16 IOninja m: say while rand > .7 { when {True} {"x"} }
23:16 camelia rakudo-moar 9d497e: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Unsupported use of bare "say"; in Perl 6 please use .say if you meant to call it as a method on $_, or use an explicit invocant or argument, or use &say to refer to the function as a noun␤at <tmp>:1␤--…»
23:16 IOninja m: say (while rand > .7 { when {True} {"x"} })
23:16 camelia rakudo-moar 9d497e: OUTPUT: «()␤»
23:16 IOninja m: say (while rand > .7 { when {True} {"x"} })
23:16 camelia rakudo-moar 9d497e: OUTPUT: «()␤»
23:16 IOninja m: say (while rand > .7 { say "looping"; when {True} {"x"} })
23:16 camelia rakudo-moar 9d497e: OUTPUT: «looping␤(x)␤»
23:16 IOninja m: say (while rand > .7 { say "looping"; when {True} {"x"} })
23:16 camelia rakudo-moar 9d497e: OUTPUT: «looping␤(x)␤»
23:17 IOninja :S dafuq
23:17 IOninja alphah: and `or` on a Failure is one way to defuse it, so your `@laws.shift or ... report usage...` was the right thing
23:18 alphah got that
23:18 IOninja and yeah, looks like `when` never sinks its last value. This may be a bug.
23:18 labster joined #perl6
23:19 IOninja hm
23:20 IOninja m: given 42 { when *.so {Failure.new} }
23:20 camelia rakudo-moar 9d497e: OUTPUT: «Failed␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
23:20 llfourn joined #perl6
23:20 IOninja This does sink it.
23:20 IOninja m:  { when *.so {Failure.new} }
23:20 camelia rakudo-moar 9d497e: ( no output )
23:20 IOninja but not this
23:22 lucs Er, grammar (English) question: does one "help resolve" or "help to resolve" a problem? (if one can that is :-)
23:22 pyrimidine joined #perl6
23:23 IOninja #english can help resolve that...
23:23 IOninja :o
23:23 lucs :)
23:23 IOninja lucs: I've no idea. I think `help to` is the right one, but I use whatever sounds better in a particular situation
23:23 mcmillhj joined #perl6
23:24 dct joined #perl6
23:24 lucs I was hoping a native English speaker would answer (no offense :_)
23:24 lucs -
23:25 IOninja ouch :)
23:25 lucs :)
23:25 IOninja Well, I was for real about asking in #english. They've helped me many times.
23:26 lucs Ah, I'll go there :)
23:30 cibs joined #perl6
23:33 committable6 joined #perl6
23:35 elaADnlxie mch: say 42
23:35 committable6 elaADnlxie, ¦«2015.12,HEAD»: 42
23:37 felher joined #perl6
23:38 ZzZombo joined #perl6
23:38 ZzZombo joined #perl6
23:39 mcmillhj joined #perl6
23:48 lep-delete joined #perl6
23:53 dct joined #perl6

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

Perl 6 | Reference Documentation | Rakudo