»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:04 firstdayonthejob left 00:11 ChoHag joined 00:13 cdg_ joined 00:16 cdg left 00:17 cdg_ left 00:19 labster left 00:23 pierrot joined, labster joined 00:27 vendethiel joined 00:28 tmch joined
Xliff perlawhirl: It's not a bad idea from my viewpoint. 00:47
The only problem is I don't know if p6 can pass expressions as arguments to be evaluated.
I haven't progressed that far into the language, yet.
00:48 vendethiel left
perlawhirl well, yeah i asked my question earlier, because if i knew how to make it into a module i would. 00:48
00:50 Success joined
perlawhirl it's more of a question of whether the parser can understand it, but the subset syntax is fairly unique, so it shouldn't be a problem to differentiate the use of `where` elsewhere 00:50
geekosaur that requires a macro normally (note that macros are still rather slushy) but * can make autoclosures under some circumstances
Success p6: say 3; 00:51
camelia rakudo-moar e57e63: OUTPUT«3␤»
geekosaur so in the subset syntax `where * < 5` the expression is a WhateverCode, which is a closure
00:51 bjz_ left
perlawhirl yes... but it's also a Whatever closure when used in a grep method: @list.grep(* < 5) 00:52
Xliff > sub test($a) { say $a.WHAT }; test(* %% 2); 00:53
(WhateverCode)
Neat
Problem now is how you evaluate what's in $a over a list. 00:54
00:54 labster left
perlawhirl the functionilty is there. it's called grep, i'm just suggesting an additional name for it 00:56
sjn is there actually a way to "alias" function names in Perl 6?
perlawhirl well, that was my original question, but i go no real response 00:57
geekosaur sjn, for global functions yes, methods are a harder issue
"global"
Juerd m: sub foo { 42 }; my &bar = &foo; say bar() 00:58
camelia rakudo-moar e57e63: OUTPUT«42␤»
Juerd Although := more closely resembles aliasing:
m: sub foo { 42 }; my &bar := &foo; say bar()
camelia rakudo-moar e57e63: OUTPUT«42␤»
perlawhirl yeah, i know i can do it with functions 00:59
Juerd But?
perlawhirl m: my &where = &grep; say where { $_ < 5 }, ^10
camelia rakudo-moar e57e63: OUTPUT«(0 1 2 3 4)␤»
perlawhirl but who uses grep as a function any more :D
Juerd Can you repeat your question then? 01:00
01:00 labster joined
perlawhirl originally... i asked "am i able to rename a method (eg. grep) to something else... or rather, create a method that basically points to grep" 01:01
Xliff Juerd: perlawhirl wants to add a .where alias to the List class
Juerd Ah. I don't know.
Xliff Which just points to .grep
Juerd I think 'where' would be confusing, because it already means something else
perlawhirl Juerd: did you read my gist? gist.github.com/0racle/ea0523759e2da15758d4 01:02
sjn .inwhich
.assuming
01:02 molaf left
sjn .lookingfor 01:02
Xliff .seek
Juerd perlawhirl: Will do so now
Xliff O WAI.
That might get confused with IO ops. 01:03
timotimo .getFeeder.getHand.bite()
perlawhirl one of the design principle i read somewhere was about reusing syntax. there's also things about perl6 being less unix centric, and prior art with unix-y operators given friendlier names
Xliff timo x 2: nom nom nom
Juerd perlawhirl: I've read it now. I don't think it's very useful to rename or alias it.
perlawhirl: I think it's entirely okay if the proverbial 7 year old girl learns a tiny bit of unix :) 01:04
geekosaur assuming is taken
perlawhirl hah!
Juerd Besides, I like infix ops for grep more than methods, I think
geekosaur and I think the problem with obvious ways to alias or rename something is that it's Difficult to capture both named and positional parameters and pass them on properly (although Captures are likely part of the solution) 01:05
Xliff Anyone else have Match eqv examples that I can test?
Juerd m: method infix:<having> (@list, $match) { @list.grep: * ~~ $match }; say ^23 having /^2/;
camelia rakudo-moar e57e63: OUTPUT«5===SORRY!5===␤Two terms in a row␤at /tmp/mDjRrhLsCv:1␤------> 3ch) { @list.grep: * ~~ $match }; say ^237⏏5 having /^2/;␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ sta…»
Juerd Darn.
m: method infix:<having> (@list, $match) { @list.grep: * ~~ $match }; say (^23) having /^2/;
camelia rakudo-moar e57e63: OUTPUT«5===SORRY!5===␤Two terms in a row␤at /tmp/BY6so6MyWZ:1␤------> 3) { @list.grep: * ~~ $match }; say (^23)7⏏5 having /^2/;␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ sta…»
Juerd Er.
Oh, d'oh 01:06
sub, not method!
m: sub infix:<having> (@list, $match) { @list.grep: * ~~ $match }; say (^23) having /^2/;
camelia rakudo-moar e57e63: OUTPUT«(2 20 21 22)␤»
Juerd m: sub infix:<except> (@list, $exception) { @list.grep: * !~~ $exception }; say (^10) except 5; 01:07
camelia rakudo-moar e57e63: OUTPUT«(0 1 2 3 4 6 7 8 9)␤»
Juerd :P
01:07 ChoHag left
Xliff is still getting used to the ^.... 01:08
m: say ^5
camelia rakudo-moar e57e63: OUTPUT«^5␤»
Xliff m: say (^5)
camelia rakudo-moar e57e63: OUTPUT«^5␤»
geekosaur the problem with that is that except to me reads like a trait
Juerd m: say flat ^5
camelia rakudo-moar e57e63: OUTPUT«(0 1 2 3 4)␤»
perlawhirl geekosaur: yes, i understand that doing this in the language currently is difficult due to the way methods like grep are implemented. i guess my fantasy is that a guts dev sees my proposal, likes it, and eventually makes it's way into the languange proper :D
geekosaur (is, does, where, except...)
perlawhirl a guy can dream
Xliff Juerd: Well FINE! Be that way! =)
Juerd perlawhirl: Changing a keyword can't be done because it would break compatibility. Aliasing doesn't fix the alledged problem because programmers will still encounter the original name, except if you deprecate the original. But usually things have to be a lot more wrong than this, for them to be deprecated. 01:09
I think that you're just a bit too late to the party for this change. But of course you can try 01:10
01:11 skids joined
perlawhirl well, i'm not suggesting a removal of grep at all! just a friendlier nickname 01:12
01:12 bjz joined
Juerd perlawhirl: If it's an alias you need to learn both. 01:12
That makes learning the language harder, not easier.
Xliff So this is my Match infix:<eqv> attempt. Any thoughts? -> pastebin.com/ct76gh5H 01:13
perlawhirl well, the context that this magical .where method is used in virtually identical to the context it's used in subset definition, so not really much more to learn. 01:14
i understand that post 6.c, changes (additions?) like this are unlikely
but truthfully, if it existed, i would use .where over .grep any day, cause it reads nicer 01:15
01:15 bjz_ joined
Juerd There's already a 'where' in the language. 01:15
Don't you think that it would be confusing to have a method with the same name?
m: my Int $foo where * > 5; $foo = 6; $foo = 3;
camelia rakudo-moar bff643: OUTPUT«Type check failed in assignment to $foo; expected <anon> but got Int (3)␤ in block <unit> at /tmp/FnEhiy7Km0 line 1␤␤»
01:16 bjz left 01:17 avenj joined
Xliff m: my Int $foo where * > 5; $foo = 6; 01:17
camelia ( no output )
perlawhirl not so much, not if the method serves a very similar purpose
tablets.perl6.org/tablet-1-language...imum-reuse
Xliff m: my Int $foo where * > 5; $foo = 3;
camelia rakudo-moar bff643: OUTPUT«Type check failed in assignment to $foo; expected <anon> but got Int (3)␤ in block <unit> at /tmp/MAyzfpdRpm line 1␤␤»
geekosaur where could be both method and trait_mod, I think
Xliff Oooooo
perlawhirl "Not only is syntax reused to minimize the stuff you have to remember, but concepts are reused also, wherever possible."
the concepts are virtually identical 01:18
01:18 nchambers left, maybekoo2 left 01:20 nchambers joined
Xliff I am not a fan of golf. 01:21
I like readable code.
But even I have to admit the Jelly solution here was awesome. 01:22
codegolf.stackexchange.com/question...-bit-array
perlawhirl i almost feel like all these stack based golfing langs should be exempt from the competition, or they can have their own leaderboard 01:24
Xliff LOL
01:37 nchambers left 01:38 kurahaupo left 01:40 nchambers joined, Ben_Goldberg joined 01:42 BenGoldberg left 01:44 BenGoldberg_ joined, BenGoldberg_ left 01:45 BenGoldberg_ joined 01:46 Ben_Goldberg left 01:51 nchambers left 01:54 nchambers joined 01:56 BenGoldberg_ left 01:57 BenGoldberg joined 02:02 BenGoldberg left 02:03 BenGoldberg joined 02:07 BenGoldberg left 02:08 BenGoldberg joined 02:09 colomon left 02:10 ChoHag joined 02:11 colomon joined 02:13 kid51 joined 02:14 kid511 left
perlawhirl does anyone use the Stylish browser plugin. i'm using it with the GitHub Dark theme. browsing github is now much easier on the eyes 02:16
timotimo where can i find this thing? (also, i am on chrome) 02:18
geekosaur started using that a couple months ago. helps a lot when I'm being photophobic...
timotimo found it
geekosaur timotimo, Tampermonkey
timotimo github.com/StylishThemes/GitHub-Dark - stylish is linked to from here
perlawhirl yep... try it out, promise you'll love it 02:19
geekosaur oh, and Stylish exists for Chrome
perlawhirl unless you're one of those sick individuals that doesn't like dark themes
geekosaur only problem is github keeps changing things and you can get glitches until the theme is fixed
perlawhirl the colours it uses for syntax highlighted code is nicer too.
02:19 kid51 left
perlawhirl yeah. github is nowhere near as bad as cisco.com. i think cisco employs a team of people who's job is to move and change shit every few weeks 02:20
02:20 BenGoldberg left
timotimo at least you have no reason to look at cisco.com more than once a month, right? 02:21
02:21 BenGoldberg joined
perlawhirl not unless you manage hundreds of enterprise networks... like me 02:22
timotimo oof
perlawhirl support is a better word... i don't manage shit :D
such is the wonderful world of managed services
02:23 BenGoldberg left
perlawhirl fun fact: when i started this job we had to audit newly transitioned sites for one of our larger customers. new sites would come in every few weeks/months... 02:24
i was trying to automate the config audit with autohotkey... one of the guys i worked with said "why don't you learn perl"
02:24 BenGoldberg joined
Xliff github.com/dnmfarrell/Perl6-One-Liners <-- fun reading 02:24
perlawhirl i thought to myself "nah, that's a proper language, not smart enough".. but i learned it and loved it and never looked back 02:25
that was about 3 years ago
so i'm a late comer to perl
AlexDaniel Hotkeys_: here? 02:26
Xliff And they said Perl was dead.
AlexDaniel Hotkeys_: I have found an undocumented feature!
m: printf(“%08b\n”, 5)
camelia rakudo-moar 6732d2: OUTPUT«00000101␤»
Xliff Been reading the Internets and people were put off by the long dev time for Perl6
02:27 BenGoldberg left
Xliff installs Stylish 02:27
02:28 BenGoldberg joined
AlexDaniel Hotkeys_: ah no, it is actually documented 02:28
Xliff reloads open GitHub page.
Xliff 's eyes THANK HIM. 02:29
Hotkeys_ lol AlexDaniel
02:29 Hotkeys_ is now known as Hotkeys
perlawhirl haha, now look at a readme with a code snippet an feast your eyes on glorious muted orange and purple hues 02:29
or heck any source file 02:30
AlexDaniel m: say +«([~] (sprintf(“%08b”, $_) for ‘f0oBaR’.ords)).comb(/.**5/) 02:31
camelia rakudo-moar 6732d2: OUTPUT«(1100 11000 11000 110 11110 10000 10011 1 1010)␤»
AlexDaniel ah 02:32
Hotkeys you can just comb 5
or n
Xliff m: say +􏿽xAB([~] (sprintf(􏿽x93%08b􏿽x94, $_) for 􏿽x91f0oBaR􏿽x92.ords))
02:32 synopsebot6 left
camelia rakudo-moar 6732d2: OUTPUT«(11001100011000001101111010000100110000101010010)␤» 02:32
02:33 synopsebot6 joined
Hotkeys oh 02:33
Xliff will use that as a title, someday.
Hotkeys I didn't even think
about using %b
instead of %d
Xliff Hotkeys: Are you golfing?
Hotkeys m: {({:2($_)}for ({sprintf("%08b",$_)}for @^a).join.comb($^b).map({$_~0 x$b-.chars}))}([102,48,111,66,97,82])
camelia rakudo-moar 6732d2: OUTPUT«Too few positionals passed; expected 2 arguments but got 1␤ in block <unit> at /tmp/O40S1L6Zeh line 1␤␤»
Hotkeys m: {({:2($_)}for ({sprintf("%08b",$_)}for @^a).join.comb($^b).map({$_~0 x$b-.chars}))}([102,48,111,66,97,82], 5) 02:34
camelia ( no output )
AlexDaniel m: say ([~] (sprintf(“%08b”, $_) for ‘f0oBaR’.ords)).comb(/.**5/)».&{:2($_)}
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10)␤»
Hotkeys m: {({:2($_)}for ({sprintf("%08b",$_)}for @^a).join.comb($^b).map({$_~0 x$b-.chars}))}([102,48,111,66,97,82], 5).say
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
AlexDaniel Xliff: codegolf.stackexchange.com/question...-bit-array
Xliff Yeah. I ref'd that earlier, so the examples looked.... eeenteresting.
Still ♥ the Jelly solution. 02:35
02:35 jack_rabbit_ joined
AlexDaniel we should probably make a new language for golfing 02:35
perlawhirl Xliff: you keep talking about it... you sound... jelly
AlexDaniel where one unicode character represents the whole solution to some specific golf problem
Hotkeys I don't like any golf languages 02:36
so
Xliff We have enough unicode characters for that to work.....for a while.
I don't golf unless it involves hitting rubber balls with long sticks.
And I'm even dangerous at that (balls go backwards)
You don't want me golfing.... of any sort.
>_> 02:37
<_<
Xliff waits for the inevitable response from the gutter....
AlexDaniel and then we be like “look, this problem is solved in 1 character in GOLFLANG!!!”
it will make all other golf languages obsolete
Xliff But keeping track of it alll....oh, the humanity! 02:38
AlexDaniel in fact, we don't even have to do anything… we can just use one of the submitted solutions!
just copy-paste it and there you go! 02:39
Xliff Was it ₤ or ¤.... or ←
Oh, the options are ENDLESS!
Xliff wonders if the person who introduced him to WinCompose realizes the monster he has created.
Hotkeys Wincompose is wonderful 02:40
02:40 cdg joined
Hotkeys AlexDaniel: that doesn't work when the languages has to be a version that came before the question was asked 02:40
:p
otherwise it's noncompeting 02:41
Xliff You've got ✉
AlexDaniel Hotkeys: what? There's actually a requirement like that?
Hotkeys yeah the language (version) can't be newer than the question
unless it says otherwise
Xliff ✱_✱
AlexDaniel so we can't solve any of the existing problems with v6.d ?
Hotkeys not in a competing way 02:42
AlexDaniel well, okay
then we will just release a new version yesterday
geekosaur pah. slangs 02:43
Hotkeys meta.codegolf.stackexchange.com/que...tion/10#10
see this
Xliff Damn. There was a webpage that tested installed fonts to see if a unicode character worked by fonts.
Can't remember it now.
02:45 ilbot3 left
perlawhirl Xliff: i know the one you're thinking of (probably) but don't recall it's name either 02:46
02:47 ilbot3 joined
AlexDaniel m: {(:2($_)for (sprintf("%08b",$_)for @^a).join.comb($^b)».&{$_~0 x$b-.chars})}([102,48,111,66,97,82], 5).say 02:47
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
Xliff Wish I had bookmarked it.
AlexDaniel Hotkeys: is it shorter?
Hotkeys m: {({:2($_)}for ({sprintf("%08b",$_)}for @^a).join.comb($^b).map({$_~0 x$b-.chars}))}([102,48,111,66,97,82], 5).say 02:48
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
Hotkeys one byte
nice
well 02:49
one byte from my not-yet adjusted answer
liek 15 from the original
oh wait 02:50
perlawhirl did anyone manage a quine in perl6 yet
Xliff Can WinCompose work with the unicode number?
Hotkeys m: {(:2($_)for ({sprintf("%08b",$_)}for @^a).join.comb($^b).map({$_~0 x$b-.chars}))}([102,48,111,66,97,82], 5).say
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
Hotkeys nope
perlawhirl i thought about it breifly, then my brain imploded
Xliff My brain always implodes when I read the word "quine"
Hotkeys await
Xliff ★_★
Hotkeys line wrapping is messing with my eyes 02:51
yeah it's a decent amount shorter AlexDaniel
Xliff None of the fun charcters are working in this IRC client.
Hotkeys lol 02:52
<perlawhirl> did anyone manage a quine in perl6 yet
I did a cheating quine
:p
something like 'slurp $*FILE'
AlexDaniel m: {(:2($_)for (sprintf("%08b",$_)for @^a).join.comb($^b)».&{$_~0 x$b-.chars})}([102,48,111,66,97,82], 5).say
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
skids m: {(:2[flat $_, 0 xx (-$_ % $^n)] for ($^f.map({|.polymod(2 xx 7).reverse}).rotor($n)))}(Blob.new(102,48,111,66,97,82), 5).perl.say
camelia rakudo-moar 6732d2: OUTPUT«(12, 24, 24, 6, 30, 16, 19, 1, 10)␤» 02:53
skids darn shaved it.
02:54 Xliff2 joined
perlawhirl Hotkeys: is there a Basename variable? 02:54
Hotkeys Basename?
perlawhirl Dynamic variable $*FILE not found
yeah, like... name of the script file
Xliff2 ★_★
Hotkeys $?FILE
not $*FILE
my bad
skids m: {(:2[flat $_, 0 xx (-$_ % $^n)] for ($^f.map({|.polymod(2 xx 7).reverse}).rotor($n, :partial)))}(Blob.new(102,48,111,66,97,82), 5).perl.say
camelia rakudo-moar 6732d2: OUTPUT«(12, 24, 24, 6, 30, 16, 19, 1, 10, 8)␤»
Xliff2 OK. This client works better.
perlawhirl ah 02:55
02:55 Xliff left, Xliff2 is now known as Xliff, kalkin- joined
Xliff I will have to remember to preserve my logs from the older version. 02:55
perlawhirl so how is that a cheat? is that one of the stipulations? 02:56
cause this works a treat: say slurp $?FILE;
Hotkeys quines usually say
AlexDaniel m: sprintf "%08b": 42
camelia ( no output )
Hotkeys "can't read source code"
perlawhirl ah
AlexDaniel m: printf "%08b": 42
camelia rakudo-moar 6732d2: OUTPUT«00101010»
perlawhirl ok
timotimo perlawhirl: doesn't work with -e, though?
perlawhirl probably not... there's no $?FILE
alright... i actually read the challenge. no reading source 02:57
AlexDaniel m: {(:2($_)for @^a».&{sprintf "%08b",$_}.join.comb($^b)».&{$_~0 x$b-.chars})}([102,48,111,66,97,82], 5).say 02:58
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
AlexDaniel 1 byte shorter if I am not mistaken
or wait
m: '»'.ords.say
camelia rakudo-moar 6732d2: OUTPUT«(187)␤»
AlexDaniel 187? So this is still 1 byte??
02:58 kalkin-_ left
Hotkeys m: my &f = {say $^s, $^s.perl;}; f "my \&f = \{say \$^s, \$^s.perl;}; f " 02:59
camelia rakudo-moar 6732d2: OUTPUT«my &f = {say $^s, $^s.perl;}; f "my \&f = \{say \$^s, \$^s.perl;}; f "␤»
Hotkeys from rosetta code
geekosaur I think that's a codepoint
as bytes it'd be 2 03:00
Hotkeys yeah
AlexDaniel m: {@^a».&{sprintf "%08b",$_}.join.comb($^b)».&{$_~0 x$b-.chars}».&{:2($_)}}([102,48,111,66,97,82], 5).say
Hotkeys it's 2 bytes
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
Hotkeys m: "»".codes
camelia ( no output )
Hotkeys m: "»".codes.say
camelia rakudo-moar 6732d2: OUTPUT«1␤»
Hotkeys m: "»".bytes.say
AlexDaniel ok, now that is very straightforward
camelia rakudo-moar 6732d2: OUTPUT«Method 'bytes' not found for invocant of class 'Str'␤ in block <unit> at /tmp/ud9a9gDWlz line 1␤␤»
Hotkeys m: "»".Buf.say
camelia rakudo-moar 6732d2: OUTPUT«Method 'Buf' not found for invocant of class 'Str'␤ in block <unit> at /tmp/MsQub23aUz line 1␤␤»
AlexDaniel m: say "»".encode
camelia rakudo-moar 6732d2: OUTPUT«utf8:0x<c2 bb>␤»
Hotkeys that
AlexDaniel fine 03:01
it is still shorter
Hotkeys so is ».& always shorter than for
AlexDaniel m: {@^a».&{sprintf "%08b",$_}.join.comb($^b)».&{:2($_~0 x$b-.chars)}}([102,48,111,66,97,82], 5).say 03:02
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
AlexDaniel and one ».& is always shorter than two :)
but yeah, seems so
Hotkeys m: "({}for x)".encode.elems.say; "x».&{}".encome.elems.say 03:03
camelia rakudo-moar 6732d2: OUTPUT«Use of Nil in string context in block <unit> at /tmp/R1UijKreaP line 1␤7␤Use of Nil in string context in block <unit> at /tmp/R1UijKreaP line 1␤Method 'encome' not found for invocant of class 'Str'␤ in block <unit> at /tmp/R1UijKreaP line 1␤␤»
Xliff Hrmph! New IRC client already registered itself for irc://
Hotkeys m: "(\{\}for x)".encode.elems.say; "x».&\{\}".encome.elems.say
camelia rakudo-moar 6732d2: OUTPUT«9␤Method 'encome' not found for invocant of class 'Str'␤ in block <unit> at /tmp/5fa0adLv3n line 1␤␤»
Hotkeys m: "(\{\}for x)".encode.elems.say; "x».&\{\}".encode.elems.say
camelia rakudo-moar 6732d2: OUTPUT«9␤7␤»
Hotkeys neat
AlexDaniel m: say 「{@^a».&{sprintf "%08b",$_}.join.comb($^b)».&{:2($_~0 x$b-.chars)}}」.encode.elems
camelia rakudo-moar 6732d2: OUTPUT«68␤»
Xliff Would have been nice for it to ask first, even if that was what I wanted.
Hotkeys AlexDaniel: do you want me to edit that into my answer 03:04
AlexDaniel Hotkeys: sure 03:05
03:05 Xliff left
Hotkeys do you have an account I can mention 03:05
AlexDaniel I don't want to be mentioned
03:05 mojca left, Xliff2 joined
Hotkeys alright 03:06
AlexDaniel I do have a SO account, but at some point I realized that I didn't write any answer in like 2 years yet my score more than doubled 03:07
and after considering other issues with SO-like systems I decided that I will try not to participate in that… 03:08
Hotkeys alright 03:09
AlexDaniel I *do* downvote shitty answers though, yes! 03:10
and sometimes I upvote good ones too, but that's like 1/20 of my downvotes…
03:10 ChoHag left
AlexDaniel Hotkeys: anyway, it would be interesting to see someone coming up with some interesting way to shorten this code 03:11
Hotkeys I don't really downvote
03:12 Xliff2 is now known as Xliff
Xliff Wow. Changing clients was easier than I thought. 03:12
The one I was just using was from 2008!
03:12 mojca joined
skids I'm loathe to work on the stringified approach, or a would. I don;t want to go to bed feeling dirty :-) 03:13
Xliff skids: I hear ya.
skids: Thoughts on this infix:<eqv> for Match objects? 03:14
pastebin.com/ct76gh5H
skids Out of curiousity why the .WHAT? 03:17
AlexDaniel Hotkeys: it is not always shorter than for
Xliff skids: Nicked from Pair.pm
AlexDaniel m: {(:2($_~0 x$^b-.chars)for @^a».&{sprintf "%08b",$_}.join.comb($b))}([102,48,111,66,97,82], 5).say
camelia rakudo-moar 6732d2: OUTPUT«(12 24 24 6 30 16 19 1 10 8)␤»
03:18 jack_rabbit_ is now known as jack_rabbit
AlexDaniel Hotkeys: this should have exactly the same length in bytes 03:18
03:18 ChoHag joined
Xliff skids: Signature should catch it, so I'm not tied to it. 03:18
Hotkeys AlexDaniel: same number of bytes as before
skids Xliff: the .from and .to might shortcircuit fastest maybe move them to the front.
Hotkeys m: "{(:2($_~0 x$^b-.chars)for @^a».&{sprintf "%08b",$_}.join.comb($b))}".encode.elems.say
camelia rakudo-moar 6732d2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7f8WrlWDfR␤Placeholder variable @^a may not be used here because the surrounding block takes no signature␤at /tmp/7f8WrlWDfR:1␤------> 3^a».&{sprintf "%08b",$_}.join.comb($b))}7⏏5".encode.elems.say…»
Xliff skids: Sure!
Hotkeys m: Q|{(:2($_~0 x$^b-.chars)for @^a».&{sprintf "%08b",$_}.join.comb($b))}|.encode.elems.say
camelia rakudo-moar 6732d2: OUTPUT«68␤»
AlexDaniel Hotkeys: hm… 03:19
Hotkeys I really need to add the Q|| unicode quotes to my compose file
AlexDaniel 「」 these ones?
perlawhirl 「]
oops「」
AlexDaniel Hotkeys: ‘’ are good too
Hotkeys I have those 03:20
and “”
AlexDaniel use 'em!
Xliff skids: Updated with your suggestions.
perlawhirl does anyone else have issues in the repl with unicodey chars?
dunno if it's a prob with Linenoise
Xliff What is linenoise?
Xliff looks. 03:21
perlawhirl if i type something like 「this」 hit enter, when i hit up arrow, i get 「this」 followed by 2 spaces, when i backspace, it deleted 」
so it's like there are additional hidden characters
i though maybe it's my term emulator, but the same thing doesn't happen in the python repl (though python doesn't know what 「this」 means)
03:22 Success left
AlexDaniel Hotkeys: I really like how this one ended up. It is more readable now 03:22
perlawhirl Xliff: Linenoise is a lightweight Readline-like lib
Xliff Ah. I already have Readline. Thanks.
perlawhirl yeah... i tried installing it and i got errors, so went with linenoise 03:23
Xliff perlawhirl: How are you doing the angled quotes?
skids Xliff: We'll have to see whether it is best to have the .made in there or not -- e.g. what will people want to use Match eqv Match for... likewise with the WHAT. Those two I'm not sure what people will find useful.
Xliff skids: OK. Thanks for looking! 03:24
perlawhirl Xliff: not WinCompose. I am using AHK, but i always have a script running anyways... i have a bunch of hotstrings and keys i use for work. no point running wincompose as well when my persistent ahk scripts is always running
this is my work laptop, btw... ssh'd into a linux vm
using SecureCRT terminal emu 03:25
Xliff I have AHK script too. Forgot what for.
Mine isn't persistent, though. I think I have a script for killing that stupid rename extension dialog.
perlawhirl i have a bunch of things for work... j@ prints my email address, or name.surname@aw print [email@hidden.address] 03:26
Xliff 「 <- What is the name of that, though?
perlawhirl plus ctrl+shift+z to show and hide my notepad dump file. lots of little things like that i use many times a dat
day
i dunno what it's called
skids m: '「'.uniname.say 03:28
camelia rakudo-moar 6732d2: OUTPUT«HALFWIDTH LEFT CORNER BRACKET␤»
Xliff ⌈ceiling and floor⌋
03:29 BenGoldberg left
Xliff Oriental quotation marks. 03:29
03:31 BenGoldberg joined, noganex joined 03:32 cdg left
perlawhirl Xliff: i think you mentioned a couple days back issues installing Shell::Command ? 03:32
was that you?
and if so... how did you resolve it
Xliff perlawhirl: I am. I fixed it.
03:33 BenGoldberg left
perlawhirl .HOW 03:33
Xliff Used rakudobrew and installed to ~/.rakudobrew
So my entire perl6 install is local to root, but everything works.
perlawhirl oh, i built all my shit to /opt/* (ie, /opt/rakudobrew)
is it statically looking for something in ~/.rakudobrew ? 03:34
Xliff If you need perl6 for multiuser. Install into a regular user and have everyone else source the "rakudobrew init"
03:34 noganex_ left, BenGoldberg joined, BenGoldberg left
perlawhirl but... 777 home permissions... bad 03:34
Xliff perlawhirl: I don't think so. My issue was that the Ubuntu package had a b0rked @INC 03:35
Hotkeys <Xliff> ⌈ceiling and floor⌋
not the same ones
perlawhirl ahh! no i think i know the problem
Xliff HotKeys: Ah well. They look close.
Hotkeys yeah
Xliff perlawhirl: K-tell?
Hotkeys p6 doesn't do em though
Xliff perlawhirl: You wouldn't need 777 home permissions, I don't think. 03:36
You'd only need that for package installation and that would be done by root, anyways.
s/would/should/
perlawhirl oh, ok, so i only need to do this to build packages?? i will punch some keys and see what happens 03:37
Xliff skids: Weird. WinCompose != Proper unicode naming,. 03:38
Either that or ⌈HALFWIDTH LEFT CORNER BRACKET⌋ isn't included, yet. 03:39
03:39 jack_rabbit left
Xliff Oh wait. There are two versions. 03:40
skids en.wikipedia.org/wiki/IDN_homograph_attack <-- one of the scarier aspects of unicode :-)
Xliff Oh wow! You're right. 03:41
03:42 cpage_ left
skids That might make a nice Perl 6 module -- punycode activated by a safety policy. 03:45
03:45 cpage_ joined
timotimo we do have a punycode module already, at least 03:47
03:49 AlexDaniel left
timotimo xn--rl6-qdd8c.org/ - aka Реrl6.org 03:52
skids It really perterbs me that fonts that mix up 1 and l or 0 and O still end up as defaults many places. 03:55
timotimo yeah :| 03:56
skids You'd think that would have made some UX checklist top 100 by now.
03:57 vendethiel joined 04:01 cpage_ left
Xliff skids: People never learn. 04:05
perlawhirl I'm back! Readline fixed the unicode weirdness 04:06
Xliff perlawhirl++
perlawhirl so year, fyi, repl using Linenoise doesn't like unicode
Xliff: fwiw my probs installing it were because root user wouldn't switch to the same version of perl6 as my user
ie, it was on 2016-01, instead of nom 04:07
timotimo oh, yeah, linenoise is a bit shitty about unicode ;(
perlawhirl it wouldn't obey global or switch directives... but local seemed to work
timotimo as long as you don't backspace over chars, you'll be fine ...
perlawhirl haha
that was the EXACT problem i was having
thanks for telling me timotimo... after i switched to readline :D
Xliff heh 04:08
(timo x 2)++
That made me laugh.
perlawhirl so are we expecting a 2016-03 cut sometime in the next week? 04:10
04:10 jack_rabbit joined 04:11 yqt left
perlawhirl i can't remember what i was trying to do with it now, but it would be nice if succ took an integer so i could increment string literals by arbitrary amounts, ie 'a'.succ(25) # output: 'z' 04:14
though i can't remember why i wanted to do it, so it's probably not that useful 04:16
Xliff m: say ('a'.ord + 25).chr 04:18
camelia rakudo-moar 6732d2: OUTPUT«z␤»
perlawhirl slaps forehead 04:19
that's how i'd do it in perl5... but my perl6 brain reached straight for .succ for some reason
04:20 vendethiel left
jdv79 what's the best material to get into the newer async stuff? 04:20
are there docs that cover it well yet or just hit roast?
skids I did some work on the design docs, but not await(). 04:21
Xliff Is there a way to extend methods on built-in classes?
*sigh* mouth before brain.
Is there a way to add modules to built-in classes? 04:22
ARGH!
Is there a way to add methods to built-in classes?
timotimo yeah, with "augment"
skids jdv79: gist.github.com/jnthn/a56fd4a22e7c43080078 except for some bits and S17 itself.
jdv79 augment/monkey-typig
Xliff Whoop!
Xliff goes to read.
timotimo but currently you'll have to call .^compose on every class that's derived from the class you're augmenting
because we don't properly propagate the info there yet 04:23
04:23 jack_rabbit left
skids At some point I'll have to try to work a full "subclass of Int" out so math works with Int. 04:24
jdv79 skids: yeah. i remember that. was looking for a comprehensive view.
Xliff Er.
Why "MONKEY-TYPING"?
Wait. Is that an evolution joke? 04:25
jdv79 why the flag or why the name?
Xliff The name.
skids doc.perl6.org/language/concurrency looks to have been freshened up at least to the point of Supplier. 04:26
timotimo Xliff: because it's usually called "monkeypatching" 04:27
perlawhirl i think it's a play on 'monkey patching'.. and also the joke about monkeys typing for 1000 years would not be able to write shakespeare
Xliff timotimo, Still confused. But this should not surprise you.
timotimo heh.
dangerous things are supposed to stand out 04:28
skids Xliff: because it's throwing a monkey wrench into the system, ruins optimizations/etc.
Xliff perlawhirl, that's the direction I was heading... yes.
geekosaur so all the MONKEY* names mean doing Bad Things
timotimo that's why we have MONKEY-TYPING-OH-MY-GOD-WATCH-OUT as well as EVAL
also MONKEY-GUTS
Xliff MONKEY-SUCKS?
MONKEY-STOOPID?
perlawhirl Xliff: if you want to use EVAL you have to 'use MONKEY-SEE-NO-EVAL'
Xliff (I like that last one)
skids STOOPID-MONKEY was trademarked :-) 04:29
Xliff LOL
perlawhirl the monkey things are a playful way to remind you you're doing something potentially dangerous
geekosaur monkeying around with innards
timotimo it took me a few months to get that "SEE NO EVAL" was a play on "SEE NO EVIL"
Xliff skids: And I can guess by what. Great show, though. They are playing close to the Things That Cannot Be Done on TV
jdv79 dangerous may not be entirely accurate. unwise/abnormal/suboptimal maybe.
Xliff s/Cannot/Should Not/ 04:30
timotimo well, right
that's also why our phasers are upper-cased
Xliff timotimo, Is that a euphemism for "set to kill"?
timotimo a bit, yeah
geekosaur right. augment isn't strictly speaking dangerous, but it kills optimization and has the potential to confuse other modules
Xliff =)
timotimo the piece of code after a phaser is called a "blast"
because it's either a "BL"ock or "A STatement"
Xliff =P 04:31
skids Xliff: I have to remind myself to put on my desensitizer so I can enjoy that show :-)
timotimo we also have "blorst", which is "BLock OR STatement"
jdv79 its not blorst anymore?
Xliff Well, at least you were consistent there.
timotimo both
Xliff skids: I'm shocked it's still on the air.
jdv79 oh, you said that already. i wasn't looking close enough. 04:32
Xliff "It is also possible to extend classes via the augment declarator, but that is considered somewhat antisocial and should not be used for forward declarations." 04:37
HUH?
04:38 jack_rabbit joined 04:43 nowan left 04:46 nowan joined, cpage_ joined
perlawhirl there's a '.^add_method' i played with once, but jnthn advised i should not use it in normal code. he also advised "If you stick that code in a module, that module will not be able to support precompilation." 04:47
Xliff My first gist -- Y'all have seen it already. 04:51
gist.github.com/Xliff/2907106c84e9eb14d4c0
Feel free to comment, though! :) 04:52
04:52 khw left
Xliff :( 04:52
Oh well. There Is More Than One Way To Do It.
Although I am all for syntactical sugar.
04:53 cpage_ left 04:56 mojca left, cpage_ joined
skids Xliff: you may want to repost that during the day when more core devs are awake for more feedback. I could see it making a passable PR. 05:01
Actually, though, ditch the "return"
05:02 jack_rabbit left, grondilu left, havenwood left
skids o/ sleep 05:07
05:07 skids left 05:14 vendethiel joined 05:24 buharin joined 05:31 cpage_ left 05:35 cpage_ joined 05:37 vendethiel left
Xliff ditches the return, but notices that skids has already skidaddled.... 05:42
05:46 Cabanossi left 05:49 Cabanossi joined 05:58 vendethiel joined 06:19 vendethiel left 06:21 vendethiel joined, buharin left 06:25 andrewalker left 06:29 petercommand left 06:30 petercommand joined 06:37 perlawhirl left 06:43 vendethiel left 06:48 CIAvash joined 07:01 abraxxa joined 07:03 vendethiel joined 07:05 buharin joined 07:09 mojca joined 07:16 domidumont joined 07:18 ChoHag left 07:20 domidumont left 07:21 domidumont joined
mkz_ g 07:24
asd [hfaf
masak mkz_: hi! :) 07:32
07:32 buharin left
masak morning, #perl6 07:32
07:35 rindolf joined 07:36 darutoko joined 07:37 firstdayonthejob joined 07:40 mojca left, [Sno] left 07:42 nakiro joined
moritz \o masak, #perl6 07:54
07:55 vendethiel left 08:04 vendethiel joined 08:07 [Sno] joined 08:10 Actualeyes left 08:12 sortiz joined
sortiz \o #perl6 08:12
08:13 domidumont left 08:14 FROGGS joined 08:15 domidumont joined
masak o/ sortiz, moritz 08:16
08:16 zakharyas joined
masak .oO( o/ /^ <[ms]> or <[it]> ** 2 $/ ) 08:16
sortiz m: use NativeCall; class Bar { has Pointer $.p is rw }; my $b = Bar.new; $b.p = Pointer.new(1); dd $b; # So far, so good 08:18
camelia rakudo-moar 6732d2: OUTPUT«Bar $b = Bar.new(p => NativeCall::Types::Pointer.new(1))␤»
sortiz m: use NativeCall; class Foo is repr('CStruct') { has Pointer $.p is rw }; my $b = Foo.new; $b.p = Pointer.new(1); # Pointer in CStruct is broken 08:19
camelia rakudo-moar 6732d2: OUTPUT«Cannot modify an immutable NativeCall::Types::Pointer␤ in block <unit> at /tmp/xUwGL79wUX line 1␤␤»
08:21 CIAvash left
FROGGS hmmmm 08:24
08:24 Actualeyes joined 08:25 vendethiel left 08:29 firstdayonthejob left, maybekoo2 joined 08:37 fireartist joined 08:42 Hotkeys left 08:43 wamba joined 08:44 Hotkeys joined 08:45 mojca joined 08:51 dustinm` left 08:54 TreyHarr1 left
teatime OK; time to try out Perl6 regexes / grammars, for parsing simple file formats. 09:00
09:00 [Tux] left 09:01 virtualsue joined 09:03 [Tux] joined, RabidGravy joined 09:04 [Tux] left
RabidGravy marnin 09:05
09:07 [Tux] joined
DrForr teatime: Hey, you might want to look at theperlfisher.blogspot.ro/2016/02/f...rs-pt.html - I'd be happy to take comments/criticisms... 09:08
teatime LOL I literally just clicked on a link to that and then alt+tab's back to here to read your message. 09:09
I read it the other day.
I appreciate that it's one of few in-depth articles / detailed examples available. 09:10
DrForr Thanks.
09:14 TEttinger left 09:23 mojca left
dalek Iish/mysql-prepare-t2: dddfba3 | (Salvador Ortiz)++ | / (2 files):
Use .dispose when needed
09:25
Iish/mysql-prepare-t2: eb3dc55 | (Salvador Ortiz)++ | lib/DBDish/Connection.pm6:
Support for .execute method at Connection level

Prepared statements can be expensive or unavailable for some drivers, so Connection.do can skip 'prepare' when no @params given and the driver support direct execution implementing the .execute method in its Connection class. MySQL in particular can't prepare some kinds of statements.
Iish/mysql-prepare-t2: 5933cef | (Salvador Ortiz)++ | lib/DBDish/mysql/ (3 files):
mysql: Add real prepared statements
09:26 virtualsue left
RabidGravy sortiz++ 09:28
sortiz RabidGravy, thanks. Btw this uses arrays of inline structs, passed by a single Foo* 09:33
RabidGravy I saw your module, good stuff :)
dalek Iish/mysql-prepare-t2: 9ce7f9f | (Salvador Ortiz)++ | META6.json:
Add missing depends to META6.json
09:44
09:47 ChoHag joined 09:52 tmch left 09:54 dustinm` joined 09:57 labster left 09:58 isBEKaml joined 10:01 johndau left 10:02 Relsak joined 10:03 virtualsue joined, isBEKaml_ joined 10:06 isBEKaml left, isBEKaml_ is now known as isBEKaml
sortiz Don't like much the idea that perl6's DBIish depends of an "external" module. Should move NH::Blob to perl6? 10:09
moritz what's NH::Blob?
sortiz NativeHelpers::Blob
moritz *shrug* we can have a dependency, just need to remember to add it to R* 10:10
if it becomes widely used, we might want to fold it into NativeCall 10:11
jnthn DBIish depending on other modules feels reasonable enough to me
You're never going to get something with "Helpers" in its name into core. :P
It's one of those "I didn't know where to put this code" names :)
Some of the functionality it has, otoh... :) 10:12
sortiz I expect that all of its functionality will be in NC some day. :-) 10:14
10:15 pmurias joined
pmurias is there a way to measure what my NQP program (nqp-js) is using memory for? 10:15
10:18 beatdown left
jnthn pmurias: If it's running on Moar, then there's a heap snapshot thing and a very early analysis tool (existing as of yesterday) 10:19
10:19 kid51 joined, TreyHarr1 joined 10:20 Relsak left, Upasaka left
pmurias jnthn: it's running on Moar. I should just look at the recent commits? 10:20
10:20 dustinm` left
timotimo all you need is --profile=heap and jnthn/p6-app-moarvm-heapanalyzer off of github 10:21
jnthn pmurias: Yeah, HEAD of Moar, HEAD of Rakudo, and use-setdebugtypename branch of NQP
And then what timo said
It's very early work, don't expect polish :)
10:21 beatdown joined 10:24 araujo joined 10:25 araujo left, Vlavv_ left, araujo joined, araujo left, araujo joined
pmurias jnthn: if "git diff" doesn't help figure out why nqp-js started eating all memory while compiling itself I'll try this tool 10:28
10:28 andrewalker joined 10:32 dustinm` joined 10:33 Actualeyes left 10:35 perlawhirl joined
sortiz moritz, jnthn, NH::Blob is mainly for workaround current deficiencies of CStruct vs Pointer and Blob/Buf 10:36
10:37 Vlavv_ joined
sortiz Btw, DBDish::mysql now uses Buf.allocate, not available in pre 2016-03, should emulate to stay compatible? 10:42
moritz sortiz: that would be nice, yes 10:43
jnthn Yeah
timotimo it's not necessarily easy enough for people to just grab the version out of rakudo star if they have a not-up-to-date rakudo
jnthn We should travis modules against a Rakudo release that first supported the Perl 6 version they express a dependency on, really 10:44
masak +1
jnthn So if you say 6.c we should try it on 2016.01 or so 10:45
gregf_ h - nevrmind :/ problem with my code :|
bah :/ wrong chat
masak gregf_: of course -- people in here never have problems with their code :P 10:57
perlawhirl the reason my code doesn't work is always the code's fault... never mine 11:00
fireartist hmm, I get a test failure building moar 2016.03 on mingw - is this a known issue? 11:07
t\04-nativecall\19-function-pointers.c 11:08
Unhandled exception: Bytecode stream corrupt (missing magic string)
11:08 bakedb left
jnthn o.O 11:09
No
11:09 Upasaka joined
fireartist hmm, I get that same error message when I manually run any test file with moar.exe - so that's maybe not what the test suite is failing on 11:10
11:10 bakedb joined
fireartist I tried running > c:\rakudo\bin\moar.exe t\04-nativecall\19-function-pointers.c # should that "work"? 11:11
timotimo no, definitely not
you don't run moar.exe on a regular file
and those .c files aren't meant to be run via the test harness
they are meant to be compiled and then used by the corresponding .t file, which is perl6 source code in that case 11:12
fireartist the .c is my bad - darned cmd.exe's tab-complete
timotimo in that case, it's still wrong, because moar.exe expects a .moarvm file as argument :) 11:13
fireartist can I run `perl6.bat testfile.t` ?
timotimo should be possible, yeah
you'll probably have to "make install" before that
fireartist ok, I just did `gmake install`, then `perl6 t\04-nativecall\19-function-pointers.c`, and got the following error... 11:16
===SORRY!=== Error while compiling D:\Users\cafranks\checkout\rakudo/t\04-nativecall\19-function-pointers.c
Two terms in a row
at D:\Users\cafranks\checkout\rakudo/t\04-nativecall\19-function-pointers.c:12
------> DLLEXPORT int<HERE> ForeignFunction() 11:17
jnthn You...just tried to run a .c file with Perl 6? :)
fireartist oh, damn it! :-)
attention to detail, carl! 11:18
pmurias
.oO(imagine how impressive it would be if Rakudo detected accidently passed files in different languages)
11:19 mprelude_ is now known as mprelude
fireartist running `gmake test`, I got "t\04-nativecall\19-function-pointers.t ... Dubious, test returned 255 (wstat 65280, 0xff00)" 11:19
"Failed 1/1 subtests"
but running that .t (!) file with the newly built & installed perl6.exe passes all tests ok
11:19 edjsu joined 11:20 wamba left
timotimo how about "gmake t\04-nativecall\19-function-pointers.t"? 11:20
does that also fail?
fireartist running `gmake test` now passes all tests - I'll try deleting c:\rakudo and starting from scratch, to see if I can get the error again 11:22
because, uh, I like making this difficult, or something ;-) 11:23
dalek Iish/mysql-prepare-t2: 540cfbd | (Salvador Ortiz)++ | lib/DBDish/mysql/ (2 files):
Don't depend on Buf.allocate, stay 6.c compatible
11:30
Iish/mysql-prepare-t2: 069c80c | (Salvador Ortiz)++ | .travis.yml:
Test also on 2016.01 in travis-ci
11:31 frithnanth joined
fireartist ok, building into an empty c:\rakudo I'm now getting test error "Dubious, test returned 1 (wstat 256,0x100)" for all test files from t\01-sanity\53-transpose.t onwards 11:31
11:31 virtualsue left
fireartist which is exactly the same problem I had 1 or 2 days ago when I tried building the moar branch 11:32
running `gmake t\01-sanity\53-transpose.t` returns "gmake: Nothing to be done for 't\01-sanity\53-transpose.t'." 11:33
11:34 wamba joined
RabidGravy yeah that won't work 11:41
11:42 pmurias left
RabidGravy you probably want "perl6 t\<blah>" 11:43
fireartist running `perl6.bat -I lib t\01-sanity\53-transpose.t` passes all tests ok
11:43 maybekoo2 left
fireartist but running `gmake test` still gives "Dubious, test returned 1 (wstat 256,0x100) 11:43
No subtests run
11:44 kid51 left
fireartist am wondering if it's some sort of mingw / environment issue 11:44
RabidGravy probably
can't help with windows
fireartist running `gmake install` then `gmake test`, and all tests pass ok 11:45
I'm happy that I've got a working perl6, but if anyone wants more info to look into it, just tell me how to provide it 11:46
RabidGravy anyway off out to the farm shop to get vegetables 11:47
fireartist yummy - have fun!
perlawhirl what are these 「vegetables」 you speak of?!
fireartist: have you looked at Cmder. it's a nicer console made up from several other projects (namely conemu, clink, plus msysgit and bits from mingw) 11:50
11:51 RabidGravy left
perlawhirl the console alone is pretty worth it. i've tried conemu and clink before and didn't love them, but this is all nicely packaged and makes using the console on windows way less annoying 11:51
plus you can keymap a quake-style dropdown animation, if that kinda thing floats your boat 11:52
fireartist perlawhirl: thanks, I'll look at it - I normally use 'git bash' when I need a command line, but its perl is too old to build rakudo - however something better would be good
11:53 molaf joined
perlawhirl yeeeah, i think this only comes with 5.8 too, which is a shame. but yes, it comes with bash shell and git. the older version used to defautl to bash, but now i think it defaults to powershell 11:53
still can open a 'cmd' tab and use bash 11:54
yeah just checked, perl 5.8.8... as i think that's what is bundled with msysgit 11:55
fireartist am downloading now - just the kind of distraction I needed for lunch ;-)
11:59 sena_kun joined 12:08 orac1e joined
sortiz moritz, Do you want to review the branch mysql-prepare-t2 before merge it? The PR is ready. :-) 12:13
moritz sortiz: I can review it if you want, but not now; but I'd be fine with you merging it without review too 12:14
12:14 gflohr joined 12:20 araujo_ joined 12:21 araujo_ left 12:22 araujo_ joined 12:23 _nadim joined, araujo left 12:24 araujo_ left
_nadim FYI: latest P6 test don't pass : t/04-nativecall/19-function-pointers.t, Parse errors: Bad plan. You planned 1 tests but ran 0 12:24
latest being c85e036 Give gimme back to the world (HEAD -> nom..) 12:25
12:26 donaldh joined
sortiz moritz, Ok. I'll wait till tomorrow for Skarsnik++ or abraxxa++ comments. 12:27
12:30 muraiki joined
gflohr trying to write my first module. when I run ufo, I get "Dynamic variable %*CUSTOM_LIB not found" 12:30
12:30 AlexDaniel joined
gflohr that is on mac os x 12:30
moritz uhm, I fear ufo is rather dead 12:31
gflohr: where did you stumble upon a reference to ufo?
12:31 Sgeo__ left, vendethiel joined
lizmat _nadim: is that error repeatable ? 12:32
jnthn ufo isn't really needed any more, 'cus we automatically pre-comp
gflohr moritz: in the docs for Test::META
lizmat _nadim: I can't repeat that error here :-( 12:33
gflohr jnthn: is there some document that gets me started with current tools?
moritz gflohr: doc.perl6.org/language/modules 12:34
12:36 mojca joined
dalek c: 4322e22 | donaldh++ | doc/Language/functions.pod:
Fix typo in functions.pod
12:36
gflohr moritz: I have read that. but I got stuck looking for the p5 equivalents of "make test" and "make install".
mojca I would like to ask for help with a build failure of Panda on OS X 10.6 12:37
build.macports.org/builders/buildp...ilds/41008 (compile -> stdio)
==> Testing File::Find
Unknown option: e
Unknown option: norc
moritz gflohr: PERL6LIB=lib prove -e perl6 t/
gflohr: with p5's prove
gflohr: and panda install . 12:38
mojca does that look like a broken perl6? 12:39
gflohr moritz: works, thanks!
moritz gflohr: you're welcome. I've opened github.com/jonathanstowe/Test-META/issues/11 and github.com/perl6/doc/issues/431 12:40
12:41 muraiki left
mojca here's the relevant error of the panda build: pastebin.com/ULCceDyg 12:41
it's weird because it works on OS X 10.7 and later
moritz mojca: looks kinda like a long option name is somehow interpreted as a list of short options, and some of them aren't known by the tool that tries to parse them 12:43
12:43 Actualeyes joined
mojca which tool could be the problem? 12:43
moritz no idea
mojca bash?
or one of those
12:54 wamba left
mojca what about the following error? 12:55
==> Building Linenoise\n===SORRY!===
Missing or wrong version of dependency '/Users/me/.perl6/sources/A8DEB6B92199DFB3A54F3218FA4BE0FCB99045C0' (from '/Users/me/.perl6/sources/24811C576EF8F85E7672B26955C802BB2FC94675')
this happend while installing star with pand
12:55 vendethiel left
mojca I need to add that I find it a bit annoying that panda puts its temporary files to $PWD/.panda-work rather than perhaps some folder in /tmp/ 12:56
12:56 Ven joined
Ven o/, #perl6. 12:57
I just rebuilt rakudo and pulled panda, but the bootstrapping stage fails trying to compile the Test module, due to EVAL. anyone with that issue? 12:58
12:58 wamba joined
geekosaur mojca, looks to me like the "prove" it is running is not the perl5 one 12:58
mojca geekosaur: you mean the second error in Linenoise? 12:59
or the first one on 10.6?
geekosaur the first one 13:01
13:05 maybekoo2 joined
stmuk_ Ven: I just rakudobrew'd moar and panda on linux and don't see any probs 13:06
13:06 Relsak joined 13:07 isBEKaml left 13:08 travis-ci joined, jolts left
travis-ci Doc build passed. Donald Hunter 'Fix typo in functions.pod' 13:08
travis-ci.org/perl6/doc/builds/118218626 github.com/perl6/doc/compare/e9bbe...22e228e2cd
13:08 travis-ci left 13:09 jolts joined, jolts left, Ven left 13:10 jolts joined, jolts left, jolts joined, jolts left 13:11 donaldh left
mojca geekosaur: would you be willing to drop some notes on trac.macports.org/ticket/50957 or do you prefer your suggestions to stay on IRC? 13:11
I have access to 10.6, but I don't know what to test
13:11 jolts joined 13:12 Ven joined
Ven stmuk_: well, I'm running against nom, so it might very well be my issue :P 13:12
13:13 skids joined 13:16 sherwool joined
mojca geekosaur: I see that "prove" on my system comes from /opt/local/bin/prove 13:20
13:20 aindilis left 13:21 aindilis joined
mojca 10.6 has "prove v2.64, using Test::Harness v2.64 and Perl v5.10.0" 13:21
13:22 jolts left
mojca in /usr/bin, but perl5.22 is listed as dependency of panda 13:22
when is "prove" called?
geekosaur it's how perl5 and perl6 modules are tested 13:23
it's the program that runs the *.t files
so it sounds like the test wants the prove from perl5.22 but is finding the one in /usr/bin from apple's perl5.10 instead of the one in /opt/local/bin from perl5.22 13:24
depending on a version does not change $PATH or change what /usr/bin points to
er what files in /usr/bin point to 13:25
13:25 kokobuku joined
teatime DrForr: still here? 13:25
mojca what could change the path? 13:26
I see some code running prove in lib/Panda/Tester.pm 13:28
but it's not exactly clear to me how it works 13:29
13:29 kokobuku left
teatime Also, there's a grammars/regexes question embedded in this: paste.debian.net/418535/ 13:29
13:29 Ven left 13:33 Upasaka left
abraxxa sortiz: comments about what? 13:34
mojca geekosaur: thanks for the initial pointers, I'll wait until the package gets build on my old 10.6 VM and then try to look into it 13:36
geekosaur mojca, are you doing this from a Portfile or the shell?
mojca on the buildbot it's being run from Portfile
I didn't run it from shell yet
but I could if it makes any difference 13:37
geekosaur my point there is that the port command controls $PATH
it is NOT the path from your dotfiles
and Portfiles expect that if you want to run a specific version of a command (here, "prove") then you will arrange for that specific version to be run, not trust $PATH 13:38
Xliff Hi. I've boiled down my Match infix:<eqv> to the following. gist.github.com/Xliff/2907106c84e9eb14d4c0 13:39
geekosaur in particular you should not have it run "prove" as it does now, nor even "/opt/local/bin/prove", but "/opt/local/bin/prove-5.22" 13:40
this may require patching lib/Panda/Tester.pm
13:41 Upasaka joined
masak this may require 13:42
(•_•) 13:43
( •_•)>⌐■-■
(⌐■_■)
patching lib/Panda/Tester.pm
geekosaur macports is designed to support multtiple concurrent installed versions of things, without them disturbing each other or any Apple installed versions. patching upstream stuff to support this is normal
13:44 AlexDaniel left 13:51 kokobaba joined
sortiz abraxxa, see github.com/perl6/DBIish/pull/58 13:56
13:58 orac1e left 14:00 kokobaba left 14:02 perlawhirl left 14:04 kokobabaku joined, FROGGS left 14:05 RabidGravy joined, Ven joined 14:07 mojca left 14:08 kokobabaku left
RabidGravy rarr! 14:11
14:13 mullagain joined 14:14 donaldh joined
dalek ecs: bd46864 | (Stéphane Payrard)++ | S99-glossary.pod:
unmanaged size. jnthn++
14:15
[Coke] 2016.03 was released probably before the person asking if was going to be released, I think. 14:19
but not by much.
14:26 Relsak left, tokomer joined 14:30 ptolemarch joined
dalek ecs: d00c44b | (Stéphane Payrard)++ | S99-glossary.pod:
notional karma
14:31
14:33 gflohr left 14:34 jameslenz joined
abraxxa sortiz: saw it earlier already but didn't know you want feedback 14:38
sortiz: it looks good to me besides the Buf.allocate workaround 14:39
lizmat what workaround ?
abraxxa as this is needed in multiple places I'd prefer to make it a sub or method, maybe in a base class or role
lizmat: github.com/perl6/DBIish/pull/58/co...8b6e3893d4
lizmat why is that needed ?? 14:40
ah, 6,c yes, ok 14:41
14:41 Ven left
sortiz abraxxa, for every "mayor" change all feedback is appreciated. 14:46
abraxxa sortiz: ok
14:50 orac1e joined 14:51 sherwool left 14:54 perlawhirl joined 14:56 orac1e left
RabidGravy "major" in English, "mayor" is someone who runs a town :) 14:56
alcalde 14:57
I think
jnthn
.oO( "The streets still smell like cabbage. Would not elect again." )
RabidGravy :) must be Lincolnshire 14:58
15:00 perlawhirl left
sortiz RabidGravy, noted, tnks. 15:00
enough for today o/ #perl6 15:01
RabidGravy :)
15:04 sena_kun left 15:08 El_Che_ joined 15:13 aindilis left, sortiz left, Xliff left, shadowpaste0 left, alnewkirk left, keix left, frew left, El_Che left, jkramer left, bhm left, gfldex left, tinita left 15:15 ely-se joined 15:16 jameslenz left 15:17 maybekoo2 left, _4d47 joined 15:19 cdg joined 15:20 stmuk joined 15:22 Azry left 15:23 stmuk_ left
dalek osystem: 1ad6c0f | RabidGravy++ | META.list:
Rename META for Test::META
15:25
15:29 Xliff joined, aindilis joined, shadowpaste0 joined, alnewkirk joined, jkramer joined, keix joined, frew joined, bhm joined, gfldex joined, tinita joined 15:33 Xliff left, cdg left 15:34 tmch joined 15:35 Xliff joined 15:36 cdg_ joined 15:37 sena_kun joined 15:39 Actualeyes left 15:44 maybekoo2 joined
stmuk does "zef search" work? 15:45
15:45 setty1 joined
Xliff masak: You there? Or busy? 15:46
15:51 nakiro left 15:53 pdcawley_ joined, Actualeyes joined 15:54 pdcawley left, frithnanth left 15:56 cschwenz joined 15:57 cschwenz left 15:58 khw joined 15:59 fireartist left 16:02 gflohr joined 16:05 wamba left 16:09 k-man left
gflohr can I find out inside a method whether it was invoked on a type object or an instance? 16:09
MadcapJake for some reason, on github this rule: github.com/MadcapJake/language-per...1601-L1620 is being skipped where in Atom it works just fine.
16:10 k-man joined
gflohr self.WHAT === self 16:13
is that the correct way?
hoelzro gflohr: self.defined should do the trick
although a type *could* override the defined method, but that's a jerk move 16:14
you could use a multi as well: multi my-method(Class:D:) { #`(on an instance) }
gflohr hoelzro: thanks! and what about my approach?
16:15 araujo joined, wamba joined
jnthn gflohr: It works, but it's not very idiomatic 16:15
gflohr: Also there are with/without blocks
with self { ...in here it's the instance... } else { ...in here it's not... } 16:16
And without to negate it
Xliff takes note.
jnthn without self { ... } is quite a lot shorter than if self === self.WHAT { }
gflohr jnthn: okay, I'll try that 16:17
RabidGravy and of course if this is a method then it's probably neater to provide a multi with :U: and :D: invocants
jnthn Yeah, that's also a good option sometimes :)
MadcapJake i wish without/unless could have else blocks
16:19 musiKk_ joined
MadcapJake I posted an issue in linguist: github.com/github/linguist/issues/2909 16:19
16:20 ely-se left
teatime before I continue, do you guys see any way I can reduce the amount of code here, especially any way to reduce duplication of logic etc. between regexes and their methods (e.g., can method TOP somehow not list COMMENT/IFDEF/DEFINE) ? 16:23
gist.github.com/anonymous/3f7d6a7d12c98cab0760
16:23 tadzik left
dalek osystem: 144895f | RabidGravy++ | META.list:
Add Audio::Icecast

see github.com/jonathanstowe/Audio-Icecast
16:23
jnthn teatime: Do you have || rather than | for a reason?
teatime: If | would work then you could consider protoregexes
Which are like an alternation with a single short name
teatime jnthn: in some cases, because I want to make sure it takes the first if it matches (DEFINE_OBJECT, then try DEFINE_SIMPLE); in others, because only one branch can possibly match, and I figured it'd be faster than | 16:25
jnthn: although, | should work for the DEFINE case... since OBJECT is longer than SIMPLE.
jnthn: you're saying, so that it can be subclassed, right?
jnthn But the other thing you can do is [ <directive=.COMMENT> || <directive=.IFDEF> || <directive=.DEFINE> ]* in TOP 16:26
Then just $<directive> in the actions
teatime ahh, nice.
jnthn Here's an example of the proto approach: github.com/jnthn/p6-docker-file/bl...e.pm6#L257 16:27
teatime also, just out of curiosity... I plan to eventually use this on a long file with parsefile() 16:28
so I hope that will perform OK.
in this case I could easily read lines and feed lines to parse(), if necessary
jnthn Depends how long is long :)
teatime but I was curious how one would handle "\␤" if using parsefile()... if you were reading lines to feed to parse(), you'd check after each line read if the last char was a \, and if so, read another line and append 16:30
but to deal w/ it in the grammar, I can't figure it out
jnthn: (long == 2500 lines in this case, but I was hoping parsefile() had more smarts than just "slurp file, call parse" to make it a viable way to parse large files.) 16:31
jnthn It's no smarter than that at present
teatime ah, alas.
jnthn otoh, we use a Perl 6 grammar to parse Perl 6 itself, and the CORE.setting (built-ins) come to a 37,000 line file :) 16:32
So I think 2500 should be OK :) 16:33
jnthn goes for a keyboard break; back later &
teatime wonders if he can resummon him with `fg` 16:34
16:39 sena_kun left
RabidGravy wonders what to make next 16:40
Hotkeys Make Inline::Factor so I don't have to 16:41
RabidGravy sounds like maths
Hotkeys Factor is a concatenative lang
Like higher level FORTH
16:41 domidumont left
RabidGravy gosh haven't touched forth in years 16:42
Hotkeys It has an unfortunately ungoogleable name
You have search for like
Factorlang
It's annoying
But whatevs
factorcode.org 16:43
16:43 frithnanth joined
Hotkeys The language has some interesting libraries 16:43
Like an EBNF parsing vocab 16:44
16:46 M-tadzik joined 16:50 abraxxa left
masak Xliff: I'm here. and busy ;) 16:50
Xliff No worries. 16:51
masak Xliff: don't wait until I'm fully available, though. just bring it :)
Xliff LOL
teatime will <?after "\n"> work if the preceeding newline has already been consumed by a previous submatch?
Xliff masak: pastebin.com/q27qWY82
Your lawyers will have to throw down with mine. I will make popcorn and we will watch. (⌐■_■) 16:52
TimToady teatime: yes, we usually avoid 'after' for that very reason, because it defeats any escaping mechanism you might have 16:53
'before' does not suffer this problem 16:54
teatime hrm, I don't completely understand.
oh, wait, maybe I do 16:55
16:55 frithnanth left
teatime <after "\n"> would match even the preceeding was \␤ 16:55
TimToady right 16:56
teatime k, thanks.
TimToady and it does you no good to check add a check for \ to the 'after', because what if they said \\ before that, or \\\, or \\\\ 16:57
teatime TimToady: any thoughts on how one would implement C-like "\␤" to a grammar, assuming one wanted to parsefile() and not read lines manually?
TimToady basically, switching from left-to-right parsing to right-to-left parsing doesn't work out
16:57 gflohr left, M-matthew joined 16:58 M-Illandan joined
teatime assuming most things can break across lines as if \n were any other whitespace, but where some things (preprocessor directives) are required to start on a new line. 16:58
TimToady newline is just like any other character, you just skip a . after
you can always limit the rules that recognize line beginning things with ^^ 16:59
or however you say that in English
there's plenty of prior art for all this in the Perl 6 grammar
teatime oh, I didn't realize that was re-definable
kk, thanks again. 17:00
TimToady so, for instance, token my-directive { ^^ '#stuff' } will only match #stuff at the beginning of a line 17:01
pod directives work this way in the p6 grammar 17:02
teatime oh, that's exactly what I wanted when i was asking about <after "\n">
TimToady in that case, just make sure you don't call <my-directive> where you don't want to match it because it's a line continuation 17:04
(if you want the line escape to take precedence) 17:05
((maybe you don't))
anyway, newlines are only a little bit special, mostly you can just treat them as a particular kind of whitespace 17:06
if you need to not match a newline, \N is useful, so \N* gets you the rest of the current line, for instance
but . doesn't care (unlike in many other regex languages, including p5's) 17:07
17:08 stoebe joined
TimToady the modal flags /m and /s in p5 were replaced by explicitly different matchers in p6 17:08
so we distiguish ^ from ^^ and $ from $$, as well as \n vs \N vs . 17:09
17:09 geekosaur left
Xliff So no need for the p5 /o modifier, now? 17:10
17:10 geekosaur joined 17:13 stoebe left 17:15 Skarsnik joined 17:18 domidumont joined 17:19 musiKk_ left 17:23 zakharyas left 17:25 sjoshi joined 17:36 Relsak joined 17:37 donaldh left
masak Xliff: ;) 17:38
17:44 dalek left 17:45 dalek joined, ChanServ sets mode: +v dalek
TimToady m: /foo/m 17:49
camelia rakudo-moar 8df1a6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gVcXqa2xdn␤Unsupported use of /m; in Perl 6 please use ^^ and $$ anchors␤at /tmp/gVcXqa2xdn:1␤------> 3/foo/m7⏏5<EOL>␤»
TimToady m: /foo/o
camelia rakudo-moar 8df1a6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/b7SmZjP1bx␤Missing required term after infix␤at /tmp/b7SmZjP1bx:1␤------> 3/foo/o7⏏5<EOL>␤ expecting any of:␤ prefix␤ term␤»
TimToady heh, we don't even check for that one...
17:50 xinming left
perlpilot except the message should say something like "What?!? You shouldn't even do that in Perl 5! Cut it out!" 17:50
17:52 xinming joined 17:55 jack_rabbit joined, AlexDaniel joined 18:04 Actualeyes left 18:06 dvinciguerra joined 18:07 CurtisOvidPoe left 18:08 buharin joined 18:15 dalek left, dalek joined, ChanServ sets mode: +v dalek
AlexDaniel I've added some “needs writing” tags: github.com/perl6/doc/issues?q=is%3...writing%22 18:18
18:22 cdg_ left
AlexDaniel m: enum Foo << :Bar(1) Baz >> 18:22
camelia ( no output )
AlexDaniel star: enum Foo << :Bar(1) Baz >>
camelia ( no output )
AlexDaniel m: enum Animal (Cat => 25, Dog) 18:24
camelia rakudo-moar 8df1a6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_AyQxLnULR␤Undeclared name:␤ Dog used at line 1␤␤»
18:27 cgfbee left
moritz you need to quote it 18:28
18:29 cgfbee joined, CurtisOvidPoe joined 18:30 AndyDee joined
AlexDaniel moritz: I know. That's from my old bug report, just wanted to see the error message 18:30
18:30 dvinciguerra_ joined 18:31 dvinciguerra left, _4d47 left
AlexDaniel “What is Radudo? Isn't it Rakudo?” – sometimes bug reports make me smile :) 18:31
18:35 dvinciguerra_ left, dvinciguerra joined 18:37 uptime joined, uptime left
jdv79 m: my $a = <:a b c>; say "{($a[0].substr: 1), $a[1..*]}" # ok 18:41
camelia rakudo-moar 8df1a6: OUTPUT«a b c␤»
18:41 jack_rabbit left
jdv79 m: my $a = <:a b c>; say qq{{($a[0].substr: 1), $a[1..*]}} # wut 18:41
camelia rakudo-moar 8df1a6: OUTPUT«(:a.substr: 1), b c␤»
jdv79 so qq() isn't the same as ""? 18:42
m: my $a = <:a b c>; say qq[{($a[0].substr: 1), $a[1..*]}] 18:43
camelia rakudo-moar 8df1a6: OUTPUT«a b c␤»
jdv79 i don't get it
who does #2 work for?!
18:43 tokomer left, musiKk_ joined
Skarsnik I think it's because you use { for qq 18:44
well it think you use {{ probably
jdv79 what does {{ mean? 18:46
18:48 tmch left, cgfbee left
MadcapJake jdv79: you can't use parentheses for quotes because it's the routine call postcircumfix operator 18:49
18:50 cgfbee joined
jdv79 ok. i didn't in the real code. just used it to indicate qq as a func. 18:50
in case there was any confusion. idk. 18:51
MadcapJake {{ is just one of many ways you can assemble a quote construct, you can use [[]], {{}}, "", «», and that half-width corner thing (don't remember the unicode for it)
and tons more!
masak .oO( isn't it Rakudo... don't you think? a little tooooo Rakudo... and yeah I really do think )
m: say "" ~~ /^/ 18:52
camelia rakudo-moar 8df1a6: OUTPUT«「」␤»
masak MadcapJake: 「」 :P
MadcapJake .u 「
yoleaux U+FF62 HALFWIDTH LEFT CORNER BRACKET [Ps] (「)
MadcapJake masak: nice way of finding that :P what does `/^/` mean? 18:53
skids
.oO(better than a halfwit corner bracket)
jdv79 still doesn't make sense
MadcapJake jdv79: what doesn't? 18:54
masak MadcapJake: "regex with a beginning-of-string anchor" (because the empty regex is illegal)
18:54 itaipu joined
MadcapJake masak: oh neat! I always wondered how to do that without getting an empty regex error 18:54
perlpilot we don't have Regex::Explain yet? 18:55
masak m: say "" ~~ /""/ # also works
camelia rakudo-moar 8df1a6: OUTPUT«「」␤»
masak m: say "" ~~ /<?>/ # ditto
camelia rakudo-moar 8df1a6: OUTPUT«「」␤»
18:55 rindolf left, Ven joined
jdv79 m: my $a = <:a b c>; say qq{123 {($a[0].substr: 1), $a[1..*]} 456} 18:55
camelia rakudo-moar 8df1a6: OUTPUT«123 {(:a.substr: 1), b c} 456␤»
masak m: say "" ~~ /arglebargle ** 0/ # works too, but perhaps confusing 18:56
camelia rakudo-moar 8df1a6: OUTPUT«Nil␤»
masak hm :)
jdv79 its not {{ causing that to not interp
masak m: say "" ~~ /"arglebargle" ** 0/ # works too, but perhaps confusing
camelia rakudo-moar 8df1a6: OUTPUT«「」␤»
masak there we go.
we still have no warning for that word thing?
maybe we did in a previous regex engine...
m: say "arglebargl" ~~ /arglebargle ** 0/ 18:57
camelia rakudo-moar 8df1a6: OUTPUT«「arglebargl」␤» 18:58
18:58 musiKk_ left, buharin left
MadcapJake masak: could be useful if you want to dynamically set the ** RH and allow for empty strings 18:59
that seems a bit quirky :P
TimToady the ** is only modifying the e
MadcapJake ohhhh 19:01
you'd have to wrap it in some parens or angle brackets?
masak I was commenting on the lack of warning on that
(because it's code that's wrong but looks kinda right)
19:02 rindolf joined, buharin joined 19:07 itaipu left
masak MadcapJake: or quotes, like a did above. 19:08
but yeah, [] and () work too, of course. () captures.
19:09 itaipu joined 19:12 mathw joined, [Sno] left
RabidGravy I could have sworn that I started writing a thing to pick the bits out of an MPC1000 PGM file 19:12
but I just can't find it
19:13 geekosaur left 19:14 geekosaur joined 19:16 atweiden joined, labster joined 19:17 musiKk_ joined 19:19 Ven left 19:20 ARM9 joined 19:23 vendethiel joined 19:29 FROGGS joined 19:34 labster left 19:37 Ven joined
Ven mm, is permutations not lazy? D: 19:38
19:40 labster joined, araujo left 19:50 hakonhagland joined 19:52 araujo joined
AlexDaniel m: say <a b c>.permutations.is-lazy 19:52
camelia rakudo-moar 8df1a6: OUTPUT«False␤»
hakonhagland Hi I have problems with installing panda on Ubuntu 15.10: stackoverflow.com/q/36201236/2173773 19:54
AlexDaniel Ven: this does not look right
Ven hehe : 19:55
AlexDaniel Ven: can you file a bug report?
skids m: say <a b c>.permutations.WHAT # good indication it is likely to be lazy
camelia rakudo-moar 8df1a6: OUTPUT«(Seq)␤»
AlexDaniel MadcapJake: so what happened with your bug reporting thing, by the way?
m: say (^100000).permutations[0]; say now - BEGIN now 19:58
camelia rakudo-moar 8df1a6: OUTPUT«(0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 8…»
hoelzro hakonhagland: I would recommend not using rakudo from apt
AlexDaniel m: (^100000).permutations[0]; say now - BEGIN now 19:59
camelia rakudo-moar 8df1a6: OUTPUT«0.845039041␤»
AlexDaniel m: (^100000).permutations[1000]; say now - BEGIN now
hoelzro I recommend that you build Rakudo from a release (such as 2016.03, which came out yesterday), or straight from Git
camelia rakudo-moar 8df1a6: OUTPUT«(timeout)»
AlexDaniel hoelzro: why?
Ven: ok, it looks lazy
hoelzro AlexDaniel: looking at that post, it's 2014.07
on *parrot*
AlexDaniel skids: but why Seq's are not lazy?
ah dammit 20:00
vendethiel AlexDaniel: mmmh
m: (^100000).permutations.elems.say; say now - BEGIN now
AlexDaniel hoelzro: well, there's 2016.02 in debian unstable
hoelzro ah, that's good
vendethiel seems like .elems on a permutations is not lazy
hoelzro AlexDaniel: what about ubuntu, though?
camelia rakudo-moar 8df1a6: OUTPUT«(timeout)» 20:01
AlexDaniel hoelzro: it is going to take some time to propagate to ubuntu…
skids It's very likely .elems on a permutation is not lazy. Though the .elems on the range should be.
vendethiel AlexDaniel: could we calculate the list of permutations beforehand?
there's probably a formula that doesn't involve generating 'em :P 20:02
(I'm willing to write the iterator subclass if that sounds sound to people)
skids Once you know the .elems of the original list, you should be able to reckon that, yes.
nCk=n!/k!(n-k)!
AlexDaniel hoelzro: so you are right. But there's nothing wrong with getting rakudo from repository, it's just that most people are not on unstable/testing and it will take some time for things to appear in stable :)
hoelzro right, there's nothing wrong in principle, just with the current state of things =) 20:03
20:03 darutoko left
AlexDaniel hoelzro: by the way, if I got that right, Debian stable will get v6.d without ever having v6.c 20:03
skids Or some subset of that formula.
RabidGravy the problem with installing panda there is due to PERL5LIB or PERLLIB being set in the environment
vendethiel skids: what's n? 20:04
RabidGravy dunno why
AlexDaniel hoelzro: assuming that we ship v6.d according to the plan :)
hoelzro ;)
20:04 pdcawley joined
AlexDaniel please no more of this “when?” “Diwali!” “but which Diwali?” 20:05
20:06 cdg joined
hakonhagland \msg RabidGravy and hoelzro: Thanks for the reply. What's the problem with PERL5LIB being set? 20:06
[Coke] 6.d isn't going to be shipped on 11/11
AlexDaniel m: say +permutations(1000000) 20:07
20:07 hankache joined
RabidGravy hakonhagland, it causes the problem you are seeing 20:07
camelia rakudo-moar 8df1a6: OUTPUT«(timeout)»
MadcapJake AlexDaniel: I kind of god sidetracked :P I just need to email [email@hidden.address] iirc
s/god/got/ xD
RabidGravy I've never experienced the problem so never investigated further
20:07 pdcawley_ left 20:08 hankache left
AlexDaniel [Coke]: then when? 20:08
20:08 hankache joined
AlexDaniel 10/30? 20:09
[Coke] AlexDaniel: deliberately not on Diwali actual.
AlexDaniel hmm
hankache Good evening #perl6
[Coke] "when it's good and ready".
20:10 Ven left 20:11 sjoshi left
hakonhagland RabidGravy: I tried to install panda without PERL5LIB: "PERL5LIB= perl6 bootstrap.pl" but got another error 20:11
20:12 dalek left, dalek joined, ChanServ sets mode: +v dalek
AlexDaniel [Coke]: Well, strategically it is a good idea to ship it before 2017 20:13
[Coke]: simply because of debian
hakonhagland RabidGravy: I will update the question on stackoverflow.com with the new error message. Thanks for the help!
nine -∞ on meeting arbitrary dead lines 20:14
AlexDaniel it's not arbitrary. It's what people will get for the next few years. Very important deadline to keep in mind 20:16
hoelzro what marks the point where 6.d (the language) is released and work on 6.e starts? just when TimToady feels that the number of changes since 6.c is significant enough?
nine It's what a few people will get easily for the next few years. They can still get something else without much effort. The vast majority of people is unaffected. 20:17
RabidGravy also it's something that module authors have to work toward
20:18 dalek left, baest_ joined
AlexDaniel nine: I think that you underestimate the number of people that use debian or debain-based distros 20:18
20:18 dalek joined, ChanServ sets mode: +v dalek
nine AlexDaniel: how many Perl 6 users _do_ use Debian _stable_ or a distro based on Debian stable? 20:19
[Coke] hoelzro: I would say it's up to the core developers, not just tt
20:19 baest left
moritz nine: I do 20:19
AlexDaniel nine: zero because debian stable has rakudo 2014.07
nine moritz: and you already discovered a way to get a more up to date rakudo ;) 20:20
AlexDaniel nine: we can keep it that way but it is not a good idea for adoption
hoelzro *nod*
RabidGravy I'm a bit disappointed that fedora is stuck on 2015-11
nine And rushing again to meet some release date will be good for adoption?
AlexDaniel nine: having v6.d in debian stable is a good idea, yes 20:21
nine A _rushed_ 6.d?
MadcapJake I wonder if it makes sense to use xdg-app to install rakudo. 20:22
AlexDaniel nine: rushing – not so much. But as far as I can see 2016 is a year of speeding things up, so there's not so much to rush, I guess. At least right now it looks good
perlpilot Why the fuss about 6.d? Does anyone even know what that means?
nine 6.d will be the point where we will have 2 language versions for the first time ever. We don't even have the infrastructure for that in place yet and no one is working on that.
RabidGravy and there's a lot of stuff to be written before then 20:23
20:25 yqt joined
AlexDaniel nine: You're right. Having 6.c in debian stable will get us lots of testers who will be using v6.c, so that we can get the infrastructure right for v6.e… 20:25
jnthn There'll be 6.c.1, etc. so folks can depend on the numerous fixes/improvements in their META.info. If we were to do a 6.c.1 based on current roast then it'd not need any infrastructure. :) 20:26
Besides making us be OK about things that ask for 6.c.1. 20:27
20:28 dvinciguerra left
dalek c: 1e8490e | (Mathieu Gagnon)++ | doc/Language/5to6-perl (2 files):
Remove code formats from code blocks

Also change the 5to6-perlfunc#sprintf code blocks to table; since it was not code, syntax highlighting made it look weird.
Ref:
  github.com/perl6/doc/commit/3bff9a...df78de8dec
  github.com/perl6/doc/commit/b9434b...2372874834
20:35
MadcapJake looks like the Perl 6 variable issue on github is because it uses a different regex engine 😢
20:38 domidumont left
AlexDaniel m: permutations(-1) 20:38
camelia rakudo-moar 8df1a6: OUTPUT«Constraint type check failed for parameter '$n'␤ in block <unit> at /tmp/VepB2XRWH5 line 1␤␤»
MadcapJake anyone here know how to capture unicode in PCRE? Would this work: « [\x21-\x7E] » 20:40
or would this be better: « [\x00-\x7F] » 20:41
wait nevermind, I might not even need this :P 20:43
AlexDaniel m: say combinations(4, 0.5)
camelia rakudo-moar 8df1a6: OUTPUT«(())␤»
AlexDaniel m: say combinations(4, 0.9)
camelia rakudo-moar 8df1a6: OUTPUT«(())␤»
AlexDaniel m: say combinations(4, 1.9)
camelia rakudo-moar 8df1a6: OUTPUT«This type cannot unbox to a native integer␤ in block <unit> at /tmp/P7DraldA7p line 1␤␤»
AlexDaniel ?
like if 0.5 was just fine? :)
20:43 pmurias joined
skids vendethiel: n is the size of the set, k is the size of the result set (that formula is for combinations without replacement IIRC but all those formulas tend to end up unintuitively close to each other) 20:44
vendethiel uuuuh
AlexDaniel m: .say for combinations(-999999999999999999, 2) 20:45
camelia ( no output )
AlexDaniel m: .say for combinations(-9999999999999999999, 2)[^10]
camelia rakudo-moar 8df1a6: OUTPUT«(0 1)␤(0 2)␤(0 3)␤(0 4)␤(0 5)␤(0 6)␤(0 7)␤(0 8)␤(0 9)␤(0 10)␤»
pmurias jnthn: it's really interesting that it's much faster for nqp-js to write a bunch of strings to a file and slurp then back in than it's to concatenate them
skids www.u.arizona.edu/~kuchi/Courses/MA....Perms.pdf (permutations is k! times that formula, or nPk = n!/(n-k)!) 20:47
jnthn pmurias: Curious indeed...any idea why? :)
pmurias running out of memory and swapping 20:48
20:50 mojca joined
skids m: (combinations(-999999999999999999, 2).map({$_})[^10]).say 20:51
camelia rakudo-moar 8df1a6: OUTPUT«(Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil)␤»
AlexDaniel m: (combinations(-9999999999999999999999, 2).map({$_})[^10]).say
camelia rakudo-moar 8df1a6: OUTPUT«Cannot unbox 74 bit wide bigint into native integer␤ in block <unit> at /tmp/u_sPGjZ1_E line 1␤␤»
AlexDaniel m: (combinations(-99999999999999999999, 2).map({$_})[^10]).say
camelia rakudo-moar 8df1a6: OUTPUT«Cannot unbox 67 bit wide bigint into native integer␤ in block <unit> at /tmp/3Jr7sUB9uN line 1␤␤»
AlexDaniel m: (combinations(-999999999999999999, 2).map({$_})[^10]).say
camelia rakudo-moar 8df1a6: OUTPUT«(Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil)␤»
AlexDaniel m: (combinations(-9999999999999999999, 2).map({$_})[^10]).say 20:52
camelia rakudo-moar 8df1a6: OUTPUT«((0 1) (0 2) (0 3) (0 4) (0 5) (0 6) (0 7) (0 8) (0 9) (0 10))␤»
AlexDaniel there we go
20:53 Relsak left
Xliff .U 2309 20:55
yoleaux U+2309 RIGHT CEILING [Pe] (⌉)
21:00 setty1 left
Xliff The problem with Debian based installations is either: 21:01
1) the module include path is wrong in the perl6 bin 21:02
2) The package maintainer has installed modules going into the wrong directory.
That was my introduction to perl6. Fortunately there was rakudobrew and #perl6.
pmurias jnthn: not sure why it happens, seems to be a problem only when using a lot of largish strings 21:03
teatime Xliff: it seems likely that every distro's packages will be too old to be useful, anyway 21:04
and rakudobrew was painless
MadcapJake AlexDaniel: I got an email back from the webmaster (wrt to issue submitter email), guess what he suggested? 21:05
AlexDaniel MadcapJake: to use github? :) 21:06
Xliff Is this the way to get rakudobrew to build from the latest commits to head: "rakudobrew build moar head"
MadcapJake Bingo!
21:07 pierrot left, FROGGS left, pierrot joined
AlexDaniel
.oO( again, why are we stuck with RT? Hmm… )
21:07
21:07 notbenh left 21:08 [Tux] left
MadcapJake He also asked why I need an email address, maybe I don't understand this well enough, if I want to send emails, I either need to setup my own SMTP server or use someone else's which means I'll need an email account there, right? 21:08
21:08 skids left 21:09 notbenh joined
MadcapJake My plan was, using the SMTP Perl 6 module, access the perl.org SMTP server, and send emails as [email@hidden.address] and cc the user's email if they added theirs in the email field. Is that reasonable or am I missing something here? 21:09
21:09 dvinciguerra joined 21:10 [Tux] joined
MadcapJake anyone have some thoughts on this? 21:12
.seen ZoffixW 21:13
yoleaux I saw ZoffixW 22 Mar 2016 13:49Z in #perl6: <ZoffixW> .tell lizmat if you're looking for content for the next Weekly, you could post the MeetUp for March 30th Toronto Perl Mongers. I'll be giving a "Wow, Perl 6!" talk that will go over the cool bits of Perl 6: www.meetup.com/Toronto-Perl-Mongers...228600742/
21:15 firstdayonthejob joined 21:17 ptolemarch left
Xliff Is anyone else disturbed that "build moar head" is syntax for rakudobrew? 21:18
masak ...no? 21:19
we do need to build more heads. we're running short on heads.
masak .oO( it's an arms race )
Xliff MadcapJake: If you don't plan on receiving mail sent to that address, then no. You should not need an account. You will need a properly configured mail server to allow whatever machine you are sending from to relay. 21:20
MadcapJake Xliff: but I want to allow the user to submit anonymously.
Xliff masak: Not the "head" that I was thinking of... but I'll allow it.
Xliff attempts to extract mind from gutter...
perlpilot Xliff: the gutter is fine sometimes as long as you don't get stuck there :) 21:21
Xliff MadcapJake: By far the easiest thing to do is to have an account on the SMTP server itself.
perlpilot, then I'm totally fucked.
MadcapJake Xliff: can I avoid having a properly configured email server and just use perl.org's :) that's my goal, is it possible?
Xliff 8-)
MadcapJake, If you plan on relaying through perl.org, then you will need the admin of perl.org to set that up for you. 21:22
MadcapJake Xliff: there's already an SMTP module for perl 6 so I was just going to use that to login to perl.org's email server and send an email via [email@hidden.address]
Xliff: ok that's what I thought, I'm in the midst of replying to the admin right now.
Xliff You just can't point an SMTP client at a server and send mail willy nilly.
perlpilot
.oO( not anymore ... )
21:23
Xliff Used to be nobody cared. Then the spammers came along and all of the open relays died.
kmwallio can anyone think of a reason why a Perl 6 test wouldn't exit cleanly when ran remotely?
not a brain teaser...
I'm trying to call xclip using shell and q:x, and it runs fine locally 21:24
Xliff Was that issue fixed with "rakudobrew look" hanging any subsequent call to the perl6 shell until the rakudobrew session was terminated?
MadcapJake Xliff: ok that's what I thought, so I'll need to get some login details, I'm a little irked that the reply so far seems like "I don't really want to deal with this right now" but hopefully I'll get a better reply after my response.
masak m: say Regex ~~ Method
camelia rakudo-moar 8df1a6: OUTPUT«True␤»
Xliff Who is running perl.org, these days? 21:25
MadcapJake Xliff: someone at the other end of [email@hidden.address] is named Robert :P
perlpilot "rakudobrew look"? ITYM "panda look" as I don't think rakudobrew has a "look" command
Xliff Develooper LLC?? 21:26
perlpilot, Whoops! You are correct sir. It was "panda look".
If I do a "panda look" and in another shell try and execute "perl6" in shell mode, the perl6 process would hang until the panda session had finished. 21:27
21:27 buharin left
kmwallio that might be part of it, but it looks like travis is running prove -v -r --exec=perl6 t/ 21:30
I did have a panda installdeps . earlier
21:32 dalek left 21:33 pdcawley left, MadcapJake left, stmuk left, pdcawley joined, synopsebot6 left, MadcapJake joined 21:34 perlpilot left, Spot__ left, pnu left 21:35 ilmari left, stmuk joined, solarbunny left 21:36 Spot__ joined, ilmari joined, dalek joined, ChanServ sets mode: +v dalek 21:37 pnu joined 21:38 bjz_ left 21:41 arcetera left 21:43 wamba left, musiKk_ left 21:44 itaipu left, cpage_ left, bjz joined, solarbunny joined, Skarsnik left, aindilis left, ARM9 left, shadowpaste0 left, alnewkirk left, keix left, frew left, jkramer left, bhm left, gfldex left, tinita left, itaipu joined 21:46 wamba joined, nadim joined 21:48 _nadim left 21:49 mojca left 21:51 hankache left
RabidGravy ooh, the fedora package of icecast doesn't create the /var/run/icecast so it doesn't create a pid file 21:52
timotimo so it uses systemd? 21:53
21:56 MadcapJake` left, Skarsnik joined
RabidGravy well it's managed by systemctl 21:59
22:00 nadim left, ARM9 joined, aindilis joined, shadowpaste0 joined, alnewkirk joined, jkramer joined, keix joined, frew joined, bhm joined, gfldex joined, tinita joined 22:02 wamba left
moritz and systemctl is a part of systemd 22:02
RabidGravy yes 22:04
teatime Can you say (in grammar) proto token Escape { 「」 22:05
whoops, hole on a sec
RabidGravy anyway, create the directory "systemctl restart icecast" and lo! the .pid file appears and I can tell monit about it 22:06
teatime Can you say (in grammar) proto token Escape { 「\」 * }; token Escape:sym<"> { <sym> }; -- and then in actions, do something like this: -- method Escape:sym ($/) { make $<sym> } 22:08
22:09 _4d47 joined 22:10 Sgeo__ joined 22:11 TEttinger joined 22:13 cpage_ joined, stmuk_ joined 22:14 arc__ joined 22:15 arc__ is now known as arcetera, arcetera left, arcetera joined 22:16 stmuk left, mojca joined, itaipu left 22:19 skids joined 22:20 geekosaur left, [Sno] joined 22:21 geekosaur joined
hakonhagland /msg NickServ VERIFY REGISTER hakonhagland ibduavjxxfey 22:25
TEttinger ibduavjxxfey is an interesting choice. 22:26
hakonhagland Seems like I added a space in front of \msg
teatime heh 22:28
22:28 kid51 joined, hakonhagland left 22:40 [Sno] left, |Sno| joined 22:55 vendethiel left 23:00 mullagain left
masak watches Ovid's www.youtube.com/watch?v=hR9UdvxMAbo and thinks "wow, this Perl 6 thing is *great*" 23:03
23:07 itaipu joined 23:08 boegel left 23:10 mojca left 23:12 jack_rabbit joined 23:14 rindolf left 23:16 boegel joined 23:17 pmurias left 23:21 _4d47 left 23:24 ChoHag left, ChoHag joined
masak 'night, #perl6 23:26
23:29 RabidGravy left 23:38 labster left 23:39 Skarsnik left 23:40 itaipu left 23:41 labster joined 23:57 ARM9 left 23:58 firstdayonthejob left