Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-12-27

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:01 kanishka joined #perl6
00:02 cygx 'night o/
00:03 ZoffixWin m: my \b = 3; my $a = 3; my $a-b = 3; say $a-b
00:03 camelia rakudo-moar 1bdb78: OUTPUT«3␤»
00:03 ZoffixWin night
00:08 llfourn joined #perl6
00:08 BenGoldberg m: my \b = 3; my $a = 3; my $a-b = 3; say $a;
00:08 camelia rakudo-moar 1bdb78: OUTPUT«3␤»
00:08 BenGoldberg m: my \b = 3; my $a = 3; my $a-b = 42; say $a-b;
00:08 camelia rakudo-moar 1bdb78: OUTPUT«42␤»
00:08 BenGoldberg m: my \b = 3; my $a = 3; my $a-b = 42; say b;
00:08 camelia rakudo-moar 1bdb78: OUTPUT«3␤»
00:08 Some-body_ joined #perl6
00:08 * BenGoldberg wonders how that works.
00:08 ZoffixWin BenGoldberg, $a-b is a var name
00:08 BenGoldberg D'oh, I see.
00:08 ZoffixWin That's pretty much it :)
00:09 telex joined #perl6
00:09 * BenGoldberg feels silly now.
00:09 dlynes Is it normal to see rakudobrew build moar take aeons with zero updates to the screen?
00:09 ZoffixWin dlynes, nope
00:10 dlynes i.e. it's takeing forever to clone into 'moar-nom'
00:10 dlynes s/takeing/taking/
00:10 timotimo geekosaur: oh, sorry!
00:10 ZoffixWin Maybe try restarting it.
00:10 timotimo i'm only eye-ing the channel with ... parts of a single eye i suppose
00:10 dlynes ZoffixWin: yeah...tried that, and then it throws up all over itself
00:10 ZoffixWin the whole build takes ~2-3 minutes on my box
00:10 ZoffixWin dlynes, I'd try removing ~/.rakudobrew and ~/.perl6 and starting from scratch.
00:11 zhmylove_ joined #perl6
00:11 Jonis_ joined #perl6
00:11 dlynes And it always seems to hang on something git related
00:11 ZoffixWin weird
00:11 ChoHag_ joined #perl6
00:11 dlynes git works fine...I use it daily at the office
00:11 ZoffixWin Maybe Chaina is DoSing github again XD
00:11 ZoffixWin *China
00:11 AWei joined #perl6
00:12 sjohnson` joined #perl6
00:12 noganex joined #perl6
00:13 dlynes ZoffixWin: ic
00:13 dlynes ZoffixWin: didn't realize China had an interest in bullying opensource software
00:13 Ari__ joined #perl6
00:14 ZoffixWin they did it a few months ago. There's an OSS that allows bypassing their Great Firewall
00:14 ZoffixWin Why is this vodka flavour named "cherrys" and not "cherry", "cherries", or "cherry's" -_-
00:15 gfldex if they misspell it, they get a TM
00:16 dlynes Nice...have multiple instances of git running inside of perl
00:17 dlynes perl 5.18.2 is fine for the bootstrap, right?
00:17 flussence 5.10.0 or higher is fine
00:19 bakedb joined #perl6
00:19 jervo joined #perl6
00:23 crux joined #perl6
00:23 wtw joined #perl6
00:29 grondilu seems like the amount of hate on /. is high
00:29 timotimo - time for a new slang
00:29 flussence grondilu: must be a day of the week ending in "y" again...
00:30 timotimo grondilu: i'm a bit shocked the amount of hate on "hater news" is so small. i guess i must be wrong in my impression of those people
00:30 vendethiel grondilu: on /. ?
00:30 timotimo slashdot, however ...
00:30 timotimo that never surprises, i guess
00:31 vendethiel oh.
00:31 [Coke] "people still read /." ?
00:31 timotimo [Coke]: thanks again for doing the honors of the release :)
00:31 timotimo and the releases before that
00:31 [Coke] ... so the haters have a visible target? you're welcome. :)
00:32 timotimo hah
00:32 timotimo if any haters hate on you personally, bet on me to give them a punch to the face
00:32 [Coke] You're welcome. Many hands made the release light work.
00:32 timotimo <3
00:35 rurban1 joined #perl6
00:38 rurban joined #perl6
00:38 dalek doc/category: aad0a2f | coke++ | / (3 files):
00:38 dalek doc/category: Add categorized search results.
00:38 dalek doc/category: review:
00:38 [Coke] ^^ anyone playing with the doc site, please check that out, see if it renders to your liking.
00:40 timotimo man, i'd love it if we had builds of branches of the doc and spec repositories ... and why not also the repository
00:40 timotimo i wonder how hard that is to do
00:40 timotimo a little VHost here, a little DocumentRoot there, a bit of a for loop around git while building ...
00:43 timotimo - i opened an issue about handling the perl foundation perl6 wiki
00:45 [Coke] ISTR I have an email open about that.
00:45 timotimo oh, neat!
00:46 [Coke] ... can't find it.
00:46 timotimo Drafts/ ? :)
00:47 [Coke] ... found it.
00:47 [Coke] sent Nov 20, no reply from the webmaster at the perl foundation.
00:47 timotimo maybe we should be contacting someone in a more political position about this?
00:47 timotimo the only person i know at TPF is karen; no clue if she'd be a good address?
00:52 Ox0dea joined #perl6
00:53 [Coke] I repinged the webmaster, cc'd timo, we can reach out karen in a few days if needed. I'm happy to do it if someone reminds me.
00:55 timotimo i added an event to my calendar to remind me to remind you
00:56 Ox0dea Why are types falsy?
00:56 dududuedu joined #perl6
00:56 timotimo because they are not defined
00:56 Sgeo joined #perl6
00:56 timotimo that meshes more or less well with "empty list is falsy", "0 is falsy" and "empty string is falsy"
00:56 secwang joined #perl6
00:57 timotimo well, it doesn't mesh "less well"
00:57 bpmedley_ joined #perl6
00:58 BenGoldberg m: my $foo; say $foo
00:58 camelia rakudo-moar 1bdb78: OUTPUT«(Any)␤»
00:58 BenGoldberg m: my $foo; say so $foo
00:58 camelia rakudo-moar 1bdb78: OUTPUT«False␤»
00:58 BenGoldberg m: my $foo; say $foo.^attributes
00:58 camelia rakudo-moar 1bdb78: OUTPUT«()␤»
00:59 timotimo m: my $foo =; say so $foo
00:59 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
00:59 timotimo a new instance of Any. super useful!
01:00 herby_ joined #perl6
01:00 herby_ Good evening, everyone!
01:00 Ox0dea Hi, herby_!
01:00 BenGoldberg Ox0dea, Think of it this way, the default value of any scalar variable, before you've assigned anything to it, is not some value resembling perl5's 'undef', but rather whatever class that variable has been defined to be.
01:00 herby_ o/
01:01 AlexDaniel timotimo: yeah, look!
01:01 AlexDaniel m: my Any:D $x = Any
01:01 camelia rakudo-moar 1bdb78: OUTPUT«Type check failed in assignment to $x; expected Any:D but got Any␤  in block <unit> at /tmp/avlnxDYPx4 line 1␤␤»
01:01 AlexDaniel m: my Any:D $x =
01:01 camelia rakudo-moar 1bdb78: ( no output )
01:02 timotimo that could be called ... a use ... yeah :)
01:02 timotimo anyway, i ought to head to bed
01:02 timotimo head and body
01:03 AlexDaniel so let's say you want it to accept anything as long as it is defined
01:03 AlexDaniel m: my Any:D $x = Int
01:03 camelia rakudo-moar 1bdb78: OUTPUT«Type check failed in assignment to $x; expected Any:D but got Int␤  in block <unit> at /tmp/iaQWzn4oJr line 1␤␤»
01:03 AlexDaniel m: my Any:D $x = 25
01:03 camelia rakudo-moar 1bdb78: ( no output )
01:04 AlexDaniel I'm not sure that you'd expect :D
01:05 timotimo nobody expects the spanish!
01:05 AlexDaniel m: say Any.^methods
01:05 camelia rakudo-moar 1bdb78: OUTPUT«(Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new cache Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|586…»
01:05 timotimo m: say Any.^methods>>.name
01:05 camelia rakudo-moar 1bdb78: OUTPUT«(EXISTS-KEY DELETE-KEY DELETE-POS cache list flat eager List Slip Array hash Hash elems end keys kv values pairs antipairs invert pick roll iterator classify categorize rotor reverse combinations permutations join nodemap duckmap deepmap tree push append u…»
01:06 timotimo (don't ask me why it looks like that, though ...)
01:06 timotimo good night!
01:06 AlexDaniel m:
01:06 AlexDaniel m: say
01:06 camelia rakudo-moar 1bdb78: OUTPUT«Any<139711291550128>␤»
01:06 AlexDaniel m: say
01:06 camelia rakudo-moar 1bdb78: OUTPUT«Any<140648963639728>␤»
01:06 AlexDaniel m: say
01:06 camelia rakudo-moar 1bdb78: OUTPUT«Any<139805361641904>␤»
01:06 uruwi Has anyone discussed floating point shenanigans on Blob.pack / unpack yet?
01:06 timotimo that's actually the memory location right there
01:07 herby_ shenanigans?
01:07 Ox0dea timotimo: Why decimal?
01:07 timotimo uruwi: - this is juerd's proposition for what to replace current pack/unpack with
01:07 timotimo Ox0dea: i suppose because it's not really meant to be seen/read by humans?
01:07 uruwi oh, nice!
01:08 llfourn joined #perl6
01:08 uruwi It does mean I have to rewrite what little code depends on the current method, but I'll read.
01:09 timotimo don't have to rewrite it yet; you will however have to put "use experimental :pack"
01:09 AlexDaniel m: say ( ..
01:09 camelia rakudo-moar 1bdb78: OUTPUT«(Range)␤»
01:09 AlexDaniel m: say ( ..
01:09 camelia rakudo-moar 1bdb78: OUTPUT«␤»
01:09 AlexDaniel m: say Any .. Any
01:09 camelia rakudo-moar 1bdb78: OUTPUT«Any..Any␤»
01:10 herby_ any recommended reads on how to OO-program with Perl6?
01:10 herby_ figured I could learn both at the same time
01:10 AlexDaniel retupmoca: what about this?
01:10 AlexDaniel oops
01:10 AlexDaniel wrong nick
01:10 herby_ :)
01:10 AlexDaniel herby_: ↑
01:11 herby_ I'll give it a read, thanks!
01:18 AlexDaniel m: say min(, 5); say max(, 5)
01:18 camelia rakudo-moar 1bdb78: OUTPUT«5␤␤»
01:19 AlexDaniel m: say ~ 42
01:19 camelia rakudo-moar 1bdb78: OUTPUT«Any<140611433156480>42␤»
01:20 ZoffixWin :/
01:21 ZoffixWin m: say
01:21 camelia rakudo-moar 1bdb78: OUTPUT«Cannot call Numeric(Any: ); none of these signatures match:␤    (Mu:U \v: *%_)␤  in block <unit> at /tmp/zP0Gq1ffAA line 1␤␤»
01:21 uruwi Of course that doesn't work
01:21 uruwi After all, there's an Any<> wrapped around it
01:23 AlexDaniel m: say
01:23 camelia rakudo-moar 1bdb78: OUTPUT«(0␤»
01:24 uruwi Let me guess: converting to a one-element array and getting the index as the key?
01:24 bpmedley joined #perl6
01:26 zacts so is the christmas release of rakudo the first official stable release?
01:26 zacts or is it still alpha / beta / unstable?
01:27 AlexDaniel zacts: Maybe this will help:
01:27 AlexDaniel zacts: section starting with “So, about the release…”
01:31 AlexDaniel zacts: maybe we can give a more detailed answer if you narrow down your question to something simpler
01:31 flussence hm, I think github's having a bad day...
01:31 AlexDaniel flussence: yes
01:35 thomax_ joined #perl6
01:35 zacts AlexDaniel: oh thanks, /me reads
01:36 AlexDaniel zacts: the problem is that there is no way to say if something is “stable” or “unstable”, because there are various states in between
01:37 AlexDaniel zacts: some find that Perl 6 is just right for their tasks (that is, some people are already using it in production), others find it extremely unstable. Well, it depends on the task
01:38 zacts oh cool
01:38 zacts so really there are two points to consider
01:38 zacts #1 where the language specification is at
01:38 xfq joined #perl6
01:38 zacts and #2 where the implementations of this specification are at
01:38 flussence :)
01:38 AlexDaniel zacts: this release is supposed to mean that what you write today is going to work 3 months from now, unlike what we had previously
01:39 zacts oh I see, cool
01:39 zacts so kind of analagous to a stable API/ABI?
01:39 zacts the language specification is stable, and rakudo implements this, and any diversion from this is a bug in rakudo christmas?
01:40 flussence "Perl 6" is analogous to "HTML 5", where Rakudo 2015.12 is equivalent to Chromium 47
01:40 zacts ah I see ok
01:40 zacts cool!
01:40 zacts =)
01:40 bpmedley <-- This doesn't print the desired results for me.  I don't get anything from "@leaving".  Any ideas for what I'm doing wrong?
01:40 flussence note that nothing actually implements all of HTML5 or C++14 for that matter
01:40 zacts well congrats on Perl6 christmas and Rakudo cchristmas
01:40 zacts flussence: my brain does
01:40 zacts (kidding kidding)
01:41 zacts \o/
01:42 ZoffixWin \o/
01:43 AlexDaniel bpmedley: your perl 6 is probably old, let's see
01:43 AlexDaniel m: say ['camel', 'vicuna', 'llama'].splice(1)
01:43 camelia rakudo-moar 1bdb78: OUTPUT«[vicuna llama]␤»
01:43 bpmedley I got it from brew.
01:43 AlexDaniel m: my @animals = ['camel', 'vicuna', 'llama']; my @leaving = splice(@animals, 1); say @leaving;
01:43 camelia rakudo-moar 1bdb78: OUTPUT«[vicuna llama]␤»
01:43 bpmedley Has brew been updated?
01:43 AlexDaniel bpmedley: try perl6 --version
01:44 bpmedley This is perl6 version 2015.03 built on MoarVM version 2015.03
01:44 AlexDaniel ewwwwww
01:44 * flussence went a bit overboard there but sends that rakudo PR anyway
01:44 bpmedley Doh.  My bad.
01:44 bpmedley Even the ewwww version is impressive.. :-0
01:45 AlexDaniel bpmedley: though there is a high chance that you will have to nuke your installation
01:45 disturbingly_rea joined #perl6
01:45 disturbingly_rea *tips hat to the gentlemen responsible for yesterday's release*
01:45 disturbingly_rea als
01:45 disturbingly_rea *also ladies
01:46 ZoffixWin camelia,
01:46 ZoffixWin m:
01:46 camelia rakudo-moar 1bdb78: OUTPUT«[vicuna llama]␤[vicuna llama]␤»
01:46 ZoffixWin disturbingly_rea, what about robots? :D
01:46 AlexDaniel camelia should support bitbucket as well
01:46 disturbingly_rea *considers robots*
01:46 bpmedley m:
01:46 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/qCnGLIcFTx␤Confused␤at /tmp/qCnGLIcFTx:1␤------> 3https:7⏏5//␤    expecting any of:␤        colon pair␤»
01:46 disturbingly_rea *finds the whole concept overwhelming*
01:47 bpmedley m:!api/2.0/snippets/bpmedley/rKoda/da3119618452261d9d4b7dea1c025321c55d694a/files/oddness.txt
01:47 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/JAFEsUCywK␤Confused␤at /tmp/JAFEsUCywK:1␤------> 3https:7⏏5//!api/2.0/snippets/bpmedl␤    expecting any of:␤        colon pair␤»
01:47 AlexDaniel I mean, someone should add support for bitbucket
01:47 ZoffixWin bpmedley, only gist is supported
01:47 bpmedley Gotcha
01:47 ZoffixWin AlexDaniel, well volunteered!
01:47 ZoffixWin :D
01:47 AlexDaniel ZoffixWin: where's the source code?
01:47 ZoffixWin AlexDaniel, /evalbot
01:47 AlexDaniel ah right
01:47 ZoffixWin
01:48 herby_ joined #perl6
01:48 flussence who likes docs? I got ya some right here!
01:48 AlexDaniel let's see if I can do it in 20 minutes…
01:48 ZoffixWin flussence++
01:48 disturbingly_rea How would one round a number to n decimal places? If I wanted the following to be -1, for example
01:49 disturbingly_rea say e**(i*π)
01:49 flussence (this was prompted by the realisation that I have no idea what the hell those precomp vars actually did)
01:49 AlexDaniel m: say round(25.555, 2)
01:49 camelia rakudo-moar 1bdb78: OUTPUT«26␤»
01:49 AlexDaniel m: say round(25.555, -2)
01:49 camelia rakudo-moar 1bdb78: OUTPUT«26␤»
01:49 disturbingly_rea m: say e**(I*π)
01:49 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dUR8eFo2XL␤Undeclared name:␤    I used at line 1␤␤»
01:49 AlexDaniel m: say round(25.555, 0.02)
01:49 camelia rakudo-moar 1bdb78: OUTPUT«25.56␤»
01:49 ZoffixWin AlexDaniel, likely just another condition here:
01:49 disturbingly_rea awesome
01:49 disturbingly_rea ta
01:49 AlexDaniel ZoffixWin: yeah
01:50 ZoffixWin Ah, and I was wrong. It's not just gist, but URLs as well
01:50 prevost joined #perl6
01:50 grondilu m: say e**(I*π)
01:50 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MJR5tR5But␤Undeclared name:␤    I used at line 1␤␤»
01:50 disturbingly_rea m: say round(e**(i*π), 0.0001)
01:50 camelia rakudo-moar 1bdb78: OUTPUT«-1+0i␤»
01:50 grondilu m: say e**(i*π)
01:50 camelia rakudo-moar 1bdb78: OUTPUT«-1+1.22464679914735e-16i␤»
01:50 grondilu m: say e**(πi)
01:50 xpen joined #perl6
01:50 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/untnCwFs92␤Undeclared routine:␤    πi used at line 1␤␤»
01:50 ZoffixWin m: say e**(i\π)
01:50 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fmc2x_ppV4␤Confused␤at /tmp/fmc2x_ppV4:1␤------> 3say e**(i\7⏏5π)␤»
01:50 ZoffixWin :/
01:50 ZoffixWin m: say e**(i/π)
01:50 camelia rakudo-moar 1bdb78: OUTPUT«0.949765715381639+0.312961796207787i␤»
01:51 ZoffixWin .oO( I seem to recall there being a special case for i\ )
01:52 BenGoldberg m: say e**(π i)
01:52 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/nFbQ6PQqQt␤Two terms in a row␤at /tmp/nFbQ6PQqQt:1␤------> 3say e**(π7⏏5 i)␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤  …»
01:53 BenGoldberg m: sub postfix<i> (Num $x) { i*$x }; say e**(π i)
01:53 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Zf5GwaSOy5␤Missing block␤at /tmp/Zf5GwaSOy5:1␤------> 3sub postfix7⏏5<i> (Num $x) { i*$x }; say e**(π i)␤    expecting any of:␤        new name to be defined␤»
01:53 BenGoldberg m: sub postfix:<i> (Num $x) { i*$x }; say e**(π i)
01:53 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XPp834IsQs␤Two terms in a row␤at /tmp/XPp834IsQs:1␤------> 3postfix:<i> (Num $x) { i*$x }; say e**(π7⏏5 i)␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤…»
01:54 disturbingly_rea Welp, that was apparently a can of worms ;)
01:54 BenGoldberg m: sub postfix:<i> { i*$^x }; say e**(π i)
01:54 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wqhzv3rQzY␤Two terms in a row␤at /tmp/wqhzv3rQzY:1␤------> 3sub postfix:<i> { i*$^x }; say e**(π7⏏5 i)␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤    …»
01:54 BenGoldberg m: sub postfix:<i> { i*$^x };
01:54 camelia rakudo-moar 1bdb78: ( no output )
01:54 disturbingly_rea Can you avoid the * sometimes then?
01:56 disturbingly_rea m: say e**(iπ)
01:57 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Et_0MOYzKE␤Undeclared routine:␤    iπ used at line 1␤␤»
01:57 BenGoldberg m: multi postfix:<i> {...}; multi postfix:<i> (Complex $x) { i*$x }; multi postfix:<i> (Numeric $x) {,$x) };
01:57 camelia rakudo-moar 1bdb78: ( no output )
01:57 BenGoldberg m: multi postfix:<i> {...}; multi postfix:<i> (Complex $x) { i*$x }; multi postfix:<i> (Numeric $x) {,$x) }; say 3 i;
01:57 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VKlluz_J_g␤Two terms in a row␤at /tmp/VKlluz_J_g:1␤------> 3Numeric $x) {,$x) }; say 37⏏5 i;␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤       …»
01:57 disturbingly_rea say e**(i*τ )
01:58 disturbingly_rea m: say e**(i*τ )
01:58 camelia rakudo-moar 1bdb78: OUTPUT«1-2.44929359829471e-16i␤»
01:58 disturbingly_rea tau FTW
01:58 BenGoldberg m: say τ;
01:58 camelia rakudo-moar 1bdb78: OUTPUT«6.28318530717959␤»
01:59 ZoffixWin \o/
01:59 AlexDaniel disturbingly_rea: I don't think that you can avoid it but you can also use ×
01:59 ZoffixWin m: say τ == ½*π
01:59 camelia rakudo-moar 1bdb78: OUTPUT«False␤»
01:59 disturbingly_rea oooh..... *tries it out*
01:59 ZoffixWin :(
02:00 disturbingly_rea m: 1 x 2 x 3 x 4
02:00 camelia rakudo-moar 1bdb78: OUTPUT«WARNINGS for /tmp/nobl6KW70c:␤Useless use of "x" in expression "x 3 x 4" in sink context (line 1)␤»
02:00 llfourn joined #perl6
02:00 ZoffixWin disturbingly_rea, that's not the right char
02:00 ZoffixWin .u multiplication
02:00 yoleaux U+00D7 MULTIPLICATION SIGN [Sm] (×)
02:00 disturbingly_rea m: say 1 x 2 x 3 x 4
02:00 yoleaux U+228D MULTISET MULTIPLICATION [Sm] (⊍)
02:00 camelia rakudo-moar 1bdb78: OUTPUT«111111111111111111111111␤»
02:00 yoleaux U+2715 MULTIPLICATION X [So] (✕)
02:00 disturbingly_rea ahh...
02:00 ZoffixWin m: say 1 × 2 × 3 × 4
02:00 camelia rakudo-moar 1bdb78: OUTPUT«24␤»
02:00 AlexDaniel what was that?
02:00 disturbingly_rea gotcha
02:00 AlexDaniel aaa
02:00 ZoffixWin AlexDaniel, where? :)
02:00 disturbingly_rea m: 4 × 6
02:00 camelia rakudo-moar 1bdb78: OUTPUT«WARNINGS for /tmp/CeCm6gpvyt:␤Useless use of "×" in expression "4 × 6" in sink context (line 1)␤»
02:00 AlexDaniel x hidden there :D
02:00 disturbingly_rea etc
02:01 disturbingly_rea m: say 5 × 7
02:01 camelia rakudo-moar 1bdb78: OUTPUT«35␤»
02:01 Su-Shee_ joined #perl6
02:01 ZoffixWin m: my $input = '٣'; say $input + 42;
02:01 camelia rakudo-moar 1bdb78: OUTPUT«45␤»
02:01 AlexDaniel m: say ½ × τ == π
02:01 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:01 ZoffixWin m: say ٦1٥٠3 + ٤६੬៩ - ৭۹੧
02:01 camelia rakudo-moar 1bdb78: OUTPUT«65381␤»
02:01 disturbingly_rea m: say π == ½*τ
02:01 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:02 ZoffixWin AlexDaniel, ah, right >_<
02:02 disturbingly_rea \o/
02:02 disturbingly_rea so cool
02:02 ZoffixWin Yeah, nifty :P
02:02 AlexDaniel disturbingly_rea: and surely you can also use ÷ and ∞ :)
02:02 ZoffixWin This works too:
02:02 ZoffixWin m: say 42²
02:02 camelia rakudo-moar 1bdb78: OUTPUT«1764␤»
02:02 AlexDaniel and superscripts, yeah
02:02 ZoffixWin m: say 42²²
02:02 camelia rakudo-moar 1bdb78: OUTPUT«514617308132852400700537649353457664␤»
02:02 disturbingly_rea m: say 1 / ∞
02:02 camelia rakudo-moar 1bdb78: OUTPUT«0␤»
02:02 disturbingly_rea bloody hell
02:02 ZoffixWin :)
02:02 BenGoldberg No special underflow?
02:03 * BenGoldberg would expect a Failure object there.
02:03 * ZoffixWin too
02:03 disturbingly_rea * is just super impressed
02:03 ZoffixWin But I think that was discussed before and it was decided returning a limit is more acceptable :)
02:04 ZoffixWin disturbingly_rea, :D spread the word! :D
02:04 disturbingly_rea say (2 × ∞) / (3 × ∞)
02:04 disturbingly_rea m: say (2 × ∞) / (3 × ∞)
02:04 camelia rakudo-moar 1bdb78: OUTPUT«NaN␤»
02:04 disturbingly_rea ah well, can'[t have everything
02:05 disturbingly_rea will nonetheless be spreading all the words
02:05 ZoffixWin \o/
02:05 AlexDaniel disturbingly_rea: it's true though, isn't it? ∞/∞ = NaN, what else did you expect?
02:05 disturbingly_rea 2/3
02:05 disturbingly_rea AlexDaniel after all, one expression
02:06 llfourn m: say Perl, so Cool with Uni,Code
02:06 camelia rakudo-moar 1bdb78: OUTPUT«(Perl)False␤»
02:06 disturbingly_rea lol
02:06 llfourn m: say Perl, not so Cool without Uni,Code
02:06 camelia rakudo-moar 1bdb78: ( no output )
02:06 AlexDaniel llfourn: this is amazing
02:06 ZoffixWin disturbingly_rea, that expectation assumes ∞ can be treated as a number :P
02:07 grondilu it would be wrong if (2 × ∞) / (3 × ∞) was returning 2/3
02:07 grondilu because Inf/Inf is not 1
02:07 disturbingly_rea yeah but limits tho
02:07 ZoffixWin ∞ is not a number, so I'd think returning a NaN makes perfect sense
02:07 grondilu since Inf is not Inf
02:07 ZoffixWin m: say ∞ === Inf
02:07 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:07 grondilu m: say Inf == Inf
02:07 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:07 disturbingly_rea you are correct,, because yeah
02:07 grondilu m: say Inf === Inf
02:07 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:07 grondilu ??
02:07 disturbingly_rea could come from anywhere
02:07 ZoffixWin wat?
02:08 grondilu I thought that was false
02:08 llfourn m: say Inf ~~ Real
02:08 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:08 * ZoffixWin doesn't see why it would be, but doesn't know much about the subject
02:08 disturbingly_rea ∞ ~~ Num
02:08 disturbingly_rea m: say ∞ ~~ Num
02:08 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:08 ZoffixWin m: say (.1, .2 ... *) > (1, 2 ... *)
02:08 camelia rakudo-moar 1bdb78: OUTPUT«Cannot .elems a lazy list␤  in block <unit> at /tmp/Qc0njdw7Ox line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/Qc0njdw7Ox line 1␤␤»
02:09 * ZoffixWin is disappointed that doesn't return a True :P
02:09 grondilu wasn't Inf !== Inf according to IEEE or something?
02:09 BenGoldberg You might be thinking of NaN.
02:09 grondilu oh, possible
02:10 BenGoldberg Is perl6's Inf supposed to be Aleph-0 or Aleph-1? ;)
02:10 grondilu seems wrong to me that Inf == Inf
02:10 disturbingly_rea m: say grep $_ %% 365, 1..∞
02:10 camelia rakudo-moar 1bdb78: OUTPUT«Use of uninitialized value of type Any in numeric context  in block <unit> at /tmp/K2ExdRd5jD line 1␤Cannot use Bool as Matcher with 'grep'.  Did you mean to use $_ inside a block?␤  in block <unit> at /tmp/K2ExdRd5jD line 1␤␤Actually thrown at:␤…»
02:10 geekosaur answer the question of whether the cardinality of the reals is aleph-1 and then maybe someone can answer that :p
02:10 disturbingly_rea m: say grep {$_ %% 365}, 1..∞
02:10 camelia rakudo-moar 1bdb78: OUTPUT«(...)␤»
02:10 ZoffixWin m: say ℵ₀ == ∞
02:10 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ltowus89Dv␤Bogus postfix␤at /tmp/ltowus89Dv:1␤------> 3say ℵ7⏏5₀ == ∞␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statem…»
02:10 ZoffixWin hm
02:11 ZoffixWin m: say ℵ == ∞
02:11 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/96BQh5NXGj␤Preceding context expects a term, but found infix == instead␤at /tmp/96BQh5NXGj:1␤------> 3say ℵ ==7⏏5 ∞␤»
02:11 llfourn m: say Inf.defined
02:11 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:11 * ZoffixWin could've swore there were alephs in the roast somewhere
02:11 bpmedley This is Rakudo version 2015.12-9-g1bdb784 built on MoarVM version 2015.12 <-- Woohoo
02:11 llfourn m: say Inf > Inf
02:11 camelia rakudo-moar 1bdb78: OUTPUT«False␤»
02:11 llfourn m: say Inf >= Inf
02:11 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:11 flussence there's ℵ₀ in there, but the test file also defines that
02:12 disturbingly_rea alephs is ambitious
02:12 geekosaur perl 6 is nothing if not ambitious :p
02:12 ZoffixWin Ah:
02:12 ZoffixWin It's def'd
02:12 jdv79 hello.  goodbye.
02:12 yoleaux 26 Dec 2015 20:36Z <lizmat> jdv79: not sure what ticket you mea
02:12 Hotkeys m: say ℵ₀ == ∞
02:12 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NanKPhsZyw␤Bogus postfix␤at /tmp/NanKPhsZyw:1␤------> 3say ℵ7⏏5₀ == ∞␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statem…»
02:13 disturbingly_rea m: say ℵ₀ > ℵ₁
02:13 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lFHKR5TiCL␤Bogus postfix␤at /tmp/lFHKR5TiCL:1␤------> 3say ℵ7⏏5₀ > ℵ₁␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        stat…»
02:13 mst nine: that should be doable, except in the case where you can't it re-runs it once and writes it into the current repo, rather than redoing the entire precomp phase
02:13 jdv79 .tell lizmat the one on specs about s22
02:13 yoleaux jdv79: I'll pass your message to lizmat.
02:13 Hotkeys m: say א₀ == ∞
02:13 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wM9fYJLdV6␤Bogus postfix␤at /tmp/wM9fYJLdV6:1␤------> 3say א7⏏5₀ == ∞␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        stateme…»
02:14 Hotkeys m: say א₀
02:14 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/eyxiIIxuTX␤Bogus postfix␤at /tmp/eyxiIIxuTX:1␤------> 3say א7⏏5₀␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statement modi…»
02:14 Hotkeys hm
02:14 Hotkeys I thought that one was there
02:14 Hotkeys the right to left one
02:14 * flussence pushed both approaches as separate branches
02:14 ZoffixWin m: sub postfix:<(¬‿¬)> ($) { say 'I see what you did there' };  '(¬‿¬)'(¬‿¬)(¬‿¬)(¬‿¬)
02:14 camelia rakudo-moar 1bdb78: OUTPUT«I see what you did there␤I see what you did there␤I see what you did there␤»
02:15 Hotkeys m: say א
02:15 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/EnMdFr9Dl4␤Undeclared routine:␤    א used at line 1␤␤»
02:16 secwang joined #perl6
02:16 lustlife joined #perl6
02:16 disturbingly_rea m: my  א = Inf; say א
02:16 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/JOkc1aoMBN␤Malformed my (did you mean to declare a sigilless \א or $א?)␤at /tmp/JOkc1aoMBN:1␤------> 3my  א7⏏5 = Inf; say א␤»
02:16 ZoffixWin m: sub term:<א> { ∞ }; say א == ∞
02:16 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:17 disturbingly_rea m: my  \א= Inf; א.say
02:17 camelia rakudo-moar 1bdb78: OUTPUT«Inf␤»
02:18 Hotkeys m: sub term:<ℵ₀> { ∞ }; say ℵ₀ == ∞
02:18 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:19 disturbingly_rea m: my  \ℵ₀= Inf; my \ℵ₁ = 2**ℵ₀; say (ℵ₀ < ℵ₁)
02:19 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/77IYWqhnKm␤Term definition requires an initializer␤at /tmp/77IYWqhnKm:1␤------> 3my  \ℵ7⏏5₀= Inf; my \ℵ₁ = 2**ℵ₀; say (ℵ₀ < ℵ₁)␤»
02:19 ZoffixWin m: sub term:<(✿◠‿◠)> { ∞ }; say (✿◠‿◠) == ∞
02:19 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:19 AlexDaniel .u א
02:19 yoleaux U+05D0 HEBREW LETTER ALEF [Lo] (א)
02:19 Hotkeys disturbingly_rea: bad
02:19 ZoffixWin disturbingly_rea, I don't think you can use subscript numbers like that
02:20 ZoffixWin letters work though IIRC
02:20 autarch is there any way to figure out why a piece of p6 code is using a lot of memory?
02:20 ZoffixWin Does --profile reports mem usage?
02:21 disturbingly_rea m: my \a1 = Inf; my \a2 = 2**a1; say (a1 < a2)
02:21 * autarch looks
02:21 camelia rakudo-moar 1bdb78: OUTPUT«False␤»
02:21 Sm4rkey joined #perl6
02:22 disturbingly_rea so,,, no Cantorian heirarchy, then?
02:22 ZoffixWin m: m: my \ℵₐ= Inf; my \ℵₓ = 2**ℵₐ; say (ℵₐ < ℵₓ)
02:22 camelia rakudo-moar 1bdb78: OUTPUT«False␤»
02:22 disturbingly_rea dunno what I was expecting here :P
02:22 Hotkeys well for one
02:22 Hotkeys isn't that dependent on whether the CH is true?
02:22 Hotkeys :p
02:22 disturbingly_rea nah, 2**n > n
02:22 disturbingly_rea every time
02:22 Hotkeys okay but
02:22 Hotkeys Inf isn't a regular number
02:23 disturbingly_rea yeh, but it's just, yknow, true. x**n > n if x > 1
02:23 Hotkeys let n = 0
02:23 ZoffixWin m: say ∞ > 1
02:23 camelia rakudo-moar 1bdb78: OUTPUT«True␤»
02:23 Hotkeys wait
02:23 Hotkeys still true
02:23 Hotkeys I'm dumb
02:24 AlexDaniel disturbingly_rea: infinity is a concept
02:24 Hotkeys ++
02:24 disturbingly_rea AlexDaniel: Infinities are a lot of concepts
02:24 disturbingly_rea transfinite induction, my man
02:25 disturbingly_rea anyway, IDK what I'm complaining about. Its handling of Infs is still better than all dem other langs
02:26 FROGGS__ joined #perl6
02:26 autarch my new version of Pod::To::HTML seems to eat a lot of memory for some reaosn
02:27 autarch and burn a lot of CPU
02:27 disturbingly_rea Hotkeys: good point, then... let n>1 too ;)
02:27 pierre-vigier joined #perl6
02:28 herby_ I'm reading a perl6 intro tutorial and the section is talking about classes. in the example, a method called ranking() is defined: %!player-points.pairs.sort({ -.value });
02:28 herby_ how does .pairs.sort({ -.value }) work?
02:29 disturbingly_rea Hoykeys: also typod anyway, coz should be x**n > x if x > 1 && n > 1
02:29 Hotkeys I assume it takes each key-value pair and then sorts by value
02:29 herby_ the   -.value throws me off
02:29 herby_ haven't seen  "-." used yet
02:29 Hotkeys I haven't either
02:29 llfourn autarch: I made relatively small changes to it a week ago -- I didn't notice a difference compiling the docs
02:29 Hotkeys but seems like that's what it does
02:29 autarch I think that's -1 * .value, maybe
02:29 Hotkeys oh true
02:29 Hotkeys maybe
02:29 herby_ yeah, it works like that in the example, just didnt really understand how it worked
02:29 disturbingly_rea I give up I can't reember. Too much christmas
02:29 autarch llfourn: I've totally rewritten Pod::To::HTML
02:30 Hotkeys herby_: link?
02:30 autarch
02:30 llfourn autarch: ah ok
02:31 disturbingly_rea Merry seasonally-specific salutations to y'all. May your calendars reflect that this was a time of year for giving and, yea, also for receiving
02:31 disturbingly_rea farewell
02:31 flussence gee thanks github, timed out when I tried to submit a PR and ate my cover letter too :(
02:31 herby_ Hotkeys:
02:31 flussence oh wait, browser saved it. phew
02:33 autarch heh, and now my browser is not loving the 84mb profile file
02:33 AlexDaniel yeah, although it took like 5 minutes to write it now I'm wating for the whole thing to set up
02:33 llfourn ;_; the profiler
02:33 mrPoopyButthole_ joined #perl6
02:34 cognominal joined #perl6
02:34 llfourn autarch: on the topic of pod have you seen
02:34 flussence if anyone's got more time than sense, a static webpage generator for profile json would be a nice project :)
02:34 llfourn (I only found out about ShimmerFairy++'s work yesterday)
02:34 ZoffixWin herby_, it's -($_.value)
02:35 ZoffixWin m: say ^10 {-.value}
02:35 camelia rakudo-moar 1bdb78: OUTPUT«(0 -1 -2 -3 -4 -5 -6 -7 -8 -9)␤»
02:36 Hotkeys I'm not a fan of condensing that to -.value
02:36 Hotkeys might just be me
02:36 mrPoopyButthole_ should I have to nuke moar every time I want to bump it in rakudobrew, or is there a smarter way?
02:36 mrPoopyButthole_ rakudobrew build moar doesn't bump
02:36 ZoffixWin But it's not a special case tho. .foo is a method call on $_... and in this case, that value has a - for it
02:36 herby_ Zoffix, thanks!
02:36 llfourn mrPoopyButthole_: it does for me :)
02:37 Hotkeys mrPoopyButthole_: llfourn; me too
02:37 mrPoopyButthole_ :(
02:37 flussence probably because github ain't working today
02:37 mrPoopyButthole_ welp gremlins then
02:37 mrPoopyButthole_ doesn't for me. I'll try in a VM
02:37 ZoffixWin mrPoopyButthole_, you probably should nuke starting today, because there were a lot of precomp stuff changes (depending on how old your rakudobrew is). Going into the future, I don't think you need to nuke anything
02:37 autarch chrome keeps timing out on the profile - even for a very small one
02:37 ZoffixWin Use lynx! :D
02:37 ZoffixWin jk
02:37 ZoffixWin Yeah, the generated profile is kinda meh
02:38 ZoffixWin I'd think a PDF or something would be more usable
02:38 mrPoopyButthole_ thanks y'all for speedy replies
02:38 autarch firefix seems slightly better
02:38 autarch yeah, this doesn't seem very usable as is - I like what nytprof does for p5 - it generates lots of HTML pages instead of relying on the browser to parse many megs of data
02:39 ZoffixWin yeah
02:39 mst nytprof killing my browser is pretty common actually
02:41 autarch huh, never had that happen
02:42 flussence eh, I've used it on some pretty crusty catalyst code and haven't had half the problems perl6 --profile gives me...
02:45 ellybelly joined #perl6
02:45 mue joined #perl6
02:45 mempko joined #perl6
02:45 bucketmelia joined #perl6
02:47 ilbot3 joined #perl6
02:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: or | UTF-8 is our friend!
02:47 AlexDaniel right
02:47 AlexDaniel I see
02:47 AlexDaniel great then
02:49 mst ./w 260
02:50 llfourn autarch: I think it will be the best way to fix all those pod bugs as well :)
02:50 ZoffixWin m: await IO::Socket::Async.connect( '', 6667 ).then({given .result {
02:50 ZoffixWin .say("NICK NotCamelia\nUSER NotCamelia localhost :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n");});
02:50 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GP46iuKMfN␤Missing block␤at /tmp/GP46iuKMfN:1␤------>', 6667 ).then({given .result {7⏏5<EOL>␤»
02:50 ZoffixWin crap
02:50 autarch llfourn: yes, seems like it
02:50 ZoffixWin m: await IO::Socket::Async.connect( '', 6667 ).then({given .result {
02:50 ZoffixWin .say("NICK NotCamelia\nUSER NotCamelia localhost :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n");});
02:50 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/CFc26TpahV␤Missing block␤at /tmp/CFc26TpahV:1␤------>', 6667 ).then({given .result {7⏏5<EOL>␤»
02:50 ZoffixWin wtf :/ my client is glitched
02:50 atweiden joined #perl6
02:51 ZoffixWin joined #perl6
02:51 ZoffixWin joined #perl6
02:52 ZoffixWin m: await IO::Socket::Async.connect('', 6667 ).then({given .result {.print("NICK NotCamelia\nUSER NotCamelia localhost :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n");}})
02:52 camelia rakudo-moar 1bdb78: ( no output )
02:52 ZoffixWin :(
02:53 ZoffixWin m: await IO::Socket::Async.connect('', 6667 ).then({given .result {.print("NICK NotCamelia\nUSER NotCamelia localhost :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n"); react {whenever $!sock.Supply {}}}})
02:53 camelia rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MEnWOZUfuC␤Variable $!sock used where no 'self' is available␤at /tmp/MEnWOZUfuC:1␤------> 3, AlexDaniel\n"); react {whenever $!sock7⏏5.Supply {}}}})␤»
02:53 jdv79 ZoffixWin: wut r u doin bruh?
02:53 ZoffixWin m: await IO::Socket::Async.connect('', 6667 ).then({given .result {.print("NICK NotCamelia\nUSER NotCamelia localhost :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n"); react {whenever .Supply {}}}})
02:53 NotCamelia joined #perl6
02:53 NotCamelia Good job, AlexDaniel
02:53 ZoffixWin That ^ :)
02:53 ZoffixWin \o/
02:53 jdv79 ha
02:53 camelia rakudo-moar 1bdb78: OUTPUT«(timeout)»
02:55 AlexDaniel dammit. The worst thing is when you want to contribute something but you can't understand if the indentation is 2 spaces, 4 spaces or some other weirdness with tabs
02:55 AlexDaniel which is exactly what happens in
02:56 AlexDaniel that should be 4 spaces according to other lines…
02:56 molaf_ joined #perl6
02:57 * flussence apologises to anyone on the rakudo repo who receives an email per github pull request
02:57 woodruffw joined #perl6
02:57 billN1VUX joined #perl6
02:57 AlexDaniel o/
03:00 Su-Shee joined #perl6
03:02 dlynes Is it normal to see the odd error and/or warning about missing or non-existent paths when building moar?
03:03 flussence complaining about not finding moar at the start of the process is normal, afaik
03:03 dlynes flussence: and nqp?
03:04 flussence as long as it doesn't die with an error, it's probably not important :)
03:04 flussence probably rough edges in handling with/without --gen-nqp and --gen-moar
03:04 dlynes flussence: ok, thanks
03:09 atweiden flussence: how would you use RAKUDO_PRECOMP_PREFIX to install regular modules?
03:09 atweiden (thx again for
03:10 billN1VUX joined #perl6
03:10 flussence mktemp -d, call CUR::*.install like does, the modules should end up there. But I dunno, it might not be needed in practice with the first patch
03:11 atweiden e.g. tried setting RAKUDO_PRECOMP_PREFIX="$pkgdir/usr/share/perl6/precomp" to install JSON::Tiny
03:11 atweiden but this makes rakudo look for Test and everything in that dir instead of in system /usr/share/perl6
03:12 flussence yeah, it's kind of a nuclear footgun now that I'm a bit clearer on what it's doing... hm
03:14 Zero_Dogg joined #perl6
03:14 Zero_Dogg joined #perl6
03:14 atweiden rakudo make DESTDIR install, and panda for modules seems to work well enough for now
03:15 dalek evalbot: b6ecb65 | (Aleks-Daniel Jakimenko-Aleksejev)++ | lib/
03:15 dalek evalbot: Allow Bitbucket snippets
03:15 dalek evalbot:
03:15 dalek evalbot: The regex is not very restrictive, but it's just like
03:15 dalek evalbot: other regexes in the code.
03:15 dalek evalbot: review:
03:15 dalek evalbot: 7fbc72c | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (3 files):
03:15 dalek evalbot: Fix indentation
03:15 dalek evalbot:
03:15 dalek evalbot: Just a quick attempt to get everything to use one indentation style.
03:15 dalek evalbot: It seems like most of the code is using 4 spaces without tabs, so
03:15 dalek evalbot: that's what I did.
03:15 dalek evalbot: review:
03:16 noganex_ joined #perl6
03:16 camelia joined #perl6
03:16 AlexDaniel m:
03:17 AlexDaniel hmmm
03:17 AlexDaniel m: say 'hello'
03:18 camelia rakudo-moar 1bdb78: OUTPUT«[vicuna llama]␤[vicuna llama]␤»
03:18 camelia rakudo-moar 1bdb78: OUTPUT«hello␤»
03:18 AlexDaniel oh
03:18 AlexDaniel m:
03:18 camelia rakudo-moar 1bdb78: OUTPUT«[vicuna llama]␤[vicuna llama]␤»
03:18 AlexDaniel okay
03:18 AlexDaniel camelia: good butterfly
03:18 xpen joined #perl6
03:19 AlexDaniel It seems like there are other possible link patterns, but I think that this one is probably enough for now
03:22 BenGoldberg Isn't that supposed to be spelled vicuña?
03:23 AlexDaniel I don't know. In fact, I don't see any way to fork it on bitbucket :D
03:23 BenGoldberg And this is why people use gists ;)
03:27 * flussence is currently watching a package-manager-managed `make test` *actually working*... nearly there...
03:28 AlexDaniel oh well, I think that we have to be a bit more inclusive…
03:30 flussence I thought about swapping some of my ecosystem modules to gitlab URLs just to be unreasonable, but I'll put it off until things quieten down :)
03:30 AlexDaniel flussence: that's what I am doing right now – gitlab snippets
03:41 flussence ==> Installing Linenoise
03:41 flussence ==> Successfully installed Linenoise
03:41 flussence ~ $
03:42 flussence ...system-installed rakudo, user-installed panda. everything works.
03:42 flussence only took 11 hours :D
03:43 dalek evalbot: 1d97cd8 | (Aleks-Daniel Jakimenko-Aleksejev)++ | lib/
03:43 dalek evalbot: Allow GitLab snippets
03:43 dalek evalbot:
03:43 dalek evalbot: Let's be more inclusive!
03:43 dalek evalbot: review:
03:43 camelia joined #perl6
03:43 AlexDaniel m: say ‘wake up!’
03:44 camelia rakudo-moar 1bdb78: OUTPUT«wake up!␤»
03:44 vendethiel joined #perl6
03:45 joy joined #perl6
03:45 AlexDaniel m:
03:45 camelia rakudo-moar 1bdb78: OUTPUT«hello world␤»
03:45 AlexDaniel m:
03:45 camelia rakudo-moar 1bdb78: OUTPUT«snippet not found»
03:46 blub joined #perl6
03:55 Milijus joined #perl6
04:07 * flussence clears throat
04:07 flussence Rakudo 2015.12 is now available on Gentoo Linux:
04:09 AlexDaniel great!
04:10 ZoffixWin \o/
04:13 grondilu joined #perl6
04:17 * flussence pings bonsaikitten: one fully functional and mostly polished rakudo-2015.12.ebuild above if you're interested. Has a src_test and everything. :)
04:17 flussence 'night, all
04:32 araujo joined #perl6
04:33 billN1VUX joined #perl6
04:35 araujo joined #perl6
04:48 xinming joined #perl6
04:49 upscent joined #perl6
04:53 talexb joined #perl6
04:54 talexb Just trying .. git clone ~/.rakudobrew .. and getting 'RPC failed' and later, 'gnutls_handshake() failed: A TLS packet with unexpected length was received.' ..
04:54 llfourn talexb: I think github is goofing around atm
04:55 talexb That's from the page at .. maybe I'll try again tomorrow.
04:55 talexb llfourn, Ah .. OK, thanks. :)
04:55 kaare_ joined #perl6
04:55 mst talexb: that's a wtf to me
04:56 mst talexb: gnutls is interesting, means not an openssl lib
04:56 llfourn It actually works for me :\
04:56 mst talexb: run it again, if it fails a third time, it's probably not #perl6's bug but I'd love to see an strace -f just for personal curiosity
04:56 talexb mst, Sure, trying now ..
04:57 mst talexb: note: this is probably github being weird, I'm just curious anyway
04:57 talexb Well, that was anti-climactic .. it finished without errors.
04:57 mst tada
04:57 mst "github being weird" then :D
04:58 talexb "Crap, mst's watching .. no more foolin' around!!"
04:59 llfourn there are a bunch of ppl complaining about gh today on #perl6
04:59 rubes joined #perl6
05:00 AlexDaniel llfourn: gh?
05:00 llfourn AlexDaniel: the hub of git!
05:00 AlexDaniel ah, github
05:01 * talexb loves maxing out his Interwebs connection by pulling down all of github ..
05:01 LambdaCat joined #perl6
05:01 AlexDaniel nothing wrong here though:
05:02 mst AlexDaniel: restartable SSL errors aren't really a status issue
05:14 AndyDee joined #perl6
05:15 AlexDaniel I wonder how relevant this is
05:17 secwang joined #perl6
05:22 haircode joined #perl6
05:22 [Coke] AlexDaniel: it's based on an older version.
05:25 pseydtonne joined #perl6
05:32 rubes joined #perl6
05:34 integral joined #perl6
05:34 integral joined #perl6
05:34 grondilu m: say combinations(10000, 10).elems
05:34 camelia rakudo-moar 1bdb78: OUTPUT«2743355077591282538231819720749000␤»
05:34 grondilu m: say +combinations(10000, 10)
05:34 camelia rakudo-moar 1bdb78: OUTPUT«(timeout)»
05:35 grondilu slightly LTA that &prefix:<+> does not fallback to .count-only here
05:35 nige1 joined #perl6
05:38 labster joined #perl6
05:43 mempko joined #perl6
05:44 rubes joined #perl6
05:45 cognominal joined #perl6
05:46 pseydtonne Hello?
05:46 gfldex m: say "ohai pseydtonne!";
05:46 camelia rakudo-moar 1bdb78: OUTPUT«ohai pseydtonne!␤»
05:47 pseydtonne Ooh, that's fun!
05:47 pseydtonne Maybe I should spend some time rewriting my test Perl5 script in Perl6.
05:49 pseydtonne Has anyone compiled the Xmas Perl6 for a Win64 box yet?
05:50 gfldex not yet, that will happen next year
05:51 pseydtonne Grrrr. Oh well. Guess I'll have it on my Linux VM guests and my Raspberries before I see it on my Win7 box.
05:51 pseydtonne I've been using the Sept Raduko build because it has an MSI.
05:51 pseydtonne m: my @animals = ['camel', 'vicuña', 'llama']; say "The zoo contains " ~ @animals.elems ~ " animals.";
05:51 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.␤»
05:51 skids joined #perl6
05:52 gfldex m: my @animals = ['camel', 'vicuña', 'llama']; say "The zoo contains " ~ +@animals ~ " animals.";
05:52 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.␤»
05:52 pseydtonne Why didn't that return a 2?
05:53 labster m: my @animals = ['camel', 'vicuña', 'llama']; say "The zoo contains { +@animals } animals.";
05:53 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.␤»
05:53 gfldex +@animals is @animals.Num, what in turn is @animals.elems
05:56 a3r0 m: my @animals = ['camel', 'vicuña', 'llama']; say @animals.end;
05:56 camelia rakudo-moar 1bdb78: OUTPUT«2␤»
05:56 pseydtonne Neat! Thanks.
05:57 pseydtonne I haven't had a lot of time to play yet. I was busy learning a certain other scripting language for work when I saw a link to on Reddit.
05:58 pseydtonne I went to a mtg about Perl6 back in... I think it was 2001.
05:59 pseydtonne Poor mrPoopyButthole
06:00 pseydtonne I'm a completely different person than I was when this began, but that's for the better.
06:02 MilkmanDan pseydtonne: Do you have Cygwin on your box?
06:03 pseydtonne Not this one, but I have cmder.
06:03 MilkmanDan Ah. Not heard of that before.
06:03 pseydtonne I got it for the tabbed cmd shells.
06:03 pseydtonne It has a lot more.
06:04 pseydtonne
06:04 secwang joined #perl6
06:04 pseydtonne Is that numberwang?
06:07 xpen joined #perl6
06:08 grondilu m: my @animals = <camel vicuña llama>; say "The zoo contains @animals.elems animals"
06:08 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains @animals.elems animals␤»
06:08 * grondilu thought that would interpolate
06:09 grondilu though with hindsight I see why it doesn't
06:12 AlexDaniel m: my @animals = <camel vicuña llama>; say "The zoo contains {@animals.elems} animals"
06:12 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals␤»
06:13 AlexDaniel hmm
06:13 AlexDaniel m: my $animals = <camel vicuña llama>; say "The zoo contains {$animals.elems} animals"
06:13 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals␤»
06:13 AlexDaniel hehe
06:25 b2gills m: my @animals = <camel vicuña llama>; say "The zoo contains @animals.elems() animals"
06:25 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals␤»
06:28 pierre-vigier joined #perl6
06:30 secwang joined #perl6
06:31 gfldex m: my @animals := ['camel', 'vicuña', 'llama'] but role { method Str () {+self} }; say "The zoo contains " ~ @animals ~ " animals.";
06:31 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.␤»
06:32 gfldex m: my @animals = ['camel', 'vicuña', 'llama'] but role { method Str () {+self} }; say "The zoo contains " ~ @animals ~ " animals.";
06:32 camelia rakudo-moar 1bdb78: OUTPUT«The zoo contains camel vicuña llama animals.␤»
06:32 gfldex should anon roles mixins into @-sigiled containers require binding?
06:40 CIAvash joined #perl6
06:47 * TimToady safely home
06:50 gfldex TimToady: if you want to you can give me some of your winter. We had +15°C today.
06:52 TimToady here it's about 3℃
06:55 xfix joined #perl6
06:55 AlexDaniel eh, it will be below 0°C for the next few days. Exactly 0°C right now
06:56 AlexDaniel .oO( “Be careful when cycling!” )
06:57 pseydtonne ice freezes on the bridges and overpasses before it does on land roads.
06:57 secwang joined #perl6
07:04 haircode left #perl6
07:18 rcy joined #perl6
07:18 hiinn joined #perl6
07:19 haircode joined #perl6
07:20 uiil joined #perl6
07:22 yuipo joined #perl6
07:22 LambdaCat hi, i am from china , hangzhou !
07:23 Zero_Dogg joined #perl6
07:27 ZoffixWin Hello \o
07:27 ZoffixWin Ni how ma
07:28 LambdaCat_ joined #perl6
07:28 ZoffixWin m: sub 您好 { say "您好" }; 您好
07:28 camelia rakudo-moar 1bdb78: OUTPUT«您好␤»
07:29 TimToady I'm fine; I finally broke out the port I was saving from the Braga conference 10 years ago, which makes it 21-year-old port...old enough to drink.  :)
07:29 xfix_ joined #perl6
07:29 ZoffixWin :P
07:31 LambdaCat_ left #perl6
07:34 AlexDaniel m: { say ‘one’; CATCH { “exception: $_” }; die ‘hello world’ }
07:34 camelia rakudo-moar 1bdb78: OUTPUT«one␤hello world␤  in block <unit> at /tmp/dUikkaxwgr line 1␤␤»
07:34 AlexDaniel m: { say ‘one’; die ‘hello world’; CATCH { “exception: $_” }; }
07:34 camelia rakudo-moar 1bdb78: OUTPUT«one␤hello world␤  in block <unit> at /tmp/qLrd6bdx4_ line 1␤␤»
07:34 integral joined #perl6
07:35 nsh_ joined #perl6
07:35 AlexDaniel m: { say ‘one’; die ‘hello world’; CATCH { say “exception: $_” }; }
07:35 camelia rakudo-moar 1bdb78: OUTPUT«one␤exception: hello world␤hello world␤  in block <unit> at /tmp/ClNyYWQAya line 1␤␤»
07:35 AlexDaniel m: { say ‘one’; CATCH { say “exception: $_” }; die ‘hello world’ }
07:35 camelia rakudo-moar 1bdb78: OUTPUT«one␤exception: hello world␤hello world␤  in block <unit> at /tmp/w2R32i1SGt line 1␤␤»
07:37 pierre-vigier joined #perl6
07:40 nsh_ left #perl6
07:48 xinming_ joined #perl6
07:53 xinming joined #perl6
07:54 integral joined #perl6
07:54 integral joined #perl6
07:56 rubes left #perl6
07:59 pierre-vigier joined #perl6
07:59 xpen joined #perl6
08:05 xpen joined #perl6
08:07 domidumont joined #perl6
08:08 xpen_ joined #perl6
08:10 Tonik joined #perl6
08:11 xinming_ joined #perl6
08:11 RabidGravy joined #perl6
08:11 lnx joined #perl6
08:11 smash joined #perl6
08:12 jnthn joined #perl6
08:12 Jonis joined #perl6
08:12 Rotwang joined #perl6
08:12 stmuk joined #perl6
08:14 domidumont joined #perl6
08:14 nige1 joined #perl6
08:16 RabidGravy morning
08:16 darutoko joined #perl6
08:19 ZoffixWin is it already?\
08:19 xinming joined #perl6
08:21 RabidGravy well it is here, much to my surprise
08:24 ultrmaozg joined #perl6
08:25 pierre-vigier joined #perl6
08:25 AlexDaniel ZoffixWin: well, timezones are from -12 to +14. Which basically means that for some people who have 20:00 locally there are other people who see 08:00 morning of this day and other people who have 08:00 of the next day all at the same time…
08:26 AlexDaniel what is this country that has +14 by the way
08:27 AlexDaniel “Kiribati”
08:28 RabidGravy yeah, I guess there aren't that many people there into Perl 6
08:28 AlexDaniel again, what was the reason to have timezones? Besides pretending that the clock is somehow associated with the sun.
08:30 _nadim joined #perl6
08:30 ZoffixWin we should have just one time.... people for whom 12 noon is the middle of the night should just deal with it :P
08:31 RabidGravy it was so that they could have timetables for things that aren't complicated by "sub-dial time"
08:31 RabidGravy sun dial
08:32 ZoffixWin Sun dial? What is it, the middle ages?
08:32 RabidGravy definitely in the UK it was the railway companies that led the call for "all one timezone"
08:33 RabidGravy ZoffixWin, no but it was used as an approximation for setting clocks
08:33 RabidGravy (in fact there were  reasonably accurate clocks in the middle ages)
08:34 CoconutCrab joined #perl6
08:35 bonsaikitten flussence: sounds good. Once I'm back to a proper internet connection I'll take care of it
08:35 * bonsaikitten does some obscene gestures at O2
08:35 AlexDaniel and while we are at it, perhaps we should also get rid of sexagesimal system and switch to decimal time…
08:36 RabidGravy didn't Napoleon try that?
08:36 RabidGravy which didn't go so well in the long term
08:37 AlexDaniel was it Napoleon?
08:40 AlexDaniel oh, and while we are at it… perhaps we should also fix the calendar…
08:43 thomax netanel rubin will held another perl jam speak tomorrow at the 32c3. i guess he will not mention p6 but will rant against perl in general and "detail"
08:46 RabidGravy oh well
08:47 RabidGravy I think I could rant about every language I have used in the last thrirty years
08:48 thomax here is his talk from last year:
08:48 RabidGravy you can't fool me like that ;-)
08:49 karl_ joined #perl6
08:49 thomax :-)
08:50 matematikaadit joined #perl6
09:07 El_Che thomax: not that guy again
09:08 smash joined #perl6
09:08 Jonis joined #perl6
09:08 jnthn joined #perl6
09:08 stmuk joined #perl6
09:09 Rotwang joined #perl6
09:10 integral joined #perl6
09:10 integral joined #perl6
09:10 lnx joined #perl6
09:11 thomax yes, he again. tomorrow 20:30 in a live stream at 32c3
09:13 dotness joined #perl6
09:13 raiph joined #perl6
09:18 rindolf joined #perl6
09:18 pierre-vigier joined #perl6
09:19 masak good antenoon, #perl6
09:19 yoleaux 26 Dec 2015 18:31Z <andreoss> masak: I've made some PRs for 007. You might want to consider them.
09:19 masak andreoss++
09:25 rurban joined #perl6
09:30 deniska joined #perl6
09:32 AlexDaniel .tell tadzik well, if you are not going to fix the issue with POST params then consider giving me push access so that I can do it. Same nickname on github. Basically I will just merge the pull request and apply my 1-character patch, that should make the tests green as well (if not, then I'll try to look into it, but anyway it will fix the issue with POST params…)
09:32 yoleaux AlexDaniel: I'll pass your message to tadzik.
09:33 lizmat joined #perl6
09:34 dalek rakudo/nom: c6d759c | (Anthony Parsons)++ | docs/running.pod:
09:34 dalek rakudo/nom: Rewrite and complete the manpage's env var list
09:34 dalek rakudo/nom:
09:34 dalek rakudo/nom: This includes everything I could find with an `ack 'ENV<' src/` command.
09:34 dalek rakudo/nom: Descriptions have been expanded on, expected datatypes are shown, and items are
09:34 dalek rakudo/nom: now broken up into categories.
09:34 dalek rakudo/nom: review:
09:34 dalek rakudo/nom: 600f58b | lizmat++ | docs/running.pod:
09:34 dalek rakudo/nom: Merge pull request #653 from flussence/doc-env-update
09:34 dalek rakudo/nom:
09:34 dalek rakudo/nom: Rewrite and complete the manpage's env var list
09:34 dalek rakudo/nom: review:
09:39 thomax is there a way to assign the stdout of a program to a var like $bla=`ps`; or do i need to open a pipe?
09:39 masak thomax: qx[ps]
09:40 AlexDaniel ehhhh, not really unless you really need shell
09:40 AlexDaniel thomax: my $output = run(‘cmd’, ‘arg1’, ‘arg2’, :out).out.slurp-rest
09:40 masak oh, this discussion again...
09:41 AlexDaniel masak: yeah, too bad it was not improved. Whatever
09:42 masak yeah, the people who favor pragmatic solutions and getting things done with actual code won out. bummer.
09:42 AlexDaniel thomax: you can still use shell though, if you understand the consequences
09:43 thomax i thought one of the paradigms was, perl X is a glue language :-(
09:43 dalek rakudo/nom: fb00ed3 | (Anthony Parsons)++ | tools/build/ (3 files):
09:43 dalek rakudo/nom: Fix `make install` when nqp is distro-installed
09:43 dalek rakudo/nom:
09:43 dalek rakudo/nom: During the installation process, tools/build/ is called to
09:43 dalek rakudo/nom: precompile the bundled non-CORE.setting libraries such as The way this
09:43 masak thomax: it *is*. go ahead and use qx[ps]
09:43 dalek joined #perl6
09:43 thomax masak: let me try
09:44 dalek rakudo/nom: 4fe18ce | (Anthony Parsons)++ | / (2 files):
09:44 dalek rakudo/nom: Add RAKUDO_PRECOMP_PREFIX env var
09:44 dalek rakudo/nom:
09:44 dalek rakudo/nom: As suggested by nine++, with some name tweaking
09:44 dalek rakudo/nom: review:
09:44 dalek rakudo/nom: f71f962 | lizmat++ | / (2 files):
09:44 dalek rakudo/nom: Merge pull request #655 from flussence/install-fix-v2
09:44 dalek rakudo/nom:
09:44 dalek rakudo/nom: Add an env var to override precompilation paths wholesale
09:44 dalek rakudo/nom: review:
09:46 thomax masak: right, thats nice! but the backquote thing was a bit more intuitive. like most of p6 seems to be more indirect. why use square brackets with qx (qx may mean quote x (x = shell)??)
09:47 AlexDaniel thomax: you can use any brackets
09:48 AlexDaniel thomax: try 〈〉 :)
09:48 thomax well, AlexDaniel, i can even use qx`ps` as i tried now.
09:48 thomax thats easier for me.
09:49 AlexDaniel thomax: qx existed in Perl 5 too
09:49 thomax never needed it.
09:52 thomax ty
09:53 Begi joined #perl6
09:55 pmurias joined #perl6
09:56 RabidGravy really, really, really don't know why this gdbm binding is segfaulting, I can see *where* (in the hash function) but just don't know why it is getting in the state it is
09:57 pierre-vigier joined #perl6
09:58 brrt joined #perl6
10:01 masak thomax: the backquotes are a bit too valuable to mean just qx in Perl 6. they've been stolen away to serve any user-defined quoting purpose instead.
10:02 masak thomax: also, I don't know about "intuitive". as a counterargument to that, in Python, the backticks mean repr()
10:02 thomax masak: but they work well with qx
10:04 masak yes, because *any* delimiters work well with qx :)
10:04 masak anyway, if you feel they look nice with qx, go ahead and use them
10:05 thomax yepp, best use for qx is backticks :-)
10:05 masak might be good to know though that qx`...` doesn't give you variable interpolation (like `` does in Perl 5)
10:05 masak for that, you'd need qqx`...`
10:05 lizmat computer: messages
10:05 yoleaux 02:13Z <jdv79> lizmat: the one on specs about s22
10:05 lizmat .tell jdv79 nothing happened in that area afaik
10:05 yoleaux lizmat: I'll pass your message to jdv79.
10:06 AlexDaniel thomax: yeah, but in that case you might wonder how could you pass the data so that it does not blow up
10:09 AlexDaniel right now there is no way to do that with qqx, by the way. But you can come up with strict rules for your data (e.g. only numbers allowed). Or think about better options…
10:13 [Tux] csv-ip5xs        50000    19.112    18.993
10:13 [Tux] csv-ip5xsio      50000    18.235    18.117
10:13 [Tux] csv-ip5pp        50000    21.305    21.187
10:13 [Tux] test             50000    25.142    25.024
10:13 [Tux] test-t           50000    14.289    14.171
10:13 [Tux] csv-parser       50000    51.503    51.385
10:14 lizmat Don't think anybody posted this here yet:
10:14 [Tux] with the three Inline::Perl5 times this time: note that pure-perl6 is faster than Text::CSV_XS with Inline::Perl5
10:15 RabidGravy I'm not entirely surprised, but good job :)
10:15 spider-mario joined #perl6
10:17 timotimo the ip5 times are going to change quite a bit once the guts behind NativeCall get rewritten :)
10:17 timotimo also, hi #perl6
10:17 [Tux] Damian++
10:18 [Tux] I wholeheartedly agree
10:19 DrForr joined #perl6
10:21 dalek rakudo/nom: 98966bf | (Stefan Seifert)++ | / (2 files):
10:21 dalek rakudo/nom: Fix confusion about what $prefix does
10:21 dalek rakudo/nom:
10:21 dalek rakudo/nom: Renamed RAKUDO_PRECOMP_PREFIX to the originally suggested RAKUDO_PREFIX,
10:21 dalek rakudo/nom: because it does _not_ affect only precompilation, but more importantly
10:21 dalek rakudo/nom: module loading itself.
10:21 dalek rakudo/nom: review:
10:21 pierre-vigier joined #perl6
10:22 nine .tell flussence
10:22 yoleaux nine: I'll pass your message to flussence.
10:22 vendethiel joined #perl6
10:23 Rinnve joined #perl6
10:23 brrt hi #perl6
10:23 brrt oh, cool
10:23 masak hi, brrt
10:23 timotimo oh hey brrt
10:23 * timotimo BBIAB
10:24 brrt yes, we're going to JIT the JIT out of nativecall... one of them days
10:24 brrt hi masak, timotiom
10:24 brrt timotimo
10:24 nine masak: we now have to use MONKEY-SEE-NO-EVAL just to use EVAL, but still propagate the much more dangerous because easier to get wrong qx[]. I'm firmly with AlexDaniel on that one.
10:24 dalek rakudo/nom: 7e106c5 | lizmat++ | src/core/Date (2 files):
10:24 dalek rakudo/nom: Make sure we only allow Int amounts (for now)
10:24 dalek rakudo/nom: review:
10:24 adhoc joined #perl6
10:25 AlexDaniel nine: exactly
10:25 AlexDaniel m: EVAL 'test'
10:25 camelia rakudo-moar f71f96: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0␤Undeclared routine:␤    test used at line 1␤␤»
10:27 AlexDaniel hmmm wanted to look at that awesome error message
10:27 AlexDaniel m: EVAL(5)
10:27 camelia rakudo-moar f71f96: OUTPUT«5===SORRY!5=== Error while compiling /tmp/SrzcvadaRi␤EVAL is a very dangerous function!!! (use MONKEY-SEE-NO-EVAL to override,␤but only if you're VERY sure your data contains no injection attacks)␤at /tmp/SrzcvadaRi:1␤------> 3EVAL(5)7⏏5<E…»
10:27 AlexDaniel there it is
10:35 masak nine: I can see the reasons behind the objects, sure. what I haven't seen is a better (but still attractive/usable/simple) alternative.
10:36 masak &
10:36 nine masak: yes. My feeling says that we were actually quite close to a good suggestion, but time constraints interfered :/
10:43 llfourn m: sub is looser { }
10:43 camelia rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MJ1SjWZRkd␤Missing block␤at /tmp/MJ1SjWZRkd:1␤------> 3sub is7⏏5 looser { }␤    expecting any of:␤        new name to be defined␤»
10:44 llfourn m: sub () is looser { }
10:44 camelia rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/mS_fHuvWPn␤Can't use unknown trait 'is looser' in a sub declaration.␤at /tmp/mS_fHuvWPn:1␤    expecting any of:␤        rw raw hidden-from-backtrace hidden-from-USAGE␤        pure default DEPRECATED i…»
10:44 llfourn so is looser is broken?
10:45 dalek rakudo/nom: 9441bb2 | lizmat++ | src/core/
10:45 dalek rakudo/nom: Remove var we don't need anymore
10:45 dalek rakudo/nom: review:
10:46 lizmat m: sub a is looser {}
10:46 camelia rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dyKjMCb7xA␤Can't use unknown trait 'is looser' in a sub declaration.␤at /tmp/dyKjMCb7xA:1␤    expecting any of:␤        rw raw hidden-from-backtrace hidden-from-USAGE␤        pure default DEPRECATED i…»
10:47 llfourn 'is looser' is actually in that error message which is a bit LTA :\
10:47 lizmat m: sub a is looser(infix:<+>) {}
10:47 camelia rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4MtREU_vCv␤Can't use unknown trait 'is looser' in a sub declaration.␤at /tmp/4MtREU_vCv:1␤    expecting any of:␤        rw raw hidden-from-backtrace hidden-from-USAGE␤        pure default DEPRECATED i…»
10:48 lizmat llfourn: that just means it's not finding the correct MMD candidate
10:48 lizmat llfourn: I suggest you rakudobug it
10:48 llfourn lizmat: okie dokes
10:48 lizmat m: sub a is looser(&infix:<+>) {}
10:48 camelia rakudo-moar 7e106c: ( no output )
10:49 llfourn lizmat: so I'll rakudobug it as an LTA error?
10:49 lizmat well, yes, because apparently if you give it a Callable operator, it does work
10:50 lizmat m: sub is looser(&infix:<+>) {}
10:50 camelia rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LBYKKaljtL␤Missing block␤at /tmp/LBYKKaljtL:1␤------> 3sub is7⏏5 looser(&infix:<+>) {}␤    expecting any of:␤        new name to be defined␤»
10:50 lizmat m: sub () is looser(&infix:<+>) {}
10:50 camelia rakudo-moar 7e106c: ( no output )
10:50 lizmat afk until much later today&
10:52 lucasb joined #perl6
10:54 [Tux] I know utf8-c8 is WIP, but I got a new message, maybe it helps:
10:54 [Tux] *** Error in `/pro/3gl/CPAN/rakudobrew/moar-nom/install/bin/moar': corrupted double-linked list: 0x000000000561a000 ***
10:56 lucasb hai! anyone here is using irssi on xterm? (maybe others client/terminal work too); I tried to golf the camelia escape code thing and want to know what you see
10:56 _nadim joined #perl6
10:57 lucasb m: my \x = (0,2);m:                                 1 2
10:57 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4Eva7aSupH␤Two terms in a row␤at /tmp/4Eva7aSupH:1␤------> 3,2);m:                                 17⏏5 2␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤  …»
10:57 lucasb m: my \x = (0,3);m:                                 1 2
10:57 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ACbzPtkibt␤Two terms in a row␤at /tmp/ACbzPtkibt:1␤------> 3,3);m:                                 17⏏5 2␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤  …»
10:57 lucasb m: my \x = (0,4);m:                                 1 2
10:57 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/g0dgDuWbkB␤Two terms in a row␤at /tmp/g0dgDuWbkB:1␤------> 3,4);m:                                 17⏏5 2␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤  …»
10:57 llfourn I get nice colors on irssi mac :)
10:58 lucasb cool, and sorry for the spam :D
10:58 lucasb anyway, just I just found it interesting... maybe something is not escaping what it should escape
10:58 pierre-vigier joined #perl6
11:00 llfourn lucasb: you should totally see if it's exploitable!
11:01 llfourn maybe you can leak backspaces or something?
11:02 lucasb I all know is print some colors :) but, yes, maybe there's some security concerns involved too
11:02 lucasb *All I know
11:05 brrt hackernews discussion on perl6 is pretty positive this time arround :-)
11:05 nine indeed!
11:06 kjs_ joined #perl6
11:07 RabidGravy that is weird
11:07 RabidGravy first one blue, the second green and the third red
11:08 * deniska is a lurking newcomer :)
11:10 hahainternet brrt: surprisingly positive
11:10 hahainternet it really frustrates me how much trolling goes on
11:10 brrt hi deniska
11:10 hahainternet i never thought i'd see so many people screaming "I'm IGNORANT, WHY SHOULD I LEARN!!!"
11:10 brrt oh, i've stopped taking hn serious for 99% of the time
11:11 hahainternet well it's rather a right wing american paradise, but reddit etc too, slashdot is probably the worst but that's cynical burnouts :p
11:11 brrt the relation between a 'hacker' on hacker news is like a 'financial engineer' to an engineer
11:11 timotimo wow, that's harsh
11:11 hahainternet HN is unfortunately a bit of a self parody a lot of the time
11:11 hahainternet it's been nice to read the views of neutral people though
11:12 hahainternet who took the time to read what p6 can offer
11:12 RabidGravy and don't get me started on slashdot
11:12 hahainternet i really should start blogging about python
11:12 hahainternet because i use it almost every day
11:12 hahainternet and i hate it
11:12 hahainternet i mean it's ok, i'd prefer it to ruby
11:12 deniska I personally like python
11:13 hahainternet deniska: the problem with python isn't so much the language, but the opinions imho
11:13 hahainternet decorators are a terrible, terrible solution
11:13 brrt i like python too!
11:13 llfourn I dislike python too!
11:13 hahainternet but because they are superficially easy and newbie friendly, they're adopted heavily
11:13 deniska decorators have their place but they are often misused
11:13 hahainternet mixins also
11:13 timotimo i like python as well
11:13 RabidGravy yeah, I've done a fair bit of python over the last few years, and mostly I don't mind but every once in a while I have a WHY THE FUCK DO I HAVE TO DO THAT moment
11:14 timotimo but i haven't used it much after getting on perl6 :)
11:14 hahainternet i don't want to make it seem like python is terrible, by 'i hate it' i mean 'i hate being limited by it'
11:14 hahainternet it's certainly no PHP, which i do genuinely despise
11:14 llfourn certainly not.
11:14 timotimo you can't claim you're good at a language unless you know exactly why you hate it :)
11:14 hahainternet indeed
11:14 hahainternet i haven't found much i hate about perl6 yet
11:14 hahainternet the repl is my big bugbear
11:14 timotimo oh god don't get me started on the repl
11:14 deniska The thing with python is that you can do quite interesting hacks with it but other people will look at you quite funny
11:14 hahainternet if i knew of a better library than linenoise i'd do something about it
11:15 RabidGravy I actually prefer VB6 to PHP
11:15 brrt (well, timotimo, it's kind of true, isn't it? hn is probably more populated by growth hackers than any other form)
11:15 hahainternet RabidGravy: on error continue
11:15 brrt i prefer commodore basic to php
11:15 timotimo brrt: as opposed to academically trained hackers?
11:15 brrt actually computers-are-fun hackers
11:16 deniska In python if you really want you can make `import` statement pull modules from a mongodb database for example :)
11:16 deniska job security → ∞
11:16 timotimo i don't think i understand, brrt
11:16 timotimo which is which now? %)
11:17 llfourn deniska: you can do that in perl too :)
11:17 RabidGravy the only language I've actually been taught was COBOL in 1980
11:17 brrt i think most 'hackers' on hn are not hackers as hackers would've understood the term some 10 years ago before hackers were cool
11:17 deniska llfourn: but in perl this sort of thing if not expected but at least is not too surprising :)
11:17 brrt as in, before we had 'growth hackers', 'life hackers', 'customer serivce hackers', etc
11:17 peteretep HN is an odd place
11:18 brrt before hacker was equivocated with 'startup guy in general'
11:18 deniska (perl6 is my first perl btw >_> I guess I was too young for old perl)
11:18 peteretep I say this as someone with ~8k karma there
11:18 peteretep deniska: I've bee doing old Perl since I was 14 ;-)
11:18 hahainternet deniska: how old are you, if you don't mind me asking
11:18 timotimo deniska: perl6 is my first perl, too
11:18 deniska brrt: nowadays hacker for general public is a criminal with a weird name like "4chan"
11:18 hahainternet and i only have like ~1k karma, but i verge on trolling on HN by accident a lot :(
11:18 deniska hahainternet: 22
11:19 timotimo brrt: i have no clue what "growth hacker" is supposed to mean ... maybe plant-related biohacker? :r
11:19 brrt yeah, but that was true 10 years ago too, deniska
11:19 peteretep timotimo: marketing person who has a hard in for startups
11:19 brrt no, a growth hacker is a salesman timotimo
11:19 timotimo oh
11:19 peteretep cf: hustler
11:19 deniska my first major language was VB6, second major was python
11:20 peteretep BRO FINDS A WAY
11:20 domidumont joined #perl6
11:20 timotimo i started with QBasic and then went on to VB5
11:20 deniska (not counting ones I used just here and there or didn't learn properly)
11:20 brrt lol peteretep
11:21 peteretep Qbasic to JS to Perl
11:21 peteretep XSLT for a while too
11:21 hahainternet deniska: interesting, i'm about a decade older than you
11:21 RabidGravy peteretep, I remember you being quite the JS hacker about 15 years ago
11:21 hahainternet and Perl 5 for life <3
11:22 peteretep I'm only 32 for a few more months
11:22 peteretep then a long wait until I'm 64
11:22 deniska hahainternet: when I was old enough to make my own PL decisions in life, python was getting onto prime stage :)
11:22 RabidGravy anyway off to get in the traditional traffic jam on the M25
11:22 hahainternet RabidGravy: gross
11:22 RabidGravy have fun and play nicely
11:23 hahainternet RabidGravy: up north
11:23 deniska perl was already perceived as "this old thing people used to put in cgi-bin directory"
11:23 hahainternet RabidGravy: we sink our motorways :D
11:23 RabidGravy well East - going to Essex
11:23 peteretep My hope in this life is that this channel becomes like #rust, not like #go
11:23 hahainternet oh? is #go that bad? i write it, i don't chat in it
11:23 peteretep or gonuts or whatever they call it
11:23 peteretep It's a cesspit
11:24 peteretep I think the presence of the designers and implementers here - like in #rust - will help
11:24 deniska I have gonuts in my autojoin and I am considering removing it from there
11:24 deniska I hardly used any go
11:24 hahainternet that's a real shame (about the channel)
11:24 peteretep #gonuts has a nasty aspect of "how dare you question design decisions!!!"
11:25 hahainternet peteretep: oh well that's probably because of the endless trolling, i wouldn't entirely blame them for that
11:25 peteretep Which I think comes from not having anyone making those decisions there
11:25 deniska yeah, generics are actually useful :)
11:25 hahainternet Go itself is actually quite a lovely language
11:25 kjs_ joined #perl6
11:25 hahainternet and deniska don't dismiss it before you've written a lot in it
11:25 hahainternet to me, Go is a perfect counterpart to Perl 6
11:25 peteretep hahainternet: I have been completely unable to love it
11:25 hahainternet it'll be some time before Perl6 is fast, and it will always be crazy expressive and flexible
11:25 deniska hahainternet: Maybe I just had no usecases in which go would shine
11:25 hahainternet but Go is the opposite, fast, easy, straightforward
11:26 hahainternet so together they cover the bases quite marvellously imho
11:26 hahainternet and deniska yeah understandable, and peteretep there's many cases where it shines unbelievably
11:26 bpmedley The Feed Operators are sweet
11:26 peteretep fair enough
11:26 hahainternet bpmedley: yeah i discovered those through |> in f# (or c#, i forget)
11:27 hahainternet peteretep: think of it as a very specialised tool, like a rebate plane or something
11:27 deniska I rewrote my websocket hello world from go to python3.5 and it became twice shorter :)
11:27 hahainternet deniska: and 10x slower
11:27 hahainternet (and single threaded)
11:27 deniska hahainternet: not a problem for IO bound program
11:27 peteretep hahainternet: It's being used as a generalized tool tho, and promoted as such
11:27 * peteretep &
11:28 hahainternet peteretep: that's hard for me to argue against, but the point is simply that, it covers its realm of functionality very well
11:28 hahainternet and you shouldn't dismiss owning a rebate plane because you have a multi-function workstation :p
11:28 hahainternet (woodworking analogies are superior to car analogies :D)
11:28 hahainternet anyway sorry to shift the topic of the channel
11:29 brrt languages are the topic of this channel, there's just a particular focus on perl6
11:29 brrt :-)
11:29 hahainternet :D
11:29 hahainternet well imho, they're lovely counterparts, i need to learn Rust too
11:32 deniska currently writing a multiplayer websocket snake clone :)
11:33 rurban joined #perl6
11:33 deniska (well, lazily writing, only put 2 evenings of coding in it even though started it a week ago)
11:33 hahainternet deniska: websockets is excellent, but here's the rub
11:33 hahainternet the only way to prevent cheating
11:33 hahainternet is to carry out the same simulation on the backend
11:34 hahainternet so for each game you have ongoing, your backend must either mimic each step correctly, or become an abstracted form of the simulation
11:34 hahainternet there's a lot of ways to do this, but good luck writing them with Python
11:34 timotimo that's why you run the server on node.js, so you can have the same code on back- and front-end!
11:34 hahainternet timotimo: i hate you :p
11:34 timotimo (or, you know, use scala and scala.js)
11:34 deniska hahainternet: and that's the greatness of Snake
11:34 hahainternet or you could, 'go simulate_game(clients)'
11:34 deniska hahainternet: step function is like a screen of code
11:35 wamba joined #perl6
11:35 wenderen joined #perl6
11:35 hahainternet deniska: ok, but do you simulate every step on the backend?
11:35 deniska yes
11:35 timotimo also, if you have a snake game in your browser, you're screwed anyway WRT cheating. the user can just "ispect element" and throw in a snake AI that plays perfectly
11:35 hahainternet so you are aware that your backend will never run more than one of these at once right deniska
11:35 hahainternet (unless you're writing in Perl6 ofc)
11:36 hahainternet timotimo: that's true, but i'm talking about 'impossible' cheating, ie teleporting your snake
11:36 deniska hahainternet: actually clients will implement quite little state
11:36 deniska hahainternet: only enough to allow simple compression because sending the whole world every step is too much
11:36 xpen joined #perl6
11:36 wenderen p6: say 3;
11:36 camelia rakudo-moar 9441bb: OUTPUT«3␤»
11:37 hahainternet deniska: there's lots of options for how to do it, but the problem with 'netcode' in games is endemic, unless you run the full simulation on the backend, clients can cut corners, which is what 'cheating' is
11:37 hahainternet anyway i don't want to imply you're doing it wrong
11:37 deniska hahainternet: I know that quite well
11:37 hahainternet ok smashing, i don't want to be patronising or offensive :D
11:38 deniska cheating is just a small (although important) problem which arises with multiplayer games
11:38 hahainternet well imho it's the netcode portion that's the biggest pain
11:38 deniska the bigger problem is that speed of light is freaking slow and the latency of networks is even slower :)
11:38 hahainternet ultimately it's a question of ordering
11:38 hahainternet right, you're spot on
11:38 hahainternet no matter how fast your players internet
11:39 hahainternet it will be > 1 frame latency, and as a result, > character width movements usually
11:39 hahainternet i'm personally of the opinion this should be exposed to the user, and the backend server should report is current time constraints, ie how late it will accept a message from another client out of order
11:39 hahainternet so, if you play on a server with people with ping times under 20ms, the server can be roughly '1 frame safe'
11:40 deniska older games used extrapolation and tried to predict what will happen on a server until next message arrives
11:40 timotimo that's possible, but not "across countries"
11:40 timotimo certainly not "across continents", eh?
11:40 st_iron joined #perl6
11:40 st_iron good afternoon
11:40 deniska newer games use interpolation
11:40 hahainternet deniska: all games still do that
11:40 hahainternet timotimo: not at 20ms, but the point is that you'd set the allowable max on the server
11:41 hahainternet and so if you wanted to play across continents your server would be more like ~150ms safe
11:41 deniska hahainternet: source engine games do not do that iirc
11:41 hahainternet deniska: they certainly do, in fact it's configurable through the terminal
11:41 kjs_ joined #perl6
11:41 * hahainternet used to play TFC semi competitively as a kid
11:41 hahainternet s/terminal/console
11:42 colomon ===SORRY!===
11:42 colomon P6M Merging GLOBAL symbols failed: duplicate definition of symbol Find
11:42 colomon :\
11:42 deniska hahainternet: aren't you confusing interpolation with extrapolation? IIRC hl and source clients only lerp the state between two frames thet got from a server
11:42 hahainternet deniska:
11:42 hahainternet client vs server positions
11:42 deniska hahainternet: extrapolation is happening on a server
11:43 Woodi hi today :)
11:43 skyl4rk joined #perl6
11:43 deniska hahainternet: well, actually it's even a bit more complex than that
11:43 * Woodi votes for full server simulation eg. when gammers connects via telnet to your MUD ;)
11:43 deniska hahainternet: player sees the scene in a past and himself in a future :)
11:44 deniska hahainternet: and a server tries to find a middle ground between other's people futures and player's past :)
11:44 hahainternet deniska: indeed it is an 'unlimited' complexity problem
11:44 deniska a game with 10 player is actually 11 distinct game states…
11:44 hahainternet because there is no correct solution
11:44 hahainternet you can't 'fix' the problem in any way
11:45 hahainternet servers will always issue packets after a player has acted, but before the server has seen the action
11:45 deniska unless scientists discover wormholes or something
11:45 hahainternet haha indeed
11:45 hahainternet so it's just a question of 'how can we best compensate'
11:45 hahainternet i prefer the idea of very specifically listing the length of the packet window to all clients, and configuring a maximum
11:45 hahainternet so super competitive players can ensure they're playing on a server with say a ~10ms window
11:46 deniska displaying ping is a basic functionality of any multiplayer game :)
11:47 whj2819_ joined #perl6
11:47 hahainternet not ping, the server should set hard limits on the window packets are accepted in
11:47 deniska Snake is quite simple one because game tick happens once in 150ms
11:47 hahainternet so if you have 9 players with 10ms pings and one player with a 100ms ping
11:47 hahainternet the server can only limit to ~150-200ms
11:47 whj2819_ joined #perl6
11:48 deniska hahainternet: server just shouldn't overcompensate too much
11:48 deniska for players with a slow ping
11:48 hahainternet deniska: the problem is that statement isn't translateable into anything objective
11:48 hahainternet there /is/ no proper solution for these scenarios
11:48 hahainternet that latency is unavoidable, and you have no idea if a player's packet will arrive ~180ms after another players
11:49 deniska hahainternet: make a game more enjoyable for 9 people with good ping rather than for 1 guy with a slow ping is a proper enough solution
11:49 hahainternet deniska: indeed, but what i'm saying is, i prefer an even harder solution
11:49 hahainternet restrict the server side calculations to a time limit
11:49 hahainternet so that 180ms player cannot play on this 'low lag' server
11:49 jstypo joined #perl6
11:50 deniska and competitive games nowadays have this functionality
11:50 hahainternet do they? i've never seen a single one
11:50 hahainternet the closest you get is auto ping kick stuff
11:51 deniska isn't autokick what you talk about?
11:51 hahainternet i must admit i'm pretty ignorant of MOBAs or MMOs or similar
11:51 Milijus joined #perl6
11:51 deniska or are you saying about putting a cap on amount of lag compensation?
11:51 hahainternet deniska: no, i'm talking about the server's simulation loop having a very strict simulation period
11:51 hahainternet right
11:51 hahainternet if you know all of your players have a ~10ms ping
11:52 hahainternet you can enforce that the server has a maximum 'time skew' of ~20ms
11:52 hahainternet just over a frame
11:52 Psyche^_ joined #perl6
11:52 hahainternet anyway i'm spamming the channel again, so i'm going to continue my morning ritual, brb :)
11:52 deniska I feel like it is configurable, at least in quake-ish engines
11:53 deniska You can totally disable a server side lag compensation for sure
11:54 deniska so that all computations happen only from a current frame of a server
11:58 rindolf joined #perl6
11:58 nine colomon: do you have any "use lib" in your code?
11:59 itaipu joined #perl6
11:59 nine colomon: good rules of thumb: put your "use lib" _before_ loading any modules. Never do a "use lib" in a module.
12:00 lucasb nine: the 'use lib' after other 'use's will always be an issue? or will it get handled more gently in the future?
12:01 deniska Actually websockets are not too suitable for real time games because they use tcp :)
12:01 nine lucasb: I cannot see how we could make it work better. But maybe someone will have an idea
12:02 lucasb nine: ok, thanks
12:03 hahainternet deniska: yeah it would be nice to see udp socket options
12:05 deniska hahainternet: as I recall you can send arbitrary data over webrtc
12:05 deniska but that requires more elaborate server setup
12:05 hahainternet deniska: an interesting idea
12:09 deniska web sockets are supposed to be compatible with http, so udp websockets is something we won't see :)
12:10 zhi joined #perl6
12:10 timotimo for that you can use WebRTC, i thought?
12:11 DrForr joined #perl6
12:11 whj2819_ I use Konversation
12:11 deniska yes, but webrtc is also designed to be peer to peer
12:11 deniska so a server in this picture becomes one of the clients
12:12 Arrowhead joined #perl6
12:13 timotimo right. easy-peasy.
12:13 deniska and are there webrtc client libraries for server-side stuff?
12:14 timotimo good question
12:14 timotimo UDP support in rakudo is super fresh, so you're not going to find perl6 libraries for that yet :)
12:14 timotimo (though we do have websockets)
12:17 hankache joined #perl6
12:18 hankache Good * #perl6
12:19 zengargoylew joined #perl6
12:19 deniska it seems like (good) webrtc client infrastructure is lacking even from the environment one could expect it to have it: node
12:19 timotimo about to head out for a long-ish car drive
12:20 timotimo have fun everyone!
12:20 znpy joined #perl6
12:20 timotimo (don't have any fun i wouldn't have!)
12:20 timotimo :P
12:21 pederindi joined #perl6
12:22 hankache timotimo drive safely ;)
12:22 whj2819_ :)
12:26 zakharyas joined #perl6
12:26 labbe joined #perl6
12:26 domidumont joined #perl6
12:29 espadrine joined #perl6
12:32 labbe p6: 1..5
12:32 camelia rakudo-moar 9441bb: OUTPUT«WARNINGS for /tmp/tmpfile:␤Useless use of ".." in expression "1..5" in sink context (line 1)␤»
12:33 hankache m: say 1..5
12:33 camelia rakudo-moar 9441bb: OUTPUT«1..5␤»
12:33 hankache m: say |(1..5)
12:33 camelia rakudo-moar 9441bb: OUTPUT«12345␤»
12:34 hankache labbe is this what you were looking for ? ^^
12:34 deniska m: say ½+⅓
12:34 camelia rakudo-moar 9441bb: OUTPUT«0.833333␤»
12:34 deniska why is it a thing? :)
12:35 blub thats adorable
12:35 hahainternet deniska: because they're numbers
12:35 hahainternet m: say 2²
12:35 camelia rakudo-moar 9441bb: OUTPUT«4␤»
12:35 blub aaaa
12:35 deniska m: say 2¹⁰
12:35 camelia rakudo-moar 9441bb: OUTPUT«1024␤»
12:35 rurban joined #perl6
12:35 deniska woah
12:36 hahainternet m: say 2² ÷ ½
12:36 camelia rakudo-moar 9441bb: OUTPUT«8␤»
12:36 hahainternet if you really want to fancy it up a bit
12:37 deniska √2 doesn't work :P
12:39 ilmari m: sub prefix:<√>($v) { $v.sqrt }; √4
12:39 camelia rakudo-moar 9441bb: ( no output )
12:39 ilmari m: sub prefix:<√>($v) { $v.sqrt }; say √4
12:39 camelia rakudo-moar 9441bb: OUTPUT«2␤»
12:39 hahainternet deniska: yeah and you can't do sub variables by default
12:39 hahainternet but ^^
12:39 ilmari m: sub prefix:<√>($v) { $v.sqrt }; say √2
12:39 camelia rakudo-moar 9441bb: OUTPUT«1.4142135623731␤»
12:40 deniska yay for unicode, yay for custom operators and yay for the insanity :)
12:41 colomon nine: that’s really quite impossible in emmentaler, as the output of the File::Temp module is what is being sent to use lib.
12:41 lucasb there are itemized and non itemized lists. a slip is a list. the concept of itemization also applies to slips? for example: 'for $slip {...}' iterates as if it wasn't itemized
12:43 lucasb ok, maybe it makes sense that '$slip' is not itemized. I just wanted to make sure
12:44 colomon joined #perl6
12:44 Actualeyes joined #perl6
12:46 xinming_ joined #perl6
12:47 Ven joined #perl6
12:47 dalek nqp: ae6c8ad | (Pawel Murias)++ | t/nqp/59-nqpop.t:
12:47 dalek nqp: Fix test descriptions.
12:47 dalek nqp: review:
12:47 dalek nqp: 6129cec | (Pawel Murias)++ | t/nqp/87-parametric-6model.t:
12:47 dalek nqp: Strengthen nqp::typeparameters test.
12:47 dalek nqp: review:
12:47 dalek nqp: a845a92 | (Pawel Murias)++ | src/vm/js/ (2 files):
12:47 dalek nqp: [js] Implement nqp::nan, nqp::inf, nqp::neginf, nqp::isnanorinf.
12:47 dalek nqp: review:
12:47 dalek nqp: 5246f77 | (Pawel Murias)++ | t/nqp/59-nqpop.t:
12:47 dalek nqp: Test nqp::nan, nqp::inf, nqp::neginf, nqp::isnanorinf.
12:47 dalek nqp: review:
12:47 dalek nqp: c0b4406 | (Pawel Murias)++ | src/vm/js/ (3 files):
12:47 dalek nqp: [js] Implement nqp::srand, nqp::rand.
12:47 dalek nqp: review:
12:48 dalek nqp: 0a390ce | (Pawel Murias)++ | t/nqp/59-nqpop.t:
12:48 dalek nqp: Test nqp::srand_n, nqp::rand.
12:48 dalek nqp: review:
12:48 dalek nqp: 215eafd | (Pawel Murias)++ | t/nqp/59-nqpop.t:
12:48 dalek nqp: Test nqp::isgt_s, nqp::islt_s.
12:48 dalek nqp: review:
12:51 pmurias Rakudo JavaScript backend grant proposal draft:
12:51 pmurias any feedback would be welcome
12:51 xinming joined #perl6
12:53 mue joined #perl6
12:54 rurban joined #perl6
12:55 whj2819_ good night everybody :)
12:56 xinming_ joined #perl6
12:56 BenGoldberg joined #perl6
12:59 * llfourn is super excited to see what pmurias++ can do rakudo on js
13:01 kjs_ joined #perl6
13:02 Arrowhead Is nqp supposed to be a subset of perl6?
13:03 Arrowhead works with nqp, but rightly fails with perl6.
13:03 llfourn Arrowhead: not a strict subset
13:04 llfourn it is a limited perl6 like language :)
13:04 Arrowhead to be specific: what does "my $i := 0;" mean in nqp?
13:04 rindolf joined #perl6
13:04 llfourn Arrowhead: technically the same thing as in perl 6 I think. It binds the LHS to the right.
13:05 Juerd Arrowhead: It's "not quite perl" :)
13:05 Arrowhead rrright
13:05 Arrowhead I assu
13:05 Arrowhead me that there was a reason it wasn't written as my $i = 0;
13:06 Arrowhead ah. "assignment not supported"
13:06 llfourn ^^ :)
13:06 Arrowhead except it is, but using the wrong operator, it seams.
13:06 llfourn := is not assignment it's binding
13:06 Arrowhead or does it change the current value of 0?
13:07 deniska (so, rakudo is like pypy, nqp is like rpython?)
13:08 llfourn Arrowhead: do you mean does $i++ change the current value of 0?
13:08 llfourn $i++ in nqp is short for $i := $i + 1;
13:09 Arrowhead it doesn't seem to when I test it, but I'm still wondering what $i gets bound to.
13:11 Woodi pmurias: " full Perl 6" in 3 months ?
13:12 llfourn Arrowhead: I'm not exactly sure what you mean, $i is bound to 0, then 1 then 2..
13:12 llfourn there is a breif explanation here:
13:12 llfourn brief*
13:13 Arrowhead ok, I see, perl6 runs it when I replace $i++ with $i := $i + 1;
13:14 llfourn Arrowhead: ahhh now I know what you mean :)
13:14 llfourn sorry wasn't thinking :P
13:14 llfourn yeah I guess := is a little different in NQP vs rakudo
13:14 * llfourn learns something new
13:15 deniska := seems to be the same, ++ seems to be different
13:16 llfourn deniska: right. I confused myself :D
13:16 * llfourn unlearns the incorrect thing he just learnt
13:17 xpen joined #perl6
13:17 vividsnow joined #perl6
13:19 llfourn deniska: is pypy written in rpythnon?
13:22 deniska llfourn: it is written in both rpython and python iirc
13:22 deniska it's complicated :)
13:22 uruwi Can I assume that a num (lowercase n) is always a 64-bit float?
13:23 llfourn deniska: interesting :)
13:23 llfourn uruwi: I guess unless it's on a 32bit machine?
13:25 uruwi I'll use num64 to be safe.
13:25 llfourn uruwi: mmm I think that's what it's for
13:25 pmurias joined #perl6
13:28 Ven joined #perl6
13:30 nine colomon: ik, then I'll need some more information about that use case. Sounds rather strange to me
13:33 disturbingly_rea joined #perl6
13:33 xpen joined #perl6
13:34 disturbingly_rea m: sub postfix:<!>(i) { if i < 2 {1} else {(i-1)! * i}} ; say 3!
13:34 camelia rakudo-moar 9441bb: OUTPUT«Type check failed in binding <anon>; expected Complex but got Int␤  in sub postfix:<!> at /tmp/jEYVknPZ0l line 1␤  in block <unit> at /tmp/jEYVknPZ0l line 1␤␤»
13:34 ilmari m: say i
13:34 camelia rakudo-moar 9441bb: OUTPUT«0+1i␤»
13:34 disturbingly_rea m: sub postfix:<!>(Int i) { if i < 2 {1} else {(i-1)! * i}} ; say 3!
13:34 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/cdSi9Qp_If␤A parameter may only have one prefix type constraint␤at /tmp/cdSi9Qp_If:1␤------> 3sub postfix:<!>(Int i7⏏5) { if i < 2 {1} else {(i-1)! * i}} ; sa␤»
13:34 xinming joined #perl6
13:34 llfourn m: sub postfix:<!>(\i) { if i < 2 {1} else {(i-1)! * i}} ; say 3!
13:34 camelia rakudo-moar 9441bb: OUTPUT«6␤»
13:35 disturbingly_rea Iam so dumb
13:36 nine pmurias: you should mention in the benefits section that you write lots of tests for nqp. And I guess you will do the same for rakudo :)
13:36 llfourn disturbingly_rea: I am not convinved yet :). That's actually a tricky situation. Your first one tries to make a sub with a literal imaginary number as the only accepted argument.
13:36 llfourn m: sub postfix:<!>(a) { if i < 2 {1} else {(i-1)! * i}} ; say 3!
13:36 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Wt6eD6ivv7␤Invalid typename 'a' in parameter declaration.␤at /tmp/Wt6eD6ivv7:1␤------> 3sub postfix:<!>(a7⏏5) { if i < 2 {1} else {(i-1)! * i}} ; sa␤»
13:37 llfourn if you didn't choose i you would have a nicer error message
13:38 llfourn m: sub fun(i) { i ** 2 }; say fun i;
13:38 camelia rakudo-moar 9441bb: OUTPUT«-1+1.22464679914735e-16i␤»
13:38 llfourn pitty p6 couldn't figure that shoul be -1
13:39 kid51 joined #perl6
13:41 ilmari m: say sin pi
13:41 camelia rakudo-moar 9441bb: OUTPUT«1.22464679914735e-16␤»
13:41 disturbingly_rea m: my \γ = 0.577215665; sub Γ(\z) { (e**(-γ*z) / z) * ([*] map { ($_ / ($_ + z)) * e**(z/$_) }, (1..30_000)) } ; say Γ(i)
13:41 camelia rakudo-moar 9441bb: OUTPUT«-0.154952410918664-0.49802396826629i␤»
13:43 mue joined #perl6
13:45 disturbingly_rea m: my \γ = 0.577215665; sub Γ(\z) { (e**(-γ*z) / z) * ([*] map { ($_ / ($_ + z)) * e**(z/$_) }, (1..30_000)) } ; say Γ(7).round
13:45 autogen joined #perl6
13:45 camelia rakudo-moar 9441bb: OUTPUT«719␤»
13:47 leont joined #perl6
13:51 rhr joined #perl6
13:53 xinming_ joined #perl6
13:59 Rotwang joined #perl6
14:01 colomon nine: the use case is that emmentaler sets up a temp directory scratch pad to “install” modules to for smoking.
14:01 colomon nine:
14:02 hobbs joined #perl6
14:02 hobbs joined #perl6
14:03 luis joined #perl6
14:04 brrt joined #perl6
14:04 dylanwh joined #perl6
14:04 zoosha joined #perl6
14:04 Gardner joined #perl6
14:07 xpen joined #perl6
14:08 xpen joined #perl6
14:09 Skarsnik joined #perl6
14:14 ellybelly joined #perl6
14:16 Ara joined #perl6
14:18 mue joined #perl6
14:21 shibly joined #perl6
14:21 shibly left #perl6
14:22 Skarsnik Hello
14:22 blub hi skarsnik
14:22 hahainternet hola
14:23 hankache joined #perl6
14:24 aenaxi joined #perl6
14:31 rindolf Skarsnik: hi, sup?
14:35 flussence ah, sorry about that nine. I was blindly trying to shoehorn some naming consistency in there but you're right
14:35 yoleaux 10:22Z <nine> flussence:
14:39 vividsnow1 joined #perl6
14:40 pmurias joined #perl6
14:41 rjbs joined #perl6
14:42 nine flussence: no worry :)
14:42 pmurias Woodi, nine: thanks for feedback
14:43 pmurias nine: I'm not sure how much rakudo tests I will need to write, roast seems much more exhaustive then the nqp test suit
14:43 nine colomon: that's an unusual use case. I wonder if we could handle the situation a bit smarter.
14:44 nine pmurias: it probably is. But there's also a lot more to test
14:45 nine pmurias: in any case you do have a much better track record than me in that regard :)
14:45 domidumont joined #perl6
14:45 * nine loves having tests, not as much writing tests
14:45 xpen_ joined #perl6
14:47 retupmoca joined #perl6
14:47 xpen joined #perl6
14:47 luis` joined #perl6
14:47 lucs joined #perl6
14:47 hobbs joined #perl6
14:48 zoosha joined #perl6
14:50 hoelzro joined #perl6
14:55 dylanwh joined #perl6
14:55 Ox0dea joined #perl6
14:55 Ox0dea m: say sum grep {$_%3 * $_%5 < 1}, ^1000
14:55 camelia rakudo-moar 9441bb: OUTPUT«233168␤»
14:55 Ox0dea Is there a niftier way to say that?
14:56 timotimo my drive has been going rather well
14:56 timotimo taking a break now
14:57 Ox0dea m: say grep * %% [3,5], ^10
14:57 camelia rakudo-moar 9441bb: OUTPUT«(0 2 4 6 8)␤»
14:57 mst joined #perl6
14:57 Ox0dea It'd be nice if that did "the right thing".
14:59 a3r0 Is there perl6 equivalent to perl5 "perl -pie 's/from/to/' file.txt" one-liner?
14:59 jast Ox0dea: this seems cute: sum grep so not * % (3&5), ^1000
14:59 jast I only just started out with Perl 6, though. there may be something nicer.
15:00 timotimo use the any junction for that
15:00 colomon m say grep * %% 3 | 5, ^10
15:00 colomon m: say grep * %% 3 | 5, ^10
15:00 camelia rakudo-moar 9441bb: OUTPUT«(0 1 2 3 4 5 6 7 8 9)␤»
15:00 xpen_ joined #perl6
15:00 colomon m: say grep * %% (3 | 5), ^10
15:00 camelia rakudo-moar 9441bb: OUTPUT«(0 3 5 6 9)␤»
15:00 jast oh, right, I didn't know about %%...
15:00 timotimo easy
15:00 timotimo no need for the so
15:00 timotimo and there is a none junction as well
15:00 timotimo ^ is the operator for that
15:01 llfourn a3r0: I don't think so. text processing one liners aint Perl 6's thing atm
15:03 Ox0dea m: sum grep * %% (3|5), ^1000
15:03 camelia rakudo-moar 9441bb: ( no output )
15:03 peteretep joined #perl6
15:03 Ox0dea It's beautiful.
15:03 Ox0dea Why not have camelia report the value of the last expression?
15:04 Ox0dea `say` and the rakudo diagnostics are just noise. :<
15:09 LambdaCat joined #perl6
15:09 pmurias Woodi: re 3 months, most of Perl 6 is built of building blocks
15:10 pmurias Woodi: when I implement those correctly I hope things will just fall into place and start working correctly
15:10 pmurias Woodi: I have a lot of the building block done from having implemented NQP
15:12 llfourn m: grep { $_ %% 3 or $_ %% 5 }, ^100_000 # seems to be much faster than %% (3|5) disappointingly
15:12 camelia rakudo-moar 9441bb: ( no output )
15:13 llfourn m: grep { $_ %% (3|5) }, ^100_000
15:13 camelia rakudo-moar 9441bb: ( no output )
15:13 havenwood joined #perl6
15:13 a3r0 I just found a document for perl6 oneliner
15:13 Ox0dea llfourn: What do you use to benchmark?
15:14 llfourn Ox0dea: in this case my eyes :)
15:15 llfourn a3r0: I stand happily corrected :)
15:17 ingve joined #perl6
15:17 jast seems like the only thing missing for the original P5 example is -i for in place operation
15:18 * llfourn sleep &
15:22 xpen joined #perl6
15:24 telex joined #perl6
15:28 BenGoldberg And the ability to change the record separators.  So, find . -blahblahblah -print0 | perl6 -how-do-i-split-on-nul -ne '...'
15:30 JulesFM joined #perl6
15:32 JulesFM Is it possible to write a regexp in p6 that will match on lines that contain all of a set of substrings, but in any order along the line?
15:32 JulesFM I can't do it in PCREs, wondering if p6 can do it now, as its regexp support is better.
15:33 BenGoldberg Even perl5 can do that.
15:35 JulesFM How? Say I've got the strings abc, def and ghij and the line of characters "azazghijmnmnabcopopdef", what does the PCRE that will match that look like?
15:35 khw joined #perl6
15:35 Ulti JulesFM you can even use your PCRE regex in Perl 6 since it supports Perl 5 style regex
15:35 BenGoldberg my $regex = "(?:" . join('', map "(?>.*$_)", @thesubstrings ) . ")";
15:37 JulesFM Must go and read up on my PCREs in that case, can't remember what ?: does
15:38 Ox0dea Non-capturing group.
15:41 Zero_Dogg joined #perl6
15:42 tef joined #perl6
15:43 JulesFM BenGoldberg : Is the "(?>.*$_)" specific to perl 6? Trying that map in Perl 5 produces an empty list.
15:44 JulesFM If so, what does it do?
15:44 Ulti m: BEGIN my $then = now; say now - $then;
15:44 camelia rakudo-moar 9441bb: OUTPUT«0.01199575␤»
15:44 xxpor_lap joined #perl6
15:44 Ulti Ox0dea ^ benchmarking
15:45 ZoffixWin m: say now - INIT now;
15:45 camelia rakudo-moar 9441bb: OUTPUT«0.0021937␤»
15:45 Ox0dea Ulti: I've been spoiled by Ruby's benchmark-ips.
15:45 BenGoldberg Err, that's a typo, it should be "(?=.*$_)"
15:46 Ox0dea JulesFM: ^ Which is called "positive lookahead".
15:46 Ulti Ox0dea I have a little prime benchmark
15:46 BenGoldberg Anything inside of (?=) is a zero-width lookahead
15:46 billN1VUX joined #perl6
15:47 BenGoldberg JulesFM, read
15:47 Ox0dea JulesFM: Read
15:47 Ulti Ox0dea also have you tried `perl6 --profile myscript.p6` yet?
15:47 Ox0dea Ooh!
15:48 Ulti because that will make you happy :3
15:48 Ox0dea Ulti: This is glorious.
15:48 sammers joined #perl6
15:48 Ulti thank jnthn++
15:49 ZoffixWin .u Σ
15:49 yoleaux U+03A3 GREEK CAPITAL LETTER SIGMA [Lu] (Σ)
15:49 ZoffixWin m: say Σ ^10
15:49 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/BTk_pBj7iw␤Undeclared routine:␤    Σ used at line 1␤␤»
15:50 derpydev joined #perl6
15:51 Arrowhead joined #perl6
15:52 rindolf ZoffixWin: you win!
15:52 rindolf ZoffixWin: sup?
15:52 colomon continuing saga of trying to get ABC running again on bleeding edge rakudo:
15:52 colomon abc2ly
15:52 colomon Cannot unbox a type object
15:52 colomon in sub MAIN at /home/colomon/.rakudobrew/bin/../moar-nom/install/share/perl6/site/bin/abc2ly line 10
15:52 colomon in block <unit> at /home/colomon/.rakudobrew/bin/../moar-nom/install/share/perl6/site/bin/abc2ly line 2
15:52 Ox0dea Python has `foo.__doc__`, Ruby has `$ ri foo`. How do we access "online" documentation?
15:53 colomon m: say Int.HOW
15:53 camelia rakudo-moar 9441bb: OUTPUT«␤»
15:53 colomon m: say Int.WHY
15:53 camelia rakudo-moar 9441bb: OUTPUT«(Any)␤»
15:53 Ox0dea Or is there as yet none?
15:53 ZoffixWin Ox0dea, there's p6doc, but I've never used it
15:53 colomon m: say Int.WHAT
15:53 camelia rakudo-moar 9441bb: OUTPUT«(Int)␤»
15:53 colomon m: say Int.WHO
15:53 camelia rakudo-moar 9441bb: OUTPUT«Int␤»
15:53 ZoffixWin m: say Int.WHERE
15:53 camelia rakudo-moar 9441bb: OUTPUT«17605472␤»
15:53 Ox0dea Like, for quickly determining what exactly the `one` top-level routine does.
15:54 hahainternet i think the .WHY method should produce that
15:54 hahainternet but as you can see above, it doesn't
15:54 ZoffixWin m: say one.WHY
15:54 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MF16ZplSZM␤Function "one" may not be called without arguments (please use () or whitespace to denote arguments, or &one to refer to the function as a noun)␤at /tmp/MF16ZplSZM:1␤------> 3say one7⏏5.WH…»
15:54 ZoffixWin .oO( one top-level routine? )
15:54 ZoffixWin m: say is-prime.WHY
15:54 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5wPn3fsfPW␤Calling is-prime() will never work with proto signature ($)␤at /tmp/5wPn3fsfPW:1␤------> 3say 7⏏5is-prime.WHY␤»
15:54 ZoffixWin m: say &is-prime.WHY
15:54 camelia rakudo-moar 9441bb: OUTPUT«Nil␤»
15:55 Ulti I think this is because the POD isnt inline with the source?
15:55 Ox0dea ZoffixWin: Is `is-prime` not a "top-level routine", then?
15:55 bitmap joined #perl6
15:55 ZoffixWin Ox0dea, I've no idea what a "top-level routine" is to you
15:56 Ox0dea ZoffixWin: It's a routine available at the top level.
15:56 hahainternet interesting HN link:
15:56 hahainternet might be a fun grammar
15:56 hahainternet bit too late for advent lol
15:56 ZoffixWin Ox0dea, is-prime is provided Int class
15:57 Ox0dea ZoffixWin: But it's "available" from anywhere.
15:58 Ulti its also exported yes
15:59 domidumont joined #perl6
15:59 ZoffixWin Ox0dea, my point was that to find documentation for is-prime method/sub you'd read documentation for Int class that provides it and not look for a "top-level routine" documentation
15:59 Ox0dea ZoffixWin: Gotcha. So every "top-level routine" has actually been exported from elsewhere?
15:59 Ulti Ox0dea all of the built in stuff is like that its not like python or ruby where you have to explicitly say you want to import all this stuff its all available all of the time
16:00 ZoffixWin You can perform search on p6doc command might allow lookup too
16:00 ZoffixWin Ox0dea, yup
16:00 Ox0dea Ulti: Hm? Python is a lot like Perl in this regard.
16:00 Ulti Perl 5 sure
16:01 CoconutC1ab joined #perl6
16:01 Ulti though Perl 5 had a tonne of keywords which were essentially the same thing
16:01 derpydev joined #perl6
16:01 Ox0dea Ruby's "top-level methods" live in Kernel and become available on every object through inheritance. I think that's a better model. :<
16:01 Ulti they arent top level methods
16:01 Ox0dea I understand that now.
16:02 ZoffixWin Ox0dea, is-prime wouldn't make sense on every object :P
16:02 Ulti the more specific types will end up calling their more specific exported function due to multi dispatch though
16:02 ZoffixWin Ox0dea, and Perl 6 has Mu class from which all other classes inherit:
16:03 derpydev joined #perl6
16:03 daxim joined #perl6
16:03 Ox0dea ZoffixWin: Precisely! That's why it's a little odd for it to be "accessible" from anywhere.
16:03 ZoffixWin Ox0dea, it's just convinience: you can use them as subroutines or use them as methods
16:04 athos joined #perl6
16:04 ZoffixWin m: say 42; 42.say
16:04 Ulti Ox0dea multi dispatch and types! it *just works*  multi sub is-prime(Int $n) { inty version }   multi sub is-prime(Num $n) { numy version }
16:04 camelia rakudo-moar 9441bb: OUTPUT«42␤42␤»
16:04 ugexe joined #perl6
16:04 Ulti not that its done that way I dont think
16:04 derpydev joined #perl6
16:04 ZoffixWin m:
16:04 camelia rakudo-moar 9441bb: OUTPUT«Method 'is-prime' not found for invocant of class 'Num'␤  in block <unit> at /tmp/ifdLmwvFyE line 1␤␤»
16:04 Ulti since Numeric exists
16:05 Ox0dea ZoffixWin: What was that?
16:05 ZoffixWin Ox0dea, where?
16:05 Ulti m: say
16:05 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:05 ZoffixWin m: say '2'
16:05 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:05 Ox0dea So why not `2.Num`?
16:06 ZoffixWin Ox0dea, 'cause it's a floating point number, which is never a prime? :P
16:06 Ulti you could but the first step would be does it have any decimal places its not prime :P which is a bit silly
16:06 ZoffixWin I dunno, I'm not the one who designed this stuff :P
16:07 ZoffixWin Probably should rakudobug that
16:07 Ulti why?
16:07 Ulti m: is-prime 2.0
16:07 camelia rakudo-moar 9441bb: OUTPUT«WARNINGS for /tmp/GzJtLRno6D:␤Useless use of "is-prime 2.0" in expression "is-prime 2.0" in sink context (line 1)␤»
16:07 Ulti m: say is-prime 2.0
16:07 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:07 Ulti m: say is-prime 2.1
16:07 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:07 ZoffixWin m: say 2.0.WHAT
16:07 camelia rakudo-moar 9441bb: OUTPUT«(Rat)␤»
16:07 Ulti heh
16:07 Ulti nice
16:07 Ulti such lies
16:07 ZoffixWin Ulti, why: DWIM
16:08 Ulti wait a second
16:08 ZoffixWin I have a thing and I wanna know if it's prime. Coerce it into Int if ya havta
16:08 ZoffixWin m: say
16:08 camelia rakudo-moar 9441bb: OUTPUT«Method 'is-prime' not found for invocant of class 'Rat'␤  in block <unit> at /tmp/tV5skEcMpl line 1␤␤»
16:08 Ulti m: say is-prime ?
16:08 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wyDx7K4JG9␤Prefix ? requires an argument, but no valid term found␤at /tmp/wyDx7K4JG9:1␤------> 3say is-prime ?7⏏5<EOL>␤    expecting any of:␤        prefix␤»
16:08 ZoffixWin m: say is-prime (2.5)
16:08 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:08 Ox0dea Yikes.
16:08 ZoffixWin m: say (2.5).is-prime
16:08 camelia rakudo-moar 9441bb: OUTPUT«Method 'is-prime' not found for invocant of class 'Rat'␤  in block <unit> at /tmp/1v5nk7Rwp_ line 1␤␤»
16:09 Ox0dea This is obviously bad?
16:09 ZoffixWin Ox0dea, it's a bug, yes
16:10 ZoffixWin hm
16:10 ZoffixWin m: say is-prime 2.Num
16:10 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:10 ZoffixWin m: say is-prime '2'
16:10 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:10 ZoffixWin m: say is-prime '2.4242'
16:10 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:11 ZoffixWin Well, I got my wish, it coerces it into Int :P
16:11 Ulti yeah
16:11 ZoffixWin m: say is-prime '-2.4242'
16:11 camelia rakudo-moar 9441bb: OUTPUT«False␤»
16:11 ZoffixWin Not a bug then, I guess.
16:11 Ulti dunno its maybe not the greatest
16:12 ZoffixWin The alternative is it'll throw
16:12 Ox0dea Should do.
16:12 Ulti like you'd sort of either expect that or two other things, testing the actual value and if it has decimal places just False, or throw a method not found
16:13 Ulti I'd expect if it does anything other than throw no found for it to actually test the number I have rather than just truncate
16:13 Ulti does it round? or truncate?
16:14 Ulti m: say is-prime 3.5
16:14 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:14 Ulti m: say is-prime 3.6
16:14 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:14 Ulti m: say is-prime 3.9
16:14 camelia rakudo-moar 9441bb: OUTPUT«True␤»
16:14 ZoffixWin Rakudobugged:
16:14 Ulti this raises the question whats more prime 3.9 or 3.99 >:3
16:14 flussence technically it's not wrong, I mean you can't divide these by any integer and get an integer result...
16:15 flussence m: say is-prime 4.1
16:15 camelia rakudo-moar 9441bb: OUTPUT«False␤»
16:15 ZoffixWin Except it's not a natural number :P
16:15 * colomon ’s ABC “Cannot unbox a type object” issue is coming in the boilerplate @binaries = flat { .files('bin/abc2ly') }; when CompUnit::Repository::Installation.files is called
16:15 flussence that one's wrong though
16:15 Ulti flussence: you beat me to it
16:15 colomon afk # packing presents into van
16:15 Ulti yeah the bug is its wrong 50% of the time :D
16:15 flussence :D
16:16 Ulti well slightly less than 50% thanks to 2
16:16 Ox0dea Thanks, 2.
16:16 Ulti with big nums its infinitely wrong infinitely many times o___O
16:16 pierre-vigier joined #perl6
16:17 dalek rakudo-star-daily: 891398c | coke++ | log/ (8 files):
16:17 dalek rakudo-star-daily: today (automated commit)
16:17 dalek rakudo-star-daily: review:
16:17 dalek perl6-roast-data: bdc6776 | coke++ | / (7 files):
16:17 dalek perl6-roast-data: today (automated commit)
16:17 dalek perl6-roast-data: review:
16:18 Begi joined #perl6
16:19 X-Scale joined #perl6
16:20 znpy joined #perl6
16:22 llfourn joined #perl6
16:22 timotimo and %%, yeah
16:23 * timotimo has arrived!
16:23 ZoffixWin heh
16:23 xpen joined #perl6
16:24 ZoffixWin m: "{<buy not-buy>.pick} moar booze".say
16:24 camelia rakudo-moar 9441bb: OUTPUT«buy moar booze␤»
16:24 rhr joined #perl6
16:24 ZoffixWin Hard to believe this was enough only for half the holidays
16:24 Ox0dea Is not.
16:25 ZoffixWin For one human :P
16:32 JulesFM BenGoldberg r u still here? I've worked out what your RE does now, thanks very much for that. If I wanted to wrap each match of a substring with some characters to, for example, turn bold on and off (so when I print the matching line it highlights the matches, like the GNU "grep --color=always" does) is that possible with an s///g, or not?
16:33 [Coke] "perl 6 is my first perl" I saw someone say in the backlog. My first perl and my first doctor were both #4.
16:34 grondilu many $int = $int + 1 in the core.  Shouldn't they be changed to $int++?   (sed -i 's/\$\(.\+\) = \$\1 + 1/$\1++/g' *.pm)
16:35 autarch [Coke]: so my new Pod::To::HTML worked fine in terms of the HTML it produced - unfortunately it took many hours and about 3.5GB of memory to build the doc site - I could really use some help figuring out why
16:37 grondilu (though maybe sed -i 's/\$\(.\+\) = \$\1 + 1/++$\1/g' *.pm is better, since the equivalent of $int = $int + 1 is ++$int, not $int++)
16:38 flussence grondilu: postfix:<++> used to break the optimizer, possibly still does
16:38 grondilu ok
16:40 skyl4rk joined #perl6
16:41 pierre-vigier joined #perl6
16:42 skyl4rk hello, is it possible to force the newline character/separator for sockets? I thought that is what e.g. calling<\x0d\x0a>) would do, but I seem to be mistaken
16:42 flussence try :nl-in<\r\n>
16:44 skyl4rk flussence: that seems to do the trick (for input)
16:44 CIAvash joined #perl6
16:48 timotimo [Coke]: was #4 the one with the scarf?
16:48 Ox0dea How come `foo .= bar` doesn't have to be `foo .= &bar`?
16:48 skyl4rk if I understand correctly socket.put() puts the line terminator specifed for standard out
16:49 grondilu Ox0dea: .&bar is the syntax when bar is a function, not a method of foo.  So foo .= bar only works if bar is a method of foo.
16:49 grondilu m: my $x = pi; $x .= cos; say $x
16:49 camelia rakudo-moar 9441bb: OUTPUT«-1␤»
16:49 flussence skyl4rk: socket.put is hardcoded to \n right now, that's a bug
16:49 grondilu (bad example, sorry)
16:50 skyl4rk flussence: ah, I see, thanks
16:50 grondilu m: my $x = pi; sub f { cos $_ }; $x .= f; say $x
16:50 camelia rakudo-moar 9441bb: OUTPUT«Method 'f' not found for invocant of class 'Num'␤  in block <unit> at /tmp/eFFQMgEYf1 line 1␤␤»
16:50 Ox0dea grondilu: I thought `.=` was an operator. Is it snyax, then?
16:51 Ox0dea *syntax
16:51 grondilu Ox0dea: $x .= function means $x = $x.function
16:51 geekosaur all the <op>= things are kinda magic
16:51 Peter_R joined #perl6
16:51 Ox0dea grondilu: You're patronizing.
16:51 molaf joined #perl6
16:51 grondilu am I?  sorry.
16:51 Ox0dea It's okay if you don't know the answer to the actual question I'm asking.
16:51 geekosaur you can think of them as being macros
16:52 grondilu m: my $x = pi; sub f { cos $_ }; $x .= &f; say $x
16:52 camelia rakudo-moar 9441bb: OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤  in sub f at /tmp/qfWvTesGdU line 1␤  in block <unit> at /tmp/qfWvTesGdU line 1␤␤»
16:52 Ox0dea geekosaur: Yes, they're clearly "magical", but are we allowed to define custom magicks like those?
16:52 grondilu m: my $x = pi; sub f($_) { cos $_ }; $x .= &f; say $x
16:52 camelia rakudo-moar 9441bb: OUTPUT«-1␤»
16:52 geekosaur I don't think so currently
16:53 Ox0dea Then it's syntax. :<
16:53 geekosaur this is "syntax" insofar as it's hardcoded into the parser; while there's a general macro facility in there, it's marked experimental because nobody quite likes it as it currently is
16:53 Ox0dea I see. Thank you, geekosaur.
16:54 geekosaur and assignment is itself somewhat special, so it's not clear that a general facility *of that kind* could be meaningful
16:54 geekosaur (basically assignment is optimized all over the place so gets special handling everywhere. it'd be way to slow otherwise)
16:54 geekosaur *too
16:55 Ox0dea Ruby lets you have your cake and eat it too on that front.
16:55 geekosaur well, if the compiler spots a STORE method or a proxy in play, it takes the general slow route --- you *can* do this, it just slows things down massively
16:56 Arrowhead joined #perl6
16:57 skids joined #perl6
16:58 pochi m: class Foo { has $!bar is required }; my $a = :bar(42) );
16:58 camelia rakudo-moar 9441bb: OUTPUT«The attribute '$!bar' is required, but you did not provide a value for it.␤  in block <unit> at /tmp/26TX_ZYQT8 line 1␤␤»
16:58 mue joined #perl6
16:58 pochi lies!
16:58 pochi :-)
16:59 BenGoldberg m: class Foo { has $!bar = 43 is required }; my $a = :bar(42) );
16:59 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MJ6pXoJNvb␤Two terms in a row␤at /tmp/MJ6pXoJNvb:1␤------> 3class Foo { has $!bar = 437⏏5 is required }; my $a = :bar(42␤    expecting any of:␤        infix␤        infix stopper␤  …»
16:59 rjbs joined #perl6
16:59 BenGoldberg m: class Foo { has $!bar is required = 43 }; my $a = :bar(42) );
16:59 camelia rakudo-moar 9441bb: OUTPUT«The attribute '$!bar' is required, but you did not provide a value for it.␤  in block <unit> at /tmp/2o9uVrhgHN line 1␤␤»
16:59 * BenGoldberg shrugs
17:01 Ox0dea Should Perl 6 not have been released just yet?
17:01 [Coke] ff
17:01 dotness joined #perl6
17:02 BenGoldberg Why do you think it shouldn't have been released?
17:02 BenGoldberg Or, why do you think it wasn't released?
17:03 * BenGoldberg is having trouble parsing that question of yours.
17:03 dotness joined #perl6
17:06 TEttinger joined #perl6
17:08 timotimo BenGoldberg: you can't supply a private attribute via the default .new, btw
17:08 timotimo i think "is required" just can't handle private attributes
17:08 timotimo it should give an error in that case, IMO.
17:09 geekosaur yes, I think that's a well known wart
17:10 pochi but surley one should be able to initialize private variables from the constructor?
17:11 halto joined #perl6
17:11 pochi I give you some data, and promise to not touch it after
17:11 ChoHag_ How do you put new items in a SetHash?
17:11 TimToady joined #perl6
17:12 timotimo pochi: not from the default constructor
17:12 timotimo pochi: private attributes are not part of the interface
17:12 ChoHag_ suggests $sh<foo> = True, but that doesn't work.
17:12 timotimo you're allowed to change any private attributes around whenver you want
17:12 pochi ok, so I can make my own constructor?
17:12 timotimo of course :)
17:12 ChoHag_ Specifically: Type check failed in assignment to $s; expected SetHash but got Hash
17:13 domidumont joined #perl6
17:13 timotimo actually, in this case you'll want a custom submethod BUILD
17:14 ChoHag_ Oh no. wait. There's a difference between my SetHash $s; and my $s =;
17:15 ChoHag_ I thought 'my Foo $x' would autovivify $x to a when necessary?
17:15 [Coke] autarch: where is your copy of P2H?
17:15 timotimo no, it won't
17:15 timotimo for a $x you always have to .new
17:15 autarch [Coke]:
17:17 ZoffixWin Ox0dea, the primary deliverable was the Perl6 *language*. As a cherry on top, we also go the Rakudo compiler implementing it, which does have some kinks to iron out still (as was stated in the release notes). You can think of Perl 6 language being the HTML5 spec and Rakudo being Chrome 47
17:17 skids m: sub increment ($b is rw) { my $fetched = False; FETCH => -> $ { "fetched".say; $fetched = True; $b + 1 }, STORE => -> $, $ { } ) but role { method sink { "sunk".say; $b++ unless $fetched } } }; my $a = 1; increment($a); $a.say;
17:17 camelia rakudo-moar 9441bb: OUTPUT«fetched␤fetched␤fetched␤fetched␤fetched␤fetched␤sunk␤1␤»
17:18 ChoHag_ Grr. Again. There's *got* to be a sane way to do this.
17:18 autarch Rakudo is more like Chrome 8 or 10, I think ;)
17:18 ChoHag_ How can I define Foo and Bar clases in separate files when Foo has methods which take a Bar and Bar has methods which take a Foo?
17:18 * skids trying to provide workable examples to people trying to emulate old "wantarray" behaviors, for context.
17:19 ZoffixWin ChoHag_, you can try stubbing:   class Foo { ... }
17:19 ZoffixWin (literally ... )
17:19 ChoHag_ Then compiling the file with the stub complains that the stub isn't completed.
17:19 ZoffixWin Ah, then I dunno :(
17:19 ChoHag_ Or at least it did a while back.
17:20 ZoffixWin skids, wasn't it decided wantarray was a horrible thing? :P
17:20 pochi what if you declare class Foo and Bar as wmpty, then in the Foo/ write augment class Foo/Bar?
17:20 pochi *empty
17:20 ChoHag_ Hmm that seems to no longer be the case...
17:20 skids ZoffixWin: yes, but we need a more polite way to show them how to acheive things if they really want to.
17:20 [Coke] autarch: I cannot check that out and "panda install ." because I already have a version of p2h installed. any suggestions?
17:20 skids (and try grepping for it in your P5 ase modules :-)
17:21 skids *base
17:21 ZoffixWin [Coke], use --force ?
17:21 autarch [Coke]: I've just been using PERL6LIB to make use of it
17:21 autarch or use --force or use lib
17:21 [Coke] force dies with "Could not find Pod::To::HTML::Renderer"
17:22 skids We tell people instead of wantarray, return a lazy object, then don't show them how, so I'm working on that.
17:22 ChoHag_ skids: That's just how documentation works isn't it?
17:22 ChoHag_ If I had a penny for every time I've seen documentation which effectively amounted to "This is deprecated, now fuck off"...
17:23 skids Well, considering this will be a point of frustration in that we are saying "no you can't" it is one of those places where examples help a lot.
17:23 ChoHag_ /s?
17:23 Ox0dea autarch: Is your nick meant to be interpreted as "governance by oneself"?
17:23 llfourn joined #perl6
17:24 mue joined #perl6
17:24 autarch Ox0dea: more like "I was a bit obsessed with this series of books when I picked it -"
17:25 kaare_ skids++ examples ftw
17:25 skids Note we can kind of get the "void context" working without the Proxy, except for some corner cases where we end up with spooky action at a distance.
17:25 Ox0dea autarch: Ah, it's a real word, then. I had the etymology right, at any rate.
17:25 autarch yes, it's a real word
17:26 skids m: sub increment ($b is rw) { ( $b + 1 ) but role { method sink { $b++ } } }; my $a = 1; increment($a); $a.say; my $b = increment($a); "$a $b".say;
17:26 camelia rakudo-moar 9441bb: OUTPUT«2␤2 3␤»
17:27 skids But if you ever manage to sink what's in $b it's trouble.
17:27 zengargoyle joined #perl6
17:28 [Coke] What command line are you using to get PERL6LIB to work?
17:29 * skids wonders if there's a complementary method called when something is "not sunk"
17:32 yqt joined #perl6
17:35 [Coke] will panda ever get an uninstall?
17:35 autarch [Coke]: PERL6LIB=../Pod-To-HTML/lib/ perl6 ./htmlify.p6 --typegraph
17:36 flussence install is just a thin wrapper around CompUnit code, so I'd guess that would need a method for it first
17:36 autarch is there any easy way to deep clone an object?
17:36 [Coke] I get undeclared routine "pod2html"
17:37 autarch [Coke]: oh, you also need my branch of the doc site
17:37 dalek doc/autarch/use-new-pod-to-html: bb2165a | (Dave Rolsky)++ | / (6 files):
17:37 dalek doc/autarch/use-new-pod-to-html: Work in progress on using my new version of Pod::To::HTML
17:37 dalek doc/autarch/use-new-pod-to-html: review:
17:37 autarch
17:37 autarch I hadn't pushed it yet
17:38 pierre-vigier joined #perl6
17:38 awwaiid autarch: do you've moved the converter to be embedded in doc repo, eh?
17:39 autarch awwaiid: I can't that sentence ;)
17:39 awwaiid oh maybe not
17:39 Begi joined #perl6
17:39 awwaiid I thought you embedded Pod::To::HTML into the main doc repo somewhere
17:39 autarch no, definitely not
17:39 lustlife` joined #perl6
17:40 autarch but the doc site will have its own custom subclass of PTH - that way we only need to do one pass per document, rather than two as it does now
17:40 awwaiid ah, so lib/DocSite/Pod/To/
17:40 awwaiid is a renderer
17:40 skids autarch: lol I'm stealing "I can't that sentence" someday
17:40 awwaiid I see
17:40 autarch yeah, maybe should be renamed to add "/"
17:40 xinming joined #perl6
17:40 ShimmerFairy could also call it something like Pod::To::DocHTML :P
17:41 autarch ShimmerFairy: no - I really think all the modules in the doc repo need their own prefix. Calling them Perl6::This and Pod::That is _very_ confusing
17:41 autarch if they're for general use, they need their own distro - if they're custom to this app they should not be using generic namespaces
17:41 awwaiid or maybe localize the name, DocSite::Renderer::HTML
17:44 [Coke] ok, I was able to run it with --sparse=1000 and get a result.
17:44 awwaiid autarch: you have a branch for a modified Pod::To::HTML too then, eh?
17:44 autarch awwaiid:
17:44 awwaiid oh I found it
17:45 awwaiid sweet
17:46 awwaiid ah cool. Another thing we talked about a few days ago is having a separate POD extractor outside of rakudo, and maybe adding an explicit notation for the (few) cases where POD needs a runtime
17:46 [Coke] now I can dig. Danke.
17:46 Zoffix joined #perl6
17:46 Zoffix joined #perl6
17:47 mue joined #perl6
17:48 autarch awwaiid: yeah, someone pointed me at SUPERNOVA - which looked like a big improvement
17:48 awwaiid oh right. I need to check that out too
17:48 autarch that combined with the Pod::TreeWalker module I wrote would work well
17:49 * awwaiid clones all the things
17:49 awwaiid and it even comes with a lovely blog post
17:50 ChoHag_ I think perl 6's tagline could be There Are Even More Ways To Do it.
17:50 ChoHag_ Or perhaps s/Even More/Too Many/.
17:50 xinming_ joined #perl6
17:52 jast there's no such thing as too many ways to do it
17:52 woolfy joined #perl6
17:52 Ox0dea Perl: Over 9000 ways to do it.
17:53 Ulti one fewer ways than the number it takes for you to remember one of them
17:53 vendethiel joined #perl6
17:54 autarch Hmm, I just fixed a bug where Pod::To::HTML altered the underlying $=pod structure. I wonder if that caused the perf issue somehow?
17:54 * autarch grasps at straws
17:55 ChoHag_ Make Up Your Own Bloody Way.
17:55 kjs_ left #perl6
17:57 nexysno_ joined #perl6
18:00 xinming joined #perl6
18:05 xinming_ joined #perl6
18:05 lizmat joined #perl6
18:08 Zoffix m: say 42432.Rat.denominator == 1
18:08 camelia rakudo-moar 9441bb: OUTPUT«True␤»
18:08 Zoffix m: say 42432.34243.Rat.denominator == 1
18:08 camelia rakudo-moar 9441bb: OUTPUT«False␤»
18:08 nexysno_ p6: say [+] 100_000
18:08 camelia rakudo-moar 9441bb: OUTPUT«100000␤»
18:08 Zoffix p6: say [+] ^100_000
18:08 camelia rakudo-moar 9441bb: OUTPUT«4999950000␤»
18:09 Zoffix m: say [^] ^100_000
18:09 camelia rakudo-moar 9441bb: OUTPUT«Too many arguments in flattening array.␤  in block <unit> at /tmp/b0KQGelvhS line 1␤␤»
18:10 xinming joined #perl6
18:10 znpy joined #perl6
18:12 lsm-desktop ChoHag_ Or perhaps Every Way to Do It
18:13 cpage joined #perl6
18:13 nexysno_ p6: say [+] 1..100_000
18:13 camelia rakudo-moar 9441bb: OUTPUT«5000050000␤»
18:14 autarch no, I don't think that was the memory use issue :(
18:14 Zoffix m: say ((-1)**0.5).Complex.Rat.denominator == 1
18:15 camelia rakudo-moar 9441bb: OUTPUT«Method 'denominator' not found for invocant of class 'Num'␤  in block <unit> at /tmp/Jy6Ra01MY9 line 1␤␤»
18:15 dududuedu joined #perl6
18:15 Zoffix m: my $n = ((-1)**0.5).Complex; say $n
18:15 camelia rakudo-moar 9441bb: OUTPUT«NaN+0i␤»
18:15 Zoffix orly
18:15 Zoffix m: my $n = ((-1+0i)**0.5); say $n
18:15 camelia rakudo-moar 9441bb: OUTPUT«6.12323399573677e-17+1i␤»
18:15 Ox0dea m: [^] 1..5
18:15 camelia rakudo-moar 9441bb: ( no output )
18:15 Zoffix m: my $n = ((-1+0i)**0.5); say $n.Rat,denominator
18:15 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/i021e1gBB5␤Undeclared routine:␤    denominator used at line 1␤␤»
18:15 Zoffix m: my $n = ((-1+0i)**0.5); say $n.Rat.denominator
18:15 camelia rakudo-moar 9441bb: OUTPUT«Can not convert 6.12323399573677e-17+1i to Rat: imaginary part not zero␤  in block <unit> at /tmp/pdP2ztaxZx line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/pdP2ztaxZx line 1␤␤»
18:15 Ox0dea m: [**] 1..5
18:15 camelia rakudo-moar 9441bb: OUTPUT«Numeric overflow␤  in block <unit> at /tmp/Arxiohmdzm line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/Arxiohmdzm line 1␤␤»
18:16 Ox0dea What's going on there?
18:16 Ox0dea `[**] 1..4` doesn't cause it.
18:16 Zoffix Ox0dea, you're getting a massive number
18:16 Ox0dea Zoffix: Why?
18:16 Ox0dea Oh, it's right-associative.
18:17 Zoffix hm
18:17 Ox0dea Erm... no, 1**2**3**4**5 == 1 no matter how you cut it.
18:17 Zoffix m: say m: [**] 1..4
18:17 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Pkh_iidaoS␤Colons may not be used to delimit quoting constructs␤at /tmp/Pkh_iidaoS:1␤------> 3say m:7⏏5 [**] 1..4␤    expecting any of:␤        colon pair (restricted)␤»
18:17 Zoffix m: [**] 1..4
18:17 camelia rakudo-moar 9441bb: ( no output )
18:17 ShimmerFairy what's 2**3**4**5 though? :P
18:17 Zoffix m: say [**] 1..4
18:17 camelia rakudo-moar 9441bb: OUTPUT«1␤»
18:17 Ox0dea Zoffix: Why would I lie to you?
18:17 Zoffix ShimmerFairy, somethign entirely different?
18:17 Zoffix Ox0dea, I wanted to see the final answer
18:18 Ox0dea m: [**] 2..5 # ShimmerFairy
18:18 camelia rakudo-moar 9441bb: OUTPUT«Numeric overflow␤  in block <unit> at /tmp/WfgPKtxm2U line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/WfgPKtxm2U line 1␤␤»
18:18 Ox0dea That'd do it.
18:18 pierre-vigier joined #perl6
18:18 TimToady m: say [**] 3,4,5
18:18 camelia rakudo-moar 9441bb: OUTPUT«3733918487410200435329597541848665882254097767837340077506369317220790406172652512299936889388039772204687650654314751581087270545921608585813513369828091873141917485942625809388070199519564042855718180410466812887974029255176680123406172983965747316191523…»
18:18 ShimmerFairy Ox0dea: the problem is that you're calculating 2 to the power of a number that's 489 digits long; it just doesn't get to the "obvious" 1**... part :)
18:19 Ox0dea ShimmerFairy: It'd be nice if it could.
18:19 TimToady m: say [**](3,4,5).chars
18:19 camelia rakudo-moar 9441bb: OUTPUT«489␤»
18:19 Ox0dea How to bignum literals?
18:19 TimToady m: say 2**489
18:19 camelia rakudo-moar 9441bb: OUTPUT«1598335257761788022467377781654101148543282249044465229239888363328190330275719997501596724768507889233831388734160190922469363547795602076820570112␤»
18:19 llfourn joined #perl6
18:19 TimToady oh wait
18:19 flussence I think that gives you the bytes needed to store the answer at any rate
18:20 TimToady 2 ** <489 digit number>
18:20 Ox0dea What needs to be different in `[**] 1..5` to have it evaluate to 1?
18:20 ShimmerFairy Ox0dea: the huge number caused by [**] 3,4,5 is how many bits you'd need for the exponent to 1**x there, it's quite a bit :P
18:20 ShimmerFairy flussence: bits, not bytes :)
18:20 flussence oh, derp
18:20 ShimmerFairy m: say ([**] 3,4,5) / 8 / 1024 / 1024 / 1024
18:20 camelia rakudo-moar 9441bb: OUTPUT«4346853223874001339228820919348702163265666188482823871898429139075789607796646319678911112002143371157217364122991859425193712285162891011933695256975586378413622134764010330415412550232796979667290789553042050553455517225871654371039677625482142106852871…»
18:20 TimToady that's still more bits than are in the universe
18:21 Zoffix m: say 2.0.WHAT
18:21 camelia rakudo-moar 9441bb: OUTPUT«(Rat)␤»
18:21 TimToady in theory we could violate the right associativity to see that there's a 1 on the left, but the use case is rather minimal
18:22 Zoffix m: say '2.0'.WHAT
18:22 camelia rakudo-moar 9441bb: OUTPUT«(Str)␤»
18:22 Ox0dea $ ruby -e 'p (1..5).reduce :**'
18:22 Ox0dea 1
18:22 TimToady ruby gets the associativity wrong
18:22 ShimmerFairy TimToady: the number of YiB needed is a number 464 digits long, we definitely need more room O_o
18:22 TimToady well, "wrong"
18:22 mue joined #perl6
18:23 TimToady left folding everything is a different kind of consistency
18:23 Ox0dea The best kind?
18:23 TimToady it's not consistent with saying "it's just like writing out the operator between each term"
18:24 Ox0dea You're right.
18:24 uruwi m: say ([**] 3, 4, 5).chars
18:24 camelia rakudo-moar 9441bb: OUTPUT«489␤»
18:24 Ox0dea That said:
18:25 uruwi m: say ([**] 3, 4, 5).base(2).chars
18:25 camelia rakudo-moar 9441bb: OUTPUT«1624␤»
18:25 uruwi 1624 bits.
18:25 Zoffix m: say (1..5).reduce: * ** *
18:25 camelia rakudo-moar 9441bb: OUTPUT«1␤»
18:25 Zoffix Ox0dea, ^
18:25 Zoffix I'm kinda bummed about this:
18:25 ShimmerFairy m: say 1 ** 2 ** 3 ** 4 ** 5
18:25 Zoffix m: say (1..5).reduce: ****
18:25 camelia rakudo-moar 9441bb: OUTPUT«Numeric overflow␤  in block <unit> at /tmp/JiSy7ScOIt line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/JiSy7ScOIt line 1␤␤»
18:25 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7MVakT8P1c␤Missing required term after infix␤at /tmp/7MVakT8P1c:1␤------> 3say (1..5).reduce: ****7⏏5<EOL>␤    expecting any of:␤        prefix␤        term␤»
18:25 athos left #perl6
18:25 RabidGravy joined #perl6
18:26 ShimmerFairy Zoffix: same as trying to use the list repetition op like $foox5, to me :)
18:26 TimToady Zoffix: that's parsed as ** **
18:26 Ox0dea Should it be?
18:26 mst see ALL the stars
18:27 * Zoffix recalls a conversation proposing a unicode char for Whatever Star :)
18:27 zengargoyle joined #perl6
18:27 Ox0dea Zoffix: '* is a Unicode character.
18:27 Ox0dea *'*'
18:27 mst Zoffix: that totally has to be a release codename for r* at some point
18:27 Zoffix Ox0dea, and everyone else knows what I meant
18:27 Ox0dea Precision matters.
18:28 virtualsue joined #perl6
18:28 TimToady m: say (1..5).reduce: *[**]*
18:28 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Fx5uTC0HVJ␤Missing required term after infix␤at /tmp/Fx5uTC0HVJ:1␤------> 3say (1..5).reduce: *[**]*7⏏5<EOL>␤    expecting any of:␤        prefix␤        term␤»
18:28 Zoffix Being overly pedantic can be annoying.
18:28 TimToady I guess that turns into a subscript postfix
18:28 mst Zoffix: or mauke
18:31 Ox0dea m: 1.^methods.sort
18:31 camelia rakudo-moar 9441bb: OUTPUT«Method object coerced to string (please use .gist or .perl to do that)  in block <unit> at /tmp/U3lnI3nD7Q line 1␤Method object coerced to string (please use .gist or .perl to do that)  in block <unit> at /tmp/U3lnI3nD7Q line 1␤Method object coerced to…»
18:31 Zoffix m: say (1..5).reduce: ★**★
18:31 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kvjj8ZfRsn␤Bogus term␤at /tmp/kvjj8ZfRsn:1␤------> 3say (1..5).reduce:7⏏5 ★**★␤    expecting any of:␤        argument list␤        infix␤        infix stopper␤        postfix␤       …»
18:32 Zoffix purty
18:32 RabidGravy well at least we're not getting the disco partay colour effects anymore
18:32 Ox0dea m: 1.ACCEPTS(2) # Can't we all just get along?
18:32 camelia rakudo-moar 9441bb: ( no output )
18:32 Zoffix m: say 1.^methods.WHAT
18:32 camelia rakudo-moar 9441bb: OUTPUT«(List)␤»
18:33 Zoffix m: say 1.^methods.reverse
18:33 camelia rakudo-moar 9441bb: OUTPUT«(Numeric DUMP ACCEPTS gist Str Bool perl new WHICH atan asinh cotanh Complex roots asech cosech cis cos asin rand succ isNaN sec Real acotanh tanh sinh truncate acosh exp log atanh log10 unpolar sech acosec acos cosh acotan asec pred cosec atan2 conj acose…»
18:33 Ox0dea Having to say `say` is really annoying.
18:33 Zoffix m: say 1.^methods.sort
18:33 camelia rakudo-moar 9441bb: OUTPUT«Method object coerced to string (please use .gist or .perl to do that)  in block <unit> at /tmp/oLfnSaHcpH line 1␤Method object coerced to string (please use .gist or .perl to do that)  in block <unit> at /tmp/oLfnSaHcpH line 1␤Method object coerced to…»
18:33 Zoffix That's probably that same old .sort bug
18:33 Ox0dea It's just warning about Methods being implicitly coerced to strings.
18:34 Zoffix Ox0dea, that's been discussed before and since making it auto-say would cover up some of the possible sink bugs, we left it as mandatory
18:34 ShimmerFairy m: say 1.^methods».name.sort
18:34 camelia rakudo-moar 9441bb: OUTPUT«(ACCEPTS Bool Bridge Complex DUMP FatRat Int Num Numeric Range Rat Real Str WHICH abs acos acosec acosech acosh acotan acotanh asec asech asin asinh atan atan2 atanh base ceiling chr cis conj cos cosec cosech cosh cotan cotanh exp expmod floor gist is-prim…»
18:34 Zoffix Ox0dea, ah, k
18:34 Zoffix m: 1.^methods.first.WHAT.say
18:34 camelia rakudo-moar 9441bb: OUTPUT«(Method)␤»
18:35 Ox0dea m:
18:35 camelia rakudo-moar 9441bb: OUTPUT«Cannot make a Method object using .new␤  in block <unit> at /tmp/ay0tBiL2At line 1␤␤»
18:35 Ox0dea Why not?
18:35 Zoffix m: say
18:35 camelia rakudo-moar 9441bb: OUTPUT«Cannot make a DateTime object using .new␤  in block <unit> at /tmp/Zo64x6bJph line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/Zo64x6bJph line 1␤␤»
18:36 Zoffix m: say :2015year :12month :31day :23h :23m :23s
18:36 camelia rakudo-moar 9441bb: OUTPUT«2015-12-31T00:00:00Z␤»
18:36 Zoffix \o/
18:36 patrickz joined #perl6
18:36 uvtc joined #perl6
18:37 Zoffix Roast is failing for me:  two in t/spec/S32-io/socket-recv-vs-read.t
18:38 Zoffix m:
18:38 camelia rakudo-moar 9441bb: OUTPUT«WARNINGS for /tmp/9PADq7zWua:␤Useless use of "-" in expression "" in sink context (line 1)␤True␤»
18:38 Zoffix m: -2 .is-prime.say
18:38 camelia rakudo-moar 9441bb: OUTPUT«False␤»
18:38 znpy joined #perl6
18:39 uvtc Was looking for a Perl 6 mode for Emacs. Is the suggestion at out of date? Instead, I did `M-x package-refresh-contents` and `M-x package-install RET perl6-mode` and I now have which appears so far to work with .pl6 files.
18:40 Ox0dea Why "twigil", etymologically?
18:41 mst I would imagine that, if it wasn't on the critical path for the 6.c release on the 25th, it's entire possible nobody even remembers what that page -is- let alone has checked if it's up to date recently
18:41 Zoffix k, sent a PR for the is-prime stuff and added extra tests for this in roast:
18:41 Zoffix That's for RT#127044
18:42 TimToady well, it's a secondary sigil, and 's' was already taken :)
18:42 TimToady so we went with 'two' instead
18:42 mst uvtc: hmm, jhrockway's thing got a commit as late as Mar 2014
18:42 mst so I'd expect most of it to work
18:42 mst it's probably worth adding the hinrik one though
18:42 mst tells you how to put a patch together
18:42 mst uvtc++ # well volunteered
18:44 Ox0dea Will there be a Perl 7?
18:44 Zoffix Ox0dea, no
18:44 Ox0dea Should we call Perl 6 Perl?
18:45 Zoffix Ox0dea, considering there's Perl 5, calling it "Perl" is inherently ambiguous
18:45 mst that would just confuse people, since perl5 and perl6 are noticeably different languages
18:45 Zoffix Ox0dea, kinda like saying "I'm going go play Far Cry" is ambiguous, since there are several different—albeit similar—games with that name
18:46 Ox0dea Zoffix: But X unambiguously refers to X11, for instance.
18:46 mst "time to write some lisp" # that's nice, dear, did you mean CLISP, scheme, clojure, or scripts for Igor's part in the christmas play?
18:46 Zoffix I've not heard of anyone using X9 or X5 for anything
18:47 Ox0dea Zoffix: Precisely?
18:47 Zoffix Ox0dea, what?
18:47 mst if you just say 'perl', people will assume perl5
18:47 blub mst: clisp is an implementation not a language
18:47 mst if you want to be precise, say 'perl5' or 'perl6' explicitly
18:47 Ox0dea mst: Will it always be this way?
18:47 Ox0dea hi blub
18:47 blub hi ox0dea
18:48 mst Ox0dea: dunno. build a time machine and go find out.
18:48 Zoffix Ox0dea, yes, both languages are actively developed.
18:48 mst on a long enough timeline, everybody who remembers either language will be dead, after all
18:48 uruwi I too wish Perl 6 was called something else
18:48 mst blub: common lisp isn't a programming language? you could've fooled me.
18:48 Ox0dea I wish it were called Perl. :<
18:48 Zoffix uruwi, it's too late now
18:48 Zoffix TOO lATE! :D
18:48 mst uruwi: when things seem ambiguous I call the spec Camelia and the compiler Rakudo
18:49 Ox0dea mst: Then what do you call the mascot?
18:49 Zoffix Now that we released, at least we have an easy way to dismiss all the name bikesheds -_-
18:49 mst Ox0dea: that -ing stupid butterfly
18:49 Zoffix rofl
18:49 flussence the only language I've seen using version numbers in a similar way with enough forward and backward compatiblity to omit the number is HTML
18:49 Ox0dea flussence: And Python.
18:49 dalek e0e1060 | (John Gabriele)++ | source/whatever/index.html:
18:49 dalek Added link to hinrik's perl6-mode for Emacs
18:49 dalek review:
18:49 mst and look how well that worked out for them
18:49 grondilu omg the name thing again.  jeez
18:49 uruwi The time will come when people will invent names for Perl 6.
18:49 Zoffix HTML is a fucking mess
18:49 mst Ox0dea: except as of 3 python no longer has nearly enough forward/backward compatibility to count
18:50 mst you have to specify python2 or python3
18:50 mst anyway
18:50 mst there is a perl family of languages
18:50 flussence .oO( and python 2 with/without broken SSL, as of a few weeks ago )
18:50 uruwi I think most people moved to py3.
18:50 mst it has two current main members, perl5 and perl6
18:50 mst uruwi: hahahahahahahahahahaha you're so cute
18:50 mst say that on hacker news. bring your asbestos suit, the flamewar will be epic
18:51 uruwi ..?
18:51 Zoffix :D
18:51 grondilu it's made by the creator of Perl, who wanted to call it Perl as well.  It's the sixth version of it.  So it's "Perl 6".  That's all I need to know.
18:51 mst there's a huge number of python2 deployments
18:51 mst grondilu: well, more importantly
18:51 mst "perl5 and perl6 are sister languages in the same family"
18:51 mst is what and -both- say
18:51 mst so there's absolutely consensus about that
18:52 Ox0dea I thought Ruby had cribbed "\C-a" literals from Perl. That seems to not be so.
18:52 mst I'm pretty sure we did double check Larry didn't object before we did that
18:52 mst but it was part of a community groundswell because we were *all* sick of having this conversation
18:52 blub mst: no one abbreviates common lisp to clisp, because that generally refers to a specific, shoddy implementation of it
18:52 mst Ox0dea: so ,please use the terms given on the websites. if you don't like those terms, please hate them quietly.
18:52 CIAvash TimToady: Can you please take a look at the question I asked before?
18:53 grondilu now that Perl 6 is out, if the Perl 5 community wants a new major version of "their perl", they can just call it "Perl 7", and that's it.
18:53 mst grondilu: please don't
18:53 Ox0dea mst: You don't seem to hate having this conversation.
18:53 mst grondilu: please don't make things up that will cause huge drama, that larry and I spent an entire summer killing :)
18:53 Zoffix Ox0dea, mst wrote this:
18:53 mst Ox0dea: that's because #perl6 values niceness. inside I'm trying to set you on fire with my mind for bringing it up.
18:54 Zoffix lol
18:54 gugod joined #perl6
18:59 ilbelkyr joined #perl6
18:59 grondilu are you Matthew S. Trout?  If so, I love your "state of the velociraptor" talks :)
19:00 RabidGravy *fuck he isn't is he* ? ;-)
19:00 grondilu mst: ^
19:00 mst I am, yes, though I was getting stale so in a Doctor Who like spirits, those are now given by Sawyer X
19:01 RabidGravy does that mean we get to kill you and you come back as someone else?
19:01 pierre-vigier joined #perl6
19:01 flussence and will Sawyer X turn into Sawyer Wayland in the near future?
19:01 ChoHag *looking like* someone else.
19:02 grondilu mst: completely not related to perl, but has anyone ever told you you look like astrophysicist Alex Filippenko?
19:03 mst normally people think I look like death metallers of various stripes ;)
19:04 grondilu well, that too.  But that's less peculiar :)
19:04 flussence they're probably basing it off pictures then and haven't seen you on stage :D
19:07 mst oh, Filippenko is also bouncy?
19:07 atweiden joined #perl6
19:07 mort96 joined #perl6
19:07 mort96 hey
19:08 mort96 anyone here?
19:08 deniska no, totally not
19:08 havenwood mort96: Yes.
19:08 mst lots of people
19:08 vendethiel dozens of people :P
19:08 flussence only 300 or so
19:08 mst but IRC channels often pause until somebody says something
19:08 havenwood The we all talk at once.
19:09 mort96 well
19:09 jast not all, I successfully resisted the temptat... dangit
19:09 mst we were just taking a breather after the latest round of "let's get really pedantic about the naming of perl5 and perl6", which the people who've been here for a while obviously LOVE as a conversation because we've had so much practice :D
19:09 mort96 I just tried to install perl 6 via rakudobrew
19:09 mort96 it... nuked every directory in $PATH, including /bin and /sbin
19:09 timotimo um, wat
19:10 timotimo wtf :<
19:10 RabidGravy cOOooOOoool
19:10 timotimo tadzik: fix this immediately
19:10 mst timotimo: let's try figuring out what actually happened first
19:10 timotimo ... yeah
19:10 flussence I guess... nobody's ever run it as root before?
19:10 ChoHag Is there a perl6-compatible major mode for emacs?
19:11 ChoHag Or a vim-equivalent for vim?
19:11 mst ladies, gentlemen, and mongers, let's try diagnosing rather than guessing
19:11 flussence there's a vim one
19:11 mort96 I cloned the git repo to ~/.rakudobrew, ln -s'd /home/<myname>/.rakudobrew/bin/rakudobrew to /usr/bin/rakudobrew, tried `rakudobrew build moar`, it said I needed root, so I ran `sudo rakudobrew build moar`
19:11 mst ChoHag: somebody a bit further up mentioned hinrik having an emacs perl6 mode
19:11 flussence
19:11 timotimo flussence: why would you ever run rakudobrew as root?
19:11 Arrowhead joined #perl6
19:11 mst mort96: oh yay
19:11 uvtc ChoHag, yes, see .
19:11 mort96 symlinking it like that may have been a bad idea, but maybe should make sure it doesn't break your system
19:11 ChoHag Who or what is hinrik?
19:11 mst right, so, you're running one of the stupid-arse 'modern' linuxes that don't have a real /bin
19:11 timotimo mort96: what said you need root?
19:11 mst ChoHag: github user
19:12 mst timotimo: dude.
19:12 RabidGravy ChoHag, I think the vim one got rolled into the main per thing
19:12 mort96 rakudobrew did
19:12 mst I already know what happened.
19:12 mort96 I have a real /bin..
19:12 mst that's ... pants on head hilarious
19:12 timotimo why would rakudobrew claim you need root? :\
19:12 RabidGravy I'm with you
19:12 mort96 idk
19:12 mst timotimo: it didn't
19:12 RabidGravy it needs a readlinkin there
19:12 ChoHag mst: I remember seeing one of those bin-less things. I though it was an elaborate joke.
19:12 mort96 it tried to git clone something, which said it needed root
19:12 mst mort96: it could've killed /usr/bin/*
19:12 mst unlink()ing
19:12 jast I can find an unlink call and a remove_tree call in rakudobrew. both don't iterate over PATH.
19:13 ChoHag Atually I didn't, but I tell myself that because the alternative is believing people did it seriously.
19:13 mst right, if your /bin is now empty
19:13 mst that means your /bin was either a symlink or something similar to /usr/bin
19:13 mort96 no
19:13 mst but, yes, this code will totally wipe out /usr/bin if you symlink it into there
19:13 mst mort96: well, it only unlinks the content of a single directory
19:13 timotimo of course rakudobrew thinks it's allowed to wipe out all the contents of its bin folder
19:13 mst I'm looking at the code
19:13 mort96 it cleared /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin, and ~/.bin
19:13 smls joined #perl6
19:13 mst you're welcome to present a different theory
19:13 mst but there physically isn't code that would do that
19:13 timotimo it has to, in order to do stuff cleanly
19:14 mst no, actually, it doesn't have to
19:14 mort96 at least according to zsh's autocomplete with cd... can't ls >.<
19:14 smls o/
19:14 gfldex can i have adverbs on prefix-operators?
19:14 smls Coming home from Christmas-related family visits, to see Perl 6 released!
19:14 mst rewriting that part is on my list
19:14 timotimo mort96: oh, hehe
19:14 jast rakudobrew doesn't even use PATH anywhere...
19:14 flussence mort96: got busybox on your system at all?
19:14 smls Nice present
19:14 timotimo mort96: zsh will not complete files if you cd + tab complete
19:14 mort96 I probably have some kind of rescue thing
19:14 timotimo so you wouldn't ever see files with that method
19:14 smls Even some positive reactions to Perl 6 on hackernews... ;)(
19:14 ChoHag If your PATH's directories have gone and you don't know how to build unix from scratch, it pretty much means it's time to reinstall.
19:15 smls TL;DR: Congrats, everyone.
19:15 jast shouldn't be too hard to recover with a boot CD
19:15 mort96 timotimo: yes, it does; I see core_perl, site_perl, and vendor_perl
19:15 ChoHag If you do know how to build unix from scratch, it also pretty much means it's time to reinstall because who has time for that?
19:15 timotimo aren't those folders, too?
19:15 jast yeah, those are all directories
19:15 mort96 oh right
19:15 mort96 I'm stupid.
19:15 timotimo no, you are not
19:15 jast try tab completing with 'cat /bin/<TAB>'
19:15 timotimo this is stuff you wouldn't have to know
19:15 jast that will complete files, too
19:16 mst timotimo: of course he is
19:16 mst learning to program is fundamentally (a) become less stupid (b) discover how much more stupid you are than you originally thought (c) goto a
19:16 mort96 well, cat is in /bin, so.. lol
19:16 timotimo as long as zsh thinks it could autocomplete that, it'd be fine
19:16 jast you don't have to run it, just put something other than 'cd' in first place so zsh chooses a different tab completion strategy
19:16 ChoHag mst: d) Realising that human =, ==, := and === stupid.
19:16 ChoHag I wish more developers reached d...
19:16 mort96 just doing /usr/bin/<tab>, I can see files
19:16 mst ChoHag: I realised that a long time ago. then it took me several more years for (e) realising I'm human too
19:16 mort96 so mst: you're probably right that it only deleted /bin and /usr/bin
19:17 timotimo mort96: that'll probably only show you files with +x
19:17 ChoHag Well now, e really is wishful thinking.
19:17 mort96 wait, only deleted /bin*
19:17 mst mort96: it'll have unlink()ed anything in the directory it was running in
19:17 jast that means you can probably ask your package manager to reinstall coreutils etc.
19:17 mst so if you symlinked into /usr/bin you killed /usr/bin/*
19:17 mort96 timotimo: ya, but files in my $PATH are generally +x'd
19:17 timotimo right :)
19:17 mst the question then becomes what the best fix is
19:17 flussence oh well, at least stuff in bin directories is easily replacable...
19:17 ChoHag Has anyone berated mort96 yet for running this as root?
19:18 timotimo mst: ideally, rakudobrew would flat-out refuse to run as root, or run with its bin/ folder symlinked
19:18 flussence enough people have
19:18 mst to we think the list of executables shipped with rakudo is basically static?
19:18 ChoHag And questioned the location of the backups and viability of the restore process?
19:18 timotimo mst: don't modules that nistall binaries put them there, too?
19:18 RabidGravy just going back a but the fix to rakudobrew is to readlink the executable to find the location it is installed, not use $0 blindly
19:18 timotimo ChoHag: i'm not so +1 on berating
19:18 mst ChoHag: something threw a "can't make install, did you mean sudo make install" type error at him and then he did what it suggested
19:18 ChoHag Well that's why I'm asking first...
19:19 jast okay, what system/distribution are you using? in debian and friends you can probably fix the most important stuff by doing, say, aptitude reinstall coreutils
19:19 mort96 ChoHag: it's not exactly uncommon to have to run package managers as root, so running `sudo !!` when a package manager complains about not being root kinda makes sense
19:19 mort96 arch linux
19:19 mst right
19:19 mst I mean, I wouldn't've done it when it said that
19:19 mst but it's totally reasonable that you did
19:19 timotimo mort96: rakudobrew isn't a package manager, though ... it's just like perlbrew: a way to have a perl(6) version in your home directory
19:19 timotimo emphasis on the "home directory"
19:20 jast the package is called coreutils in arch, too. but arch is a source-based distro, right? that might cause trouble during reinstall
19:20 mort96 lol, I've never touched perl before, so comparing it to perlbrew doesn't help much
19:20 llfourn joined #perl6
19:20 mort96 if by source-based you mean that it compiles things whenever you install things like gentoo does, then no, pacman uses binaries
19:21 jast could work, then
19:21 jast anyone already working on a pull request?
19:21 uvtc I like very much that rakukdobrew installs into my very own ~/.rakudobrew, and not anywhere else (like, say, /usr/local). Hm. Looks like it does something with ~/.perl6 as well.
19:21 mst for which part?
19:21 kaare_ mort96++ for testing the install process.
19:21 mort96 anyways, using pacman to reinstall things isn't going to work, considering pacman was in /bin
19:21 mst I'm currently staring at the rakudobrew source code and trying to figure out how to re-engineer it, yes
19:21 jast well, the immediate fix would be resolving links on the prefix
19:22 ChoHag mort96: Install and boot into new system, mount broken system, rsync the missing directories from the new installation to the broken system.
19:22 mue joined #perl6
19:22 ChoHag Be grateful that /boot and /etc are likely untouched and boot your now-fixed old system.
19:22 mort96 that would probably work ChoHag
19:22 atweiden mort96:
19:22 jast since the standard way to use rakudobrew is to clone the git repo, at least the symlinking case would be fixed... but copying rakudobrew to /usr/bin is still problematic
19:22 ChoHag Alternatively just reinstall without losing /home.
19:22 mst jast: how much do you know about the implementation of ?
19:22 atweiden rakudobrew is unnecessary
19:23 atweiden really unfortunate for your system to go like that
19:23 jast uhh... I know what's in the pod
19:23 timotimo does rakudobrew really clean out the bin it's run from?
19:23 ChoHag I long ago gave up trying to preserve linux systems. The installers are so damn easy these days.
19:23 mst timotimo: yes!
19:23 jast if the pod ain't lying, $RealBin should do the trick
19:23 mst it unlinks()s everything except itself from the entire directory
19:23 timotimo that's super, super, super, super weird.
19:23 mst jast: yes, but also, FindBin is basically terrible
19:23 mst so I'm pondering replacing it while I'm there
19:23 mort96 how about having rakudobrew use ~/.rakudobrew regardless of where the executable is?
19:23 timotimo ah, everything but itself
19:23 timotimo right
19:23 mort96 that way, using sudo would just make it install things in /root instead of nuking /bin lol
19:24 jast there might be valid reasons to not want to use ~/.rakudobrew
19:24 timotimo mort96: because we want people to be able to git clone it to different places
19:24 ChoHag Quick question, since I install the various components seperately and by hand, what exactly is rakudobrew?
19:24 timotimo also, so you can have .rakudobrew and .rakudobrew-dev if you want to hack .rakudobrew
19:24 timotimo or something
19:24 mort96 that kinda makes sense
19:24 timotimo ChoHag: it does the perl --gen-moar --gen-nqp and make install step for you
19:24 mst ChoHag: tadzik wrote a very small perl script to build the components for him, then it accidentally escaped
19:24 timotimo and it allows you to switch between different versions and revisions
19:24 timotimo and then it builds panda or zef for you, too
19:25 jast and several of these steps clean up its bin dir :)
19:25 mort96 anyways, I'll go find a USB stick and start rescuing my system
19:25 ChoHag Ah. A permanent temporary quick mission critical hack.
19:25 mort96 will be on a tablet
19:25 ChoHag I _love_ those.
19:25 timotimo mort96: sorry about this :\
19:26 mort96 It's k
19:26 flussence half the fun of arch is in breaking it and putting it back together :D
19:27 ChoHag mst: FWIW I've been meaning to get around to fixing up the install process ever since I found out that building everything seperately was easier.
19:27 ChoHag Perhaps this is my impetus to actually do it.
19:27 mst I must admit I'm now wondering if writing a new installer from scratch would be safer
19:28 ChoHag I have considered it - not much code will be lost.
19:28 CIAvash mort96: If you have a live cd you may be able to fix it with chroot
19:28 ChoHag Though I do so despise the CADT development model.
19:28 jast a new installer that provides the same "just add this to $PATH" workflow?
19:28 timotimo Can Ask, Don't Tell?
19:28 flussence that's kinda why I wanted distro packages... I already have a script to build everything but I feel a bit safer when it's done with seatbelts and a straitjacket
19:29 mst timotimo:
19:29 ChoHag flussence: That's my plan.
19:29 mst proposed patch:
19:29 ChoHag At least get something the major distros don't need to patch much (which can then also be backported) to get it to work in their ecosystem.
19:30 ChoHag mst: Is this the one?              unlink catfile($prefix, 'bin', $entry);
19:30 mst I was talking about a perl-build style tarball installer yesterday
19:30 mst ChoHag: yes. notice I've added some guard clause-age above it.
19:31 jast mst: not sure what that is supposed to accomplish? by the point your check runs, the loop has already skipped over rakudobrew itself due to the previous nexts
19:31 RabidGravy in the meantime can someone who hasn't drunk quite as much beer as I have today put a readlink in the bit that gets $prefix from $0
19:31 timotimo i think i'm a bit afflicted with CADT syndrome
19:31 mst jast: the shims are all hardlinks-to-self
19:32 jast oh, that is evil
19:32 mst RabidGravy: did you actually look at the patch I've just posted for discussion? because it totally does that :P
19:32 RabidGravy oh, I was probably in the kitchen
19:32 ChoHag timotimo: We all are.
19:32 ChoHag Knowing is half the battle. And the easy half.
19:33 mst oh gods DAMNIT
19:33 mst that's ... only going to work for existing stuff
19:33 timotimo well, that's what we get for recommending a piece of software that the original author never meant to get used like that ...
19:33 mst hrmf
19:33 ChoHag It's hard enough to restrain my own CADT tendencies at work that I hardly have the energy left to restrain the devs'.
19:33 mst rakudobrew works fine if you follow the instructions to the letter
19:33 mst if you try and do something other than what the instructions say, it tends to fail hard
19:34 mst because it was never designed as a mass consumption tool
19:34 jast so, documentation patch? ;)
19:34 timotimo yeah
19:34 flussence "please aim footgun at smallest toe"
19:34 ChoHag Simpler patch: sed '1{p;s/.*/exit 1/}'
19:35 mst ok, those comments were in a here doc. awesome.
19:35 pierre-vigier joined #perl6
19:37 Andrew_Scone joined #perl6
19:40 mst right, kicking off a moar build
19:40 mst let's see if this does what I wanted
19:40 ChoHag So what *are* the components of a complete Rakudo perl 6 installation? VM, NQP, Rakudo, Panda/Zef and modules?
19:40 mst yeah, pretty much
19:40 uvtc I've been running perl6 via `rlwrap perl6`.
19:41 mst thereby repl-icating your usual environment
19:41 uvtc Otherwise no command-line editing in the stock repl.
19:41 dsp- joined #perl6
19:42 Rotwang Hi, where does perl keep core modules installed with rakudo? I'm trying to debug a problem in the LWP::Simple module, but my debug prints aren't showing up
19:42 geekosaur >>> Simpler patch: sed '1{p;s/.*/exit 1/}' <<< portability police:    '1{;p;s/.*/exit 1/;}'
19:42 geekosaur (old commercial-unix sed)
19:42 kjs_ joined #perl6
19:43 ChoHag Sorry geekosaur. I usually test on bsd which is more fussy about these things but this box is linux.
19:43 Zoffix m: say $*REPO
19:43 camelia rakudo-moar 9441bb: OUTPUT«inst#/home/camelia/.perl6/2015.12-18-g9441bb2␤»
19:43 Zoffix Rotwang, ^
19:44 geekosaur I think bsd will take it. solaris < 10 won't
19:44 mst well, that completely didn't work. awesome/
19:44 geekosaur er, solaris < 11
19:44 Rotwang I see that modules get compiled to moarvm format, and they are not recompiled automaticaly if the source file is modified
19:44 Zoffix Maybe you're editing the wrong source file?
19:44 mst oh doh I'm an idiot
19:45 Rotwang Zoffix: no, I edited the correct one, when I removed my debug prints showed up
19:45 Zoffix Weird. Could be a bug
19:46 Rotwang Zoffix: btw. Dynamic variable $*REPO not found
19:46 Zoffix Rotwang, how old is your install?
19:46 RabidGravy Rotwang, I'd suggest cloning the module from github and working in the directory of the clone with perl6 -Ilib ...
19:46 atweiden in Config::TOML, I've been getting 'WARNING: unhandled Failure detected in DESTROY:' for months
19:46 atweiden in a 2015.12 release perl6 repl, this warning doesn't affect a Match variable
19:46 atweiden in a 2015.12 release `prove` test, this causes Test to think the variable is (Any) instead of (Match)
19:46 Rotwang Zoffix: it is the rakudo 2015.11
19:46 Rotwang on linux
19:47 atweiden IOW i can walk through the tests by hand, and they all pass, but when driven by `prove`, they fail
19:47 Zoffix Rotwang, time to upgrade :)
19:47 Zoffix Rotwang, we released the stable release on Christmas. Your version likely has a ton of bugs and/or features that were changed (including $*REPO)
19:47 Rotwang Zoffix: but latest rakudo * is 2015.11
19:48 Zoffix Rotwang, come to think of it, the LWP::Simple bug you're debugging is already fixed on newest perl
19:48 Zoffix Rotwang, hmh, right, we didn't release an R* yet
19:48 mst GOTCHA
19:48 Rotwang looking at master it isn't
19:49 Zoffix s/is already/is probably/;
19:49 mort96 Btw, mst, how are you fixing it? What will be the new behavior?
19:49 mst mort96: (1) follow symlinks so it'll create shims in rakudobrew's bin dir
19:49 mst mort96: (2) only unlink things that look like a rakudobrew shim
19:49 mst updated
19:49 mst ChoHag: ^^ thoughts?
19:49 mort96 That sounds good
19:50 mst I mean, obviously I want to rewrite, like, everything
19:50 mst because programmer
19:50 mst but I figure those two changes will make it stay working for anybody it's currently working for while becoming rather safer
19:50 mort96 Obviously
19:50 Zero_Dogg joined #perl6
19:50 Zero_Dogg joined #perl6
19:51 mort96 Fixing this bug is probably slightly more urgent than rewriting
19:51 ChoHag Considering that I don't know how rakudobrew actually works, that sounds good in principle.
19:52 ChoHag The devil's in the details though. "that look like" is easier for a human to interpret than a computer.
19:52 AndyDee joined #perl6
19:53 znpy joined #perl6
19:54 mst # found the issue for it, added the patch URL
19:55 pierre-vigier joined #perl6
19:55 mst none of the other extant bugs look quite as hairy
19:55 atweiden anyone wanting Config::TOML should install from panda with --notests
19:56 ilbelkyr joined #perl6
19:56 * atweiden goes to file multiple RTs
19:57 Rotwang RabidGravy: thanks for the hing
19:57 Rotwang where is the list of supported character encodidngs by perl6?
19:57 BenGoldberg joined #perl6
19:58 Ox0dea joined #perl6
19:58 flussence t/spec/S15-nfg/crlf-encoding.t has "<utf-8 ascii latin-1 windows-1252>"
19:59 mst timotimo: hey, are you going to check the patch, or is your willingness to help limited to yelling at tadzik?
19:59 flussence src/core/Rakudo/ also has "utf16" and "utf32" (with no endianness, wheee)
19:59 Zoffix .tell tadzik can you please merge this, as we have some extreme destruction for some users:
19:59 yoleaux Zoffix: I'll pass your message to tadzik.
20:00 mst Zoffix: I already linked the patch in the issue and /msg-ed tadzik the link
20:00 mst unsure how having github and yoleaux spam him as well helps :)
20:00 diakopter I'll merge it. bogotown for you if it's bad
20:00 mst what -would- help would be you testing I didn't brerak anything and reporting that on the issue :)
20:01 mst diakopter: ah, you have commit?
20:01 Zoffix Fuck that, I'm not deleing MY /bin :P
20:01 diakopter well hopefully it still works in the non symlink case
20:01 diakopter marged
20:01 mst alright, don't wait for me to test it then
20:02 diakopter lulz
20:02 chansen_ This is crazy
20:02 diakopter I mean, how bad can it hurt if you're only adding lines
20:03 yqt joined #perl6
20:03 * mst sets diakopter on fire, lovingly
20:03 diakopter I mean
20:03 Zoffix chansen_, what is?
20:03 mst honestly I'm pretty convinced it'll be fine
20:03 mst diakopter: can you link the issue to the PR and close the issue please?
20:03 * diakopter feels fiery
20:03 RabidGravy mmmm toasty
20:04 * mst breaks out the marshmallows
20:04 diakopter Zoffix did that
20:04 Zoffix It's still open tho
20:04 mst nobody ever listens to zathrus
20:04 * Zoffix notes GitHub doesn't magic with "Fix for #d+"
20:05 diakopter if I just click random button in github UI that should do it, right
20:05 flussence needs to be in "$verb $hashtag" format without the for in the middle, GH ain't that smart :)
20:05 Zoffix If by random button in github UI you mean "Close this issue" then sure :P
20:06 diakopter I think it's "Fixes #56
20:06 Zoffix Closes works too
20:07 diakopter #56
20:07 diakopter darn our bugtraq bot isn't the thing anymore
20:07 dalek doc: ce12262 | (Neil Shadrach)++ | doc/Language/ (2 files):
20:07 dalek doc: Fix minor typos
20:07 dalek doc: review:
20:07 dalek doc: a852eb4 | (Zoffix Znet)++ | doc/Language/ (2 files):
20:07 dalek doc: Merge pull request #275 from NeilShadrach/master
20:07 dalek doc:
20:07 dalek doc: Fix minor typos
20:07 dalek doc: review:
20:07 diakopter er what is it, not bugtraq
20:07 * flussence just fumbled around blindly wondering why this nqp ebuild wasn't doing anything java-related when I want it to... forgot to actually tell it to first.
20:07 diakopter RT
20:07 Zoffix #453532
20:08 flussence RT #123456 ?
20:08 flussence yep, dead
20:08 Zoffix It's symbot... or something and it doesn't appear to be in here
20:08 chansen_ Zoffix: merging before proper testing. That rakudobrew can wipe a directory it doesn't own. ...
20:08 diakopter chansen_: well obviously they were running as root
20:09 flussence they were running something *clearly labelled as rough and broken* as root, for that matter
20:09 mst chansen_: rakudobrew was tadzik's *personal* rakudo installer. it escaped.
20:09 diakopter I merge any commit that mentions SPARTACUS
20:09 chansen_ diakopter: obviously! Thats not an excuse!
20:09 Zoffix .oO( SPARTACUS? )
20:09 mst chansen_: I still remember the day I realised people had DBIx::Class 0.02-ish svn trunk in production
20:09 Rotwang looking at it occured to me that you can call a method of a class
20:09 chansen_ mst: hehe
20:10 Rotwang and the class is automatically instantiated?
20:10 flussence Rotwang: no, the class is still :U
20:10 mst chansen_: also you're doing the "I have no puncutation excvecpt for exclamation marks" thing again, which, like I told you the last four times, makes you come across as drunk and aggressive. please don't.
20:10 lnrdo joined #perl6
20:10 Rotwang flussence: but in the LWP::Simple code there is a lots of self.
20:11 flussence self.* refers to the type object there
20:12 Rotwang flussence: so If I had it instantiated then how would I reffer to object things?
20:12 mst I'm an array!
20:12 chansen_ mst: I don't like when people states the obvious, who would you nuke anything in /usr without running as root?
20:12 regreg joined #perl6
20:13 * chansen_ s/who/how/
20:13 mst chansen_: presumably you'd need to run chmod 777 first
20:13 flussence Rotwang: I don't quite follow what you're asking...
20:13 chansen_ mst: true
20:14 diakopter m: (my ::mst @){"foo"}
20:14 camelia rakudo-moar 9441bb: OUTPUT«Method 'instantiate_generic' not found for invocant of class 'Array[mst]'␤  in block <unit> at /tmp/AGQMMwbluB line 1␤␤»
20:15 Rotwang flussence: in python if I create an instance of a class, I can refer to this objects variables using self (or whatever I choose to call it)
20:15 sam-lap joined #perl6
20:15 Rotwang as I understand in perl6 self refers to class no object
20:15 Rotwang not*
20:15 flussence self refers to whatever the method was invoked from, which can be defined or undefined
20:15 mort96 Just tried moving things over from a live USB to the disk, now it boots but things are broken because lots of things aren't installed. I think I'll just reinstall everything.
20:15 Zoffix Rotwang, "object things" would be twiggiled stuff
20:16 mort96 Can't even log in in tty lol
20:16 Zoffix Rotwang, so you;'d access them with $!foo @!bar etc
20:16 mst Rotwang: I think that in a class method, self refers to the class, and in an object method, it refers to the object?
20:16 Zoffix mort96, damn -_-
20:16 blub hi camelia
20:16 diakopter I need a rakudobrewbrew to run:   git clone && cd rakudobrew/bin && ./rakudobrew build moar && ./rakudobrew build-panda && panda install Task::Star
20:17 sam-lap left #perl6
20:17 mort96 It's k, I have all my files on various servers and all configs in a git repo
20:17 pmurias flussence: re clearly marked as rough and broken, I'm pretty sure nobody expected rakudobrew to go around rampaging in /bin
20:17 Zoffix m: await IO::Socket::Async.connect('', 6667 ).then({given .result {.print("NICK Camelia_\nUSER NotCamelia localhost :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Hi, blub\n"); react {whenever .Supply {}}}})
20:17 mst diakopter: curl -L | sh
20:17 Camelia_ joined #perl6
20:17 Camelia_ Hi, blub
20:18 * Zoffix giggles
20:18 Zoffix This never gets old :P
20:18 camelia rakudo-moar 9441bb: OUTPUT«(timeout)»
20:18 mst pmurias: oh, absolutely
20:18 mst I think the point here is that while we totally needed to fix that
20:18 chansen_ mst: what if rakudobrew kept a manifest of installed files similar to how the port command/system work on BSD?
20:18 mst nobody should blame the original authors for it being broken
20:18 mst chansen_: what if you read my patch first and told me why that would be better
20:18 diakopter mst: I think I should sudo su -  before that, right?
20:18 Rotwang Zoffix: from what I see you can reffer to twigiled stuff in both cases (when you have a class instance and when you call method directly (static-kish)
20:18 flussence chansen_: at that point, you're just reinventing a system package manager poorly
20:19 mst diakopter: or chmod -R 777 /usr as root first
20:19 Rotwang in LWP::Simple there is this piece of code: self ?? $.default_encoding !! $.class_default_encoding
20:19 jdv79 m: class A {method a {self.say}};;A.a; # Rotwang
20:19 yoleaux 10:05Z <lizmat> jdv79: nothing happened in that area afaik
20:19 camelia rakudo-moar 9441bb: OUTPUT«␤(A)␤»
20:19 diakopter who's using "code" as a diminutive? or pejorative?
20:19 Rotwang so it means I have to distinguish myself if the method is run from the instance or standalone?
20:19 jdv79 lizmat: ok, i'll look into it then
20:19 jdv79 maybe
20:20 diakopter it filled my disk with SPARTACUS
20:20 jdv79 Rotwang: you can do that with the sig
20:20 Zoffix lol
20:20 jdv79 :U and :D
20:20 diakopter I wonder if I can buy the last 31 years of CCC bracelets on ebay
20:21 llfourn joined #perl6
20:22 chansen_ mst: I did read your patch but I have not read the whole rakudobrew script, I guess it works relaying on a magic cookie. I'll read the whole script and get back to you
20:22 chansen_ flussence: why poorly?
20:22 mst chansen_: yeah, and I picked a random line of the older code to fall back to
20:22 diakopter a magic 329MB cookie, yes
20:22 mst chansen_: 'sub rehash' is the culprit
20:23 mst note that I'm 99.9% sure I broke win32 shim -removal-
20:23 mst but that almost certainly doesn't matter currently
20:24 diakopter well if Perl 6 is wiping hard disks then at least it's not a surreptitious trojan virus
20:24 flussence «t/nativecall/01-basic.t ............... java.lang.NullPointerException» aaaargh
20:25 mst diakopter: we had a perl5 module written on win32 that managed to 'rm -rf /' during its tests on *n?x
20:25 mst that was really funny for the people running cpan as root
20:26 * diakopter is a bit fearful of checking today
20:26 mst chansen_: basically, if it had always used an explicit list of 'these are my shims', it'd be fine. but there's already installs that don't
20:26 * diakopter does it anyway
20:26 mst chansen_: so I figured regexp-as-heuristic was a reasonable compromise
20:26 Ox0dea $ sudo rm -rf /
20:26 Ox0dea [sudo] password for dea:
20:26 Ox0dea rm: it is dangerous to operate recursively on ‘/’
20:26 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_Xo8xyidjI␤Undeclared routines:␤    dangerous used at line 1␤    is used at line 1␤    it used at line 1␤    on used at line 1␤    operate used at line 1␤    recursively used at line 1␤    to us…»
20:26 Ox0dea rm: use --no-preserve-root to override this failsafe
20:26 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LgYrLySQ2V␤Undeclared routines:␤    failsafe used at line 1. Did you mean 'callsame'?␤    no-preserve-root used at line 1␤    override used at line 1␤    this used at line 1␤    to used at line 1. D…»
20:26 Ox0dea mst: ^
20:26 Ox0dea It's gonna be okay.
20:26 diakopter hrm, still bottom of the barrel at modulecounts
20:27 mst Ox0dea: no, I mean, it actually recursively removed /
20:27 flussence diakopter: I wouldn't pay too much mind to it. Some cultures care more about counting their lines of code than making the lines count :)
20:27 diakopter how is npm still growing 300 new modules per day during Christmas
20:28 Ox0dea mst: How did the `--no-preserve-root` flag get supplied accidentally?
20:28 Zoffix diakopter, don't they have community recommendation that new versions of modules get released in new repos?
20:28 Zoffix So those aren't new modules, just new uploads.
20:28 Ox0dea diakopter: JavaScript is eating the world.
20:28 mst diakopter: it's easy when you don't write docs or tests
20:28 Zoffix And reinvent the wheel for the gazillionth time
20:28 deniska_ joined #perl6
20:28 flussence .oO( maybe node has its own version of Net::FullAuto... )
20:28 mst Ox0dea: it didn't. one, that flag is non standard anyway, so none of your comments make any sense at all
20:29 Zoffix :P
20:29 diakopter Zoffix: they're new modules, really
20:29 mst Ox0dea: two, it's called a metaphor.
20:29 atweiden mort96: did you try `pacstrap /mnt base base-devel ...`
20:29 Zoffix diakopter, that's pretty crazy :o
20:29 mst Ox0dea: I -suspect- it was File::Path's remove_tree that got called with a bad path
20:29 mst but this was a lot of years ago
20:29 jdv79 m: class A {multi method a (A:D:){say "i am an object:",self};multi method a (A:U:){say "i am a class/type object:",self}};;A.a; # Rotwang
20:29 camelia rakudo-moar 9441bb: OUTPUT«i am an␤i am a class/type object:(A)␤»
20:29 mort96 No, because pacman is in bin
20:29 atweiden from a livecd
20:29 mort96 Pacstrap*
20:30 mort96 Didn't try that no
20:30 atweiden mount your fs in /mnt
20:30 mst mort96: on the upside, we did get the fix merged already
20:30 mst mort96: so you should hopefully only have to do this once :D
20:30 diakopter m: class mst does Hash {}
20:30 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yvwuKHtXXR␤Hash is not composable, so mst cannot compose it␤at /tmp/yvwuKHtXXR:1␤»
20:30 atweiden requires knowing how you installed your system though
20:30 diakopter mst: you cannot compose Hash
20:30 Zoffix m: class mst is Hash {}
20:30 camelia rakudo-moar 9441bb: ( no output )
20:30 mort96 Yay
20:30 * flussence keeps two copies of the OS installed on separate filesystems just in case
20:31 brrt joined #perl6
20:31 mst diakopter: no half-ops on this network, it'll work on
20:32 lnrdo joined #perl6
20:35 flussence it's a bit odd that modulecounts lists PEAR but doesn't have PECL, or combine both into one number. that's like omitting all XS stuff from the CPAN stats
20:36 Zoffix Submit a PR :P
20:36 Zoffix What I don't get is why it lists CPAN and CPAN (search)
20:37 pmurias Zoffix: so weird past different count issue
20:38 flussence does that differentiate them based on that weird 5-letter tag thing CPAN has?
20:38 mst 5-letter tag? do you mean the PAUSE id, which is 3 to 8 letters long
20:38 mst and is basically the precursor of $AUTHOR and $AUTHORITY
20:39 lnrdo joined #perl6
20:40 pmurias diakopter: is there a list of newly released npm modules somewhere?
20:41 Zoffix There's a list of recently *updated* packages
20:41 flussence mst: no, the other thing that listed a module's state in abbreviated form. I can't even find it any more so maybe it's gone
20:42 mst flussence: oh, that, yeah, that was part of the now-deprecated modulelist system
20:42 Zoffix DSLIP
20:42 mst it had been largely made of unmaintainium for a while
20:43 geraud joined #perl6
20:43 uvtc mst: hehehe
20:46 diakopter pmurias: well there are new package revisions uploaded more than once per minute, so I don't think 300/day is just new revisions
20:47 Zoffix Well, this is what these "packages" look like, so I'm not surprised:
20:47 pmurias Zoffix: I have just looked through them and most of the new ones seems to be crap
20:47 diakopter there's no crap on CPAN
20:47 kjs_ left #perl6
20:47 Zoffix No, not at all :P
20:48 flussence helps that I've never uploaded anything to it :D
20:48 diakopter how many of the Perl 6 modules are Acne
20:48 diakopter I mean Acme
20:49 Zoffix I'm not too keen on having Perl 6 on the top charts, TBH.... It both makes P6 programmers ridiculously cheap and invites the really stupid programmers to produce a ton of crap code (just look at PHP)
20:49 diakopter I don't think it does those two things
20:51 Zoffix I've seen some rather scary answers on StackOverflow
20:51 uvtc After using rakudobrew, I see I now have a ~/.perl6 directory as well. What's the purpose of the ~/.perl6 directory?
20:51 Zoffix uvtc, contains modules
20:51 flussence runtime precomp flotsam
20:51 Zoffix m: say $*REPO
20:51 camelia rakudo-moar 9441bb: OUTPUT«inst#/home/camelia/.perl6/2015.12-18-g9441bb2␤»
20:51 Zoffix flotsam?
20:51 diakopter jetsam
20:52 flussence "stuff"
20:52 autarch [Coke]: I realized that I may have had an outdated Rakudo & Moar installed - so I nuked and reinstalled - we'll see how the perf is now
20:52 diakopter is there a rakudobrew nuke command I haven't seen
20:52 autarch diakopter: rakudobrew nuke moar
20:52 diakopter ohhhh I was totally kidding
20:53 autarch diakopter: yeah, now I realize who you are, duh
20:53 Zoffix plot-twist: it actually nukes your /bin ^_^
20:53 autarch I thought doing "rakudobrew build moar" always got me the latest version, but maybe not - I was on 2015.11 until I nuked and did the build again
20:53 chansen_ mst: I have just scanned the rakudobrew script and I think your patch is fine for short term solution. For a longer term solution I think rakudobrew should keep track on whats is installed and only remove those files.
20:54 flussence “This is nqp version 2015.12 built on JVM” -- wooo, slight progress
20:54 meabreu joined #perl6
20:54 mst chansen_: I'm thinking have a shims dir, create them in there, symlink from the bin/ dir
20:54 mst chansen_: so you basically use "the contents of the shims dir" as the index
20:54 mst chansen_: hrm, though, win32
20:54 mst I'll have to think about it
20:55 skyl4rk joined #perl6
20:55 deniska_ joined #perl6
20:55 ChoHag What's the correct idiom for "return $foo if <it> <expression>"?
20:55 uvtc Zoffix, thanks, but after `panda install Acme::Meow` completes successfully, I still only see files under ~/.perl6 with (apparently) hashes for filenames...
20:55 ChoHag I remember reading somewhere that perl 6 could say that.
20:56 ChoHag return * if $foo ~~ Object?
20:56 chansen_ mst: yeah, or keep a manifest with installed filenames and SHA digests and only remove where those matches
20:57 Ox0dea Hey, yeah, how come post-conditionals don't implicitly smart-match?
20:57 ChoHag chansen_: That sounds suspiciously like a package manager, which anywhere other than a package manager would constitute wheel-reinvention.
20:57 atweiden flussence: any idea why using panda with --prefix="$sandbox..." doesn't install the module?
20:58 chansen_ ChoHag: I'm perfectly away of how source and binary package systems work ;)
20:58 Zoffix uvtc, because installation precompiles the modules
20:58 * chansen_ s/away/aware/
20:59 uvtc Zoffix, ah, thanks.
20:59 flussence atweiden: does that produce the usual "can't write to path" errors? I haven't tried system-installing panda yet
20:59 ChoHag Then you are perfectly aware of why we don't need Yet Another One.
20:59 atweiden it seems to work perfectly, it is only a problem when you go to `use JSON::Tiny`
21:00 pmurias Zoffix: second plot-twist, it actually nukes your /home if not run as root ;)
21:00 Zoffix :P
21:00 Ox0dea pmurias: /home or $HOME?
21:00 Zoffix Both!
21:00 atweiden flussence: my panda isn't installed system wide
21:00 ChoHag pmurias: I've been busy eating. Tell me that's hyperbole.
21:00 ChoHag Please tell me there isn't something which nukes /home.
21:00 flussence oh, I dunno then. I've just been letting panda install to ~/.perl6
21:00 ChoHag Or $HOME.
21:00 atweiden the panda/bootstrap script doesn't seem to acknowledge `--prefix` being passed to it
21:00 mst ChoHag: joke
21:01 Zoffix ChoHag, we're just joking
21:01 chansen_ ChoHag: We are talking about a convenient and safe way for developers to use rakudobrew, not a replacement for a port or packing system!
21:01 flussence atweiden: I wouldn't be surprised if it's just NYI, lemme read the code first
21:01 ChoHag chansen_: Having glanced (and at this point only glanced) through rakudobrew, my tentative conclusion is that safe does not and will not apply.
21:02 ChoHag Conveniently, developers can get away with safe-ish, so all is not lost.
21:03 pmurias ChoHag: it's just a lame joke ;)
21:04 deniska put a thing in a docker container and call it safe
21:04 flussence atweiden: yeah, line 219 respects --prefix, but 214 installs any deps ignoring it. that might be why
21:04 ChoHag As a sysadmin, it hits too close to home to be funny.
21:05 BenGoldberg m: sub foo { return * if 42; fail 'ouch' }; say foo;
21:05 camelia rakudo-moar 9441bb: OUTPUT«*␤»
21:05 chansen_ ChoHag: As a sysadmin you should be qualified to judge whats safe and not!
21:05 BenGoldberg m: sub foo { if 42 -> { return $^it }; fail 'ouch' }; say foo;
21:05 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fnO7RuBLcH␤Placeholder variable '$^it' cannot override existing signature␤at /tmp/fnO7RuBLcH:1␤------> 3sub foo { if 42 7⏏5-> { return $^it }; fail 'ouch' }; say f␤»
21:05 Ox0dea $ echo landline | tr denial '-~ fmr'
21:05 Ox0dea (Don't breathe this.)
21:06 BenGoldberg m: sub foo { if 42 -> $it { return $it }; fail 'ouch' }; say foo;
21:06 camelia rakudo-moar 9441bb: OUTPUT«42␤»
21:06 Zoffix m: sub foo { return * if 42; fail 'ouch' }; say (foo)(42);
21:06 camelia rakudo-moar 9441bb: OUTPUT«Cannot find method 'CALL-ME'␤  in block <unit> at /tmp/25W_BdqQMf line 1␤␤»
21:06 Zoffix :(
21:07 BenGoldberg m: say (*)(42);
21:07 camelia rakudo-moar 9441bb: OUTPUT«Cannot find method 'CALL-ME'␤  in block <unit> at /tmp/_iETVOdYXv line 1␤␤»
21:07 Zoffix m: (* + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *)(|^20).say
21:07 camelia rakudo-moar 9441bb: OUTPUT«121645100408832000␤»
21:07 atweiden flussence: panda --prefix="$sandbox..." seems to hardcode the absolute path to the sandbox into the precomp files
21:08 ChoHag chansen_: Oh that's easy. Nothing's safe.
21:08 atweiden could be why it isn't finding JSON::Tiny
21:08 Zoffix m: (+*)(42).say;
21:08 camelia rakudo-moar 9441bb: OUTPUT«42␤»
21:08 flussence :( seems like something to fix in CUR...
21:10 Zoffix m: (*+*************************************)(|^20).say
21:10 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Ug8OwpVxZE␤Multiple HyperWhatevers and Whatevers may not be used together␤at /tmp/Ug8OwpVxZE:1␤------> 3(*+*************************************7⏏5)(|^20).say␤»
21:10 Zoffix HyperWhatevers hmm... what are they
21:11 diakopter it's where your whatever has attention problems
21:11 flussence atweiden: I don't think it's that; the *.deps files I have here have a bunch of /var/tmp/portage cruft in them but things work fine
21:11 RabidGravy ... HUH! WHAT ARE THEY GOOD FOR? ...
21:14 deniska hm, objects in perl6 has FALLBACK… Can I have FALLBACK for a global scope? :)
21:14 autarch so performance for my new Pod::To::HTML still kind of stinks - it's CPU and memory hungry - are there any known performance gotchas with Perl 6 that I should be looking for? the built-in profiler doesn't seem very useful yet - it generates _massive_ JSON dumps that my browser can't handle
21:15 autarch I could probably write a Go program that could parse the JSON and generate a report, but I doubt I could write one in Perl 6 (and maybe not even Perl 5)
21:15 mue joined #perl6
21:15 Rotwang Most of the exceptions from core modules I see are X::AdHoc, I hope it is a subject to change in the near(ish) future
21:16 espadrine joined #perl6
21:16 RabidGravy autarch, I think there is/was/may be a html output option
21:16 flussence autarch: one thing that helps is if you're dealing with a lot of match objects, get rid of them ASAP by stringifying or whatever
21:16 RabidGravy Rotwang, yes
21:16 Rotwang RabidGravy: ok, thanks
21:16 autarch RabidGravy: yeah, it spits an HTML file which is a SPA with many MB of JSON in it - it just crashes my browser
21:16 autarch flussence: I don't think I have any matches that stick around for a long time, AFAIK
21:16 RabidGravy eugh
21:17 flussence you're dealing with Pod nodes right? Those might be holding onto match objects too... (in which case, it's not your fault)
21:19 autarch flussence: no, I don't think they have any internally - i've done a lot of "dd"ing of Pod stuff and it's all objects and strings - no matches
21:19 diakopter autarch: maybe add a timeout to your script so the profile output is lessened
21:19 autarch diakopter: I profiled a 40 line test file and got a 2.5MB SPA that crashed Chrome and that Firefox could just barely display
21:19 autarch and that 40 line test file is nowhere near what the htmlify.p6 code does, so it's not very useful to profile anyway
21:21 AlexDaniel joined #perl6
21:21 AlexDaniel .u ★
21:21 yoleaux U+2605 BLACK STAR [So] (★)
21:21 Zoffix m: my 無 $x;
21:21 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5===␤Type '無' is not declared␤at /tmp/FWCsjcPsfi:1␤------> 3my 無7⏏5 $x;␤Malformed my␤at /tmp/FWCsjcPsfi:1␤------> 3my7⏏5 無 $x;␤␤»
21:21 AlexDaniel .u STAR
21:21 Zoffix .u 無
21:21 yoleaux U+0001 START OF HEADING [Cc] (␁)
21:21 yoleaux U+0002 START OF TEXT [Cc] (␂)
21:21 yoleaux U+0086 START OF SELECTED AREA [Cc] (<control>)
21:21 yoleaux No characters found
21:21 AlexDaniel not start…
21:22 Zoffix m: say '無'.uniname
21:22 camelia rakudo-moar 9441bb: OUTPUT«<CJK Ideograph>␤»
21:22 JulesFM joined #perl6
21:22 AlexDaniel .u WHITE STAR
21:22 yoleaux U+2606 WHITE STAR [So] (☆)
21:22 flussence .u 'STAR '
21:22 yoleaux U+0020 SPACE [Zs] ( )
21:22 yoleaux U+0027 APOSTROPHE [Po] (')
21:22 yoleaux U+0041 LATIN CAPITAL LETTER A [Lu] (A)
21:22 AlexDaniel .u WHITE SMALL STAR
21:22 yoleaux U+2B52 WHITE SMALL STAR [So] (⭒)
21:22 Zoffix m: class 無 is Mu {}; my 無 $x = 42; say $x.WHAT
21:22 camelia rakudo-moar 9441bb: OUTPUT«Type check failed in assignment to $x; expected 無 but got Int␤  in block <unit> at /tmp/vtzCvs5X5m line 1␤␤»
21:22 dududuedu joined #perl6
21:22 AlexDaniel and not to be confused with…
21:22 flussence .u STAR\b
21:22 yoleaux U+0041 LATIN CAPITAL LETTER A [Lu] (A)
21:22 yoleaux U+0052 LATIN CAPITAL LETTER R [Lu] (R)
21:22 yoleaux U+0053 LATIN CAPITAL LETTER S [Lu] (S)
21:22 AlexDaniel .u ⋆
21:22 yoleaux U+22C6 STAR OPERATOR [Sm] (⋆)
21:23 diakopter autarch: it probably didn't crash chrome, it just takes a while to laod
21:23 autarch diakopter: you're right - it didn't actually crash it, just kept prompting me about long running scripts
21:23 Zoffix ⋆for whatever star would be nice
21:23 llfourn joined #perl6
21:23 Zoffix Or ★
21:23 AlexDaniel .u ⋆
21:23 yoleaux U+22C6 STAR OPERATOR [Sm] (⋆)
21:23 diakopter sometimes it takes up to a minute
21:23 AlexDaniel Zoffix: that's an operator
21:23 AlexDaniel Zoffix: leave it to custom operators, choose any other star
21:23 JulesFM Why does ((1,2),3).flat work (it prints (1 2 3) in REPL, but @a = (1, 2), 3; @a.flat not work? (it prints ((1 2) 3) in REPL) ????
21:24 flussence Zoffix: you'll have psycopathic maintenance programmers hunting you down if you do that :)
21:24 ChoHag How can you do stub code in a role without needing to write it in the class which consumes it?
21:24 Zoffix flussence, why?
21:24 ChoHag ie. how to differentiate between "I haven't written this yet" and "you need to write this"?
21:24 flussence it's almost impossible to see that it's a fancy unicode star and not an ascii one
21:24 pierre-v_ joined #perl6
21:24 AlexDaniel flussence: ascii stars???
21:24 flussence *
21:25 ChoHag The ascii * is the star of David. ★ is 5-pointed which ... isn't.
21:25 RabidGravy ChoHag, I don't think you can
21:25 Zoffix m: (⋆ + ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆)(|^20).say
21:25 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oyn4h7w1ea␤Bogus statement␤at /tmp/oyn4h7w1ea:1␤------> 3(7⏏5⋆ + ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ␤    expecting any of:␤        prefix␤        term␤»
21:25 AlexDaniel flussence: what font on earth does render those similarly?
21:25 Zoffix Looks sexy to me
21:25 MilkmanDan ChoHag: I think you have that backwards.
21:25 flussence those are both 5-pronged with inconsolata.ttf
21:25 RabidGravy weirdo
21:25 JulesFM What am I missing about lists?
21:25 Zoffix .u multiplication
21:25 yoleaux U+00D7 MULTIPLICATION SIGN [Sm] (×)
21:26 yoleaux U+228D MULTISET MULTIPLICATION [Sm] (⊍)
21:26 yoleaux U+2715 MULTIPLICATION X [So] (✕)
21:26 autarch I note that in my font the ASCII star has 5 points
21:26 MilkmanDan ASCII * is the stick figure version.
21:26 AlexDaniel m: my @a = (1, 2), 3; say @a.flat
21:26 camelia rakudo-moar 9441bb: OUTPUT«((1 2) 3)␤»
21:26 Zoffix Or even this:  (⋆ + ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆)(|^20).say
21:26 AlexDaniel m: my @a = (1, 2), 3; say flat @a
21:26 camelia rakudo-moar 9441bb: OUTPUT«((1 2) 3)␤»
21:26 AlexDaniel m: my @a = (1, 2), 3; say |@a
21:26 camelia rakudo-moar 9441bb: OUTPUT«(1 2)3␤»
21:27 Zoffix | is slip
21:27 AlexDaniel m: my @a = (1, 2), 3; say flat flat @a
21:27 camelia rakudo-moar 9441bb: OUTPUT«((1 2) 3)␤»
21:27 AlexDaniel m: my @a = (1, 2), 3; say flat flat flat flat @a # dammit
21:27 camelia rakudo-moar 9441bb: OUTPUT«((1 2) 3)␤»
21:27 Zoffix hm
21:27 pierre-vigier joined #perl6
21:27 AlexDaniel m: my @a = (1, 2), 3; dd @a
21:27 camelia rakudo-moar 9441bb: OUTPUT«Array @a = [(1, 2), 3]␤»
21:27 AlexDaniel m: my @a = (1, 2), 3; dd @a[0]
21:27 camelia rakudo-moar 9441bb: OUTPUT«List @a = $(1, 2)␤»
21:27 AlexDaniel m: my @a = (1, 2), 3; say @a[0].WHAT
21:27 camelia rakudo-moar 9441bb: OUTPUT«(List)␤»
21:27 Zoffix oh, this reminds me
21:28 Zoffix It's likely related to .flatmap being broken too
21:28 dalek nqp: 51585c8 | (Pawel Murias)++ | t/nqp/88-more-if-tests.t:
21:28 dalek nqp: Test nqp::ifnull.
21:28 dalek nqp: review:
21:28 JulesFM So what's the difference between a list and an array, and how did we end up with a top-level Array and not a List?
21:29 hankache joined #perl6
21:29 flussence lists have one end but may not have another
21:30 Zoffix .u whatever
21:30 yoleaux No characters found
21:30 Zoffix :(
21:31 Zoffix This looks awesome:  (★ + ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★)(|^20).say
21:31 Skarsnik :)
21:32 AlexDaniel what really bothers me is that unicode has BLACK and WHITE symbols
21:32 AlexDaniel instead of using normal and INVERTED
21:32 AlexDaniel .u DRAUGHTS
21:32 yoleaux U+26C0 WHITE DRAUGHTS MAN [So] (⛀)
21:32 yoleaux U+26C1 WHITE DRAUGHTS KING [So] (⛁)
21:32 yoleaux U+26C2 BLACK DRAUGHTS MAN [So] (⛂)
21:32 AlexDaniel guess how that looks like on black background
21:32 JulesFM p6: @a = (1,2),3; say @a.WHAT; say @a[0].WHAT;
21:32 camelia rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tmpfile␤Variable '@a' is not declared␤at /tmp/tmpfile:1␤------> 3<BOL>7⏏5@a = (1,2),3; say @a.WHAT; say @a[0].WHA␤»
21:33 AlexDaniel JulesFM: my
21:33 Zoffix p6:my @a = (1,2),3; say @a.WHAT; say @a[0].WHAT;
21:33 domidumont joined #perl6
21:34 Zoffix p6: my @a = (1,2),3; say @a.WHAT; say @a[0].WHAT;
21:34 camelia rakudo-moar 9441bb: OUTPUT«(Array)␤(List)␤»
21:34 mst flussence: did our patch make it in yet?
21:34 mst flussence: looks like the same thing
21:34 AlexDaniel this is driving me crazy, how can this thing become flat?
21:34 AlexDaniel I mean, how do I make it flat
21:35 AlexDaniel even if it is a bug, what's the workaround?
21:35 flussence mst: both our patch and the thing nine came up with made it into git, but not 2015.12
21:35 mst flussence: is that issue the same thing?
21:35 mst or a mkdir versus mkpath difference
21:35 flussence yep
21:36 mst right, I have to head out to meet somebody again
21:36 mst can you write something up on the issue please?
21:36 RabidGravy m: my @a = (1,2),3;  say *.list
21:36 camelia rakudo-moar 9441bb: OUTPUT«((1 2) (3))␤»
21:36 flussence righto
21:36 RabidGravy oh. weirder
21:36 mst thanks
21:36 mst &
21:36 mst flussence++
21:36 RabidGravy m: my @a = (1,2),3;  say{ $_.list}).flat
21:36 camelia rakudo-moar 9441bb: OUTPUT«(1 2 3)␤»
21:37 dalek nqp: d0eb164 | (Pawel Murias)++ | t/nqp/19-file-ops.t:
21:37 dalek nqp: Test we are at EOF after nqp::readallfh.
21:37 dalek nqp: review:
21:37 AlexDaniel m: my @a = (1, 2), 3; say @a>>.list.flat
21:37 camelia rakudo-moar 9441bb: OUTPUT«(1 2 3)␤»
21:37 RabidGravy there
21:37 AlexDaniel m: my @a = (1, (2, 5)), 3; say @a>>.list.flat
21:37 camelia rakudo-moar 9441bb: OUTPUT«(1 2 5 3)␤»
21:37 chansen_ Did Swift reuse multi dispatch on named parameters? AFIK only Perl6 and Swift uses named parameters?
21:37 Zoffix m: my @a = (1, (2, (42,5))), 3; say @a>>.list.flat
21:37 camelia rakudo-moar 9441bb: OUTPUT«(1 2 42 5 3)␤»
21:38 RabidGravy there's always a way
21:38 AlexDaniel JulesFM: ↑
21:38 Zoffix m: say ((1, (2, (42,5))), 3).flat
21:39 camelia rakudo-moar 9441bb: OUTPUT«(1 2 42 5 3)␤»
21:39 * chansen_ s/reuse/reuse from Perl6/
21:39 Ox0dea m: my @a = (1,2),3; say @a.List.flat # RabidGravy
21:39 camelia rakudo-moar 9441bb: OUTPUT«(1 2 3)␤»
21:39 Ox0dea No need to map.
21:39 Ox0dea Just reconstruct.
21:39 AlexDaniel Ox0dea: awesome
21:39 Ox0dea NO U
21:40 RabidGravy what larks
21:40 diakopter whimsy
21:41 chansen_ AlexDaniel: What happen if you combine them with Unicode skin tones?
21:41 AlexDaniel chansen_: nothing, I hope
21:41 AlexDaniel by the way, let's try skin tones…
21:43 dalek roast: 5fb2feb | (Zoffix Znet)++ | S32-num/is-prime.t:
21:43 dalek roast: Test more values in is-prime sub
21:43 dalek roast:
21:43 dalek roast: This covers incorrect values described in RT#127044
21:43 dalek roast: review:
21:43 dalek roast: 4c91839 | lizmat++ | S32-num/is-prime.t:
21:43 dalek roast: Merge pull request #92 from zoffixznet/rt-127044
21:43 dalek roast:
21:43 dalek roast: Test more values in is-prime sub
21:43 dalek roast: review:
21:43 RabidGravy chansen_, erlang and ocaml have named parameters to my certain knowledge
21:43 flussence `rakudobrew build moar` pulls straight from latest git/nom, right?
21:43 RabidGravy yes
21:44 flussence k, just wanted to make sure I don't give people a bunch of wrong advice :)
21:44 yoleaux U+0020 SPACE [Zs] ( )
21:44 yoleaux U+002B PLUS SIGN [Sm] (+)
21:44 yoleaux U+002D HYPHEN-MINUS [Pd] (-)
21:44 Ox0dea That went well.
21:45 chansen_ RabidGravy: supporting multi dispatch named parameters in constructors and method names?
21:46 Ox0dea Zoffix: You misspelled "coercion". :<
21:46 Zoffix heh, I had it as coercion and then changed it -_-
21:47 Ox0dea English is a guessing game, amirite? :P
21:47 Zoffix Ox0dea, well, submit a PR
21:47 RabidGravy well in the case of erlang that's somewhat of a trick question, don't know ocaml well enough to be sure
21:47 skyl4rk anybody using vim to write perl6 and having problems with vim freezing to a cpu-eating halt?
21:47 lizmat good *, #perl6
21:47 Ox0dea skyl4rk: Not yet.
21:47 skyl4rk (with syntax hilighting on, turning it off seems to drop the problem)
21:47 Zoffix No, English is fine when you're not writing it in the morning after 4 days of heavy drinking
21:48 gfldex m: my $l = ((1, (2, (42,5))), 3); dd $l.flat;
21:48 camelia rakudo-moar 9441bb: OUTPUT«(1, 2, 42, 5, 3).Seq␤»
21:48 lizmat Zoffix: wrt PR 656, I approve of the idea, but not of the patch...  testing another one right now
21:48 mort96 eyyyy, back with a working Linux install
21:48 Zoffix lizmat, sure, go ahead with closing it and using something saner instead :)
21:48 Ox0dea mort96: Papyros?
21:48 AlexDaniel m: say ‘????????’.chars
21:48 camelia rakudo-moar 9441bb: OUTPUT«2␤»
21:48 mort96 no, arch
21:48 mort96 well
21:48 RabidGravy skyl4rk, yes I use vim, no it doesn't do that.  And I edit some large files.
21:48 AlexDaniel sooo, should it be 2?
21:48 mort96 antergos really
21:48 lizmat Zoffix: fwiw, I *did* merge the tests  :-)
21:49 Zoffix lizmat, there're two typoes as Ox0dea++ just discovered. "coersion" should be "coercion"
21:49 Zoffix Maybe you could fix it :)
21:49 Ox0dea An Archer using IRCCloud?
21:50 Ox0dea Something new every day.
21:50 mort96 Ox0dea: was hit by a tiny bug in Rakudobrew which deleted everything in /bin, so had to reinstall
21:50 lizmat Zoffix: will do, also: it's is-prime, not isprime   and the number of tests was incorrect  :-)
21:50 mort96 don't worry, I'm currently working on writing my own replacement for irccloud
21:50 Ox0dea mort96: Why?
21:50 uvtc Which docs can I access with `perl6 --doc`? I panda-installed Acme::Meow, but `perl6 --doc Acme::Meow` couldn't stat the file, and `perl6 --doc=Acme::Meow` just drops me into the repl.
21:50 Zoffix lizmat, oh god :) I should not submit PRs when I'm super hungover >_<
21:50 mort96 why what? reinstall or irccloud replacement?
21:51 ChoHag I have a token "module" which matches perl-like module names (<.plain-word> [ '::' <.plain-word> ]+), why doesn't the token which includes it (<.module> [ '+{' <.module> '}' ]*) match module names with +{Foo::Bar} appended?
21:51 dalek roast: d4a77bd | lizmat++ | S32-num/is-prime.t:
21:51 dalek roast: Fix tests added by Zoffix++
21:51 dalek roast: review:
21:51 Zoffix .oO( coercion )
21:51 mort96 Ox0dea:
21:52 AlexDaniel folks, so am I getting it right that emoji skin color modifier should kinda combine with the previous character? So that we get 1 when we do .chars?
21:52 dalek rakudo/nom: 8c56c11 | lizmat++ | src/core/
21:52 dalek rakudo/nom: Only return True on whole numbers, Zoffix++
21:52 dalek rakudo/nom:
21:52 dalek rakudo/nom: This is an alternate version of PR #656
21:52 dalek rakudo/nom: review:
21:52 Ox0dea mort96: You'd already explained why you reinstalled, so why would I be asking about that?
21:52 lizmat AlexDaniel: it probably should, yes
21:52 mort96 idk, could be something like "why would a bug in rakudobrew delete /bin?"
21:53 Ox0dea mort96: More to the point, why did you run it with the requisite privileges?
21:53 AlexDaniel what does the unicode say about this? Should it actually be treated as one grapheme? That would make sense
21:53 mort96 because it asked me
21:54 mort96 writing a replacement for irccloud because I like writing software, and like using my own software, and don't want to pay for irccloud
21:54 mort96 and because irccloud sometimes goes down, which is annoying
21:54 chansen_ RabidGravy: Ok
21:55 ShimmerFairy AlexDaniel: AFAICT Unicode's current definition of "extended grapheme cluster" may not cover the skin color modifiers; if so, feel free to file a bug with them :)
21:55 AlexDaniel “When a human emoji is not immediately followed by a emoji modifier character, it should use a generic, non-realistic skin tone, such as: #3399CC”
21:55 AlexDaniel this is just nuts…
21:55 Ox0dea AlexDaniel: Python and Ruby both say 2.
21:56 RabidGravy is  #3399CC sort of Simpsons yellow?
21:56 AlexDaniel Ox0dea: they are wrong. Throw a combiner into them and they'll say the same thing
21:56 AlexDaniel RabidGravy: it's fucking blue
21:56 ChoHag Goes down?
21:56 ChoHag How can it go down?
21:56 ChoHag It's _the cloud_.
21:56 mort96 lol
21:57 Zoffix RabidGravy, it's this:
21:57 flussence "why is our business losing thousands of dollars a minute? precipitation!"
21:57 chansen_ AlexDaniel: why do you think I ask you? Unicode is insane! ;o)
21:57 timotimo if anybody here owns a nintendo 3ds, the "console hacking" talk on the 32c3 is about to start
21:57 Ox0dea AlexDaniel: You're right.
21:57 flussence timotimo: already got it open :D
21:57 timotimo
21:57 Skarsnik 32c3?
21:57 blub thats a pretty blue
21:58 timotimo 32nd chaos communication congress
21:58 RabidGravy the colour of smurfs, that's not non-realistic
21:58 AlexDaniel “As to hair color, dark hair tends to be more neutral, because people of every skin tone can have black (or very dark brown) hair—however, there is no requirement for any particular hair color. One exception is PERSON WITH BLOND HAIR, which needs to have blond hair regardless of skin tone.”
21:59 AlexDaniel Just read this, it is hilarious:
21:59 anthk_ joined #perl6
21:59 Zoffix lol
21:59 Skarsnik rofl unicode
21:59 Hotkeys mort96: could always just use a bouncer like znc
22:00 RabidGravy god that meeting must have been way fun
22:00 timotimo run weechat on a server and use the weechat remote protocol
22:00 Skarsnik Zoffix, I have another thing for you to add to irc::client, allow some pluging to create new event xD
22:00 timotimo 100x better than "bouncer"s
22:00 Hotkeys lol
22:00 flussence .oO( unicode should just assign codepoint equivalents for VT220 escape sequences )
22:00 ChoHag m: grammar Path { token plain-word { <:Letter + [_]> <:Letter + :Number + :Symbol - [.\[\]\<\>\:]>* }; token module { <.plain-word> [ '::' <.plain-word> ]+ }; token class { <.module> [ '+{' <.module> '}' ]* } }; Path.parse('Foo::Bar', :rule<class>).perl.say; Path.parse('Foo::Bar+{Baz::Bing}', :rule<class>).perl.say
22:00 camelia rakudo-moar 9441bb: OUTPUT« => Any, list => (), hash =>, orig => "Foo::Bar", to => 8, from => 0)␤Nil␤»
22:00 ChoHag Why is the 2nd Nil?
22:00 Hotkeys idk I like my bouncer
22:01 ChoHag Is there some sort of problem with irssi & tmux which needed solving with http?
22:01 ShimmerFairy it looks like the skin tone modifiers are Grapheme_Base, and not Grapheme_Extend like I'd expect, for some odd reason
22:01 mort96 yes, actually
22:01 ChoHag That's a rhetorical question.
22:01 Zoffix Skarsnik, what's the use case?
22:01 lizmat m: my $f = "\x1F466\x1F3FE"; say "$f   $f.chars()"   # this feels like a bug
22:01 camelia rakudo-moar 9441bb: OUTPUT«????????   2␤»
22:01 AlexDaniel “In real multi-person groupings, the members may have a variety of skin tones.” – does it mean that KISS character should have one person black and another one white?
22:01 mort96 irssi in tmux in ssh works pretty shit on phones.
22:02 flussence mst, anyone else interested: people on OS X are apparently having the same problems distro packager people are. might be good cause to roll a 2015.12.1...
22:02 Skarsnik Zoffix, chat that use IRC, they have specific event like "someone is hosting you"
22:02 ChoHag mort96: On shit phones maybe.
22:03 ChoHag Though in your defense, they all are.
22:03 pierre-vigier joined #perl6
22:03 Zoffix Skarsnik, what do you mean by "create new event"? A new event other plugins can subscribe to?
22:03 Skarsnik Yes
22:03 Zoffix Skarsnik, then I don't get the usecase :)
22:03 Hotkeys is there a quick way to initilize an int array to 0
22:03 mort96 terminals are inherently bad on touch screens.
22:04 AlexDaniel “The U+200D ZERO WIDTH JOINER (ZWJ) can be used between the elements of a sequence of characters to indicate that a single glyph should be presented if available.”
22:04 Hotkeys would I just do a for loop on @array and set $_ = 0
22:04 AlexDaniel ok, I give up, I have no idea how this could possibly work
22:04 mort96 plus, how are you supposed to get notifications? You could have something listen to a bell character, but you wouldn't get the text and sender in the notification
22:04 lizmat AlexDaniel: will submit rakudobug
22:04 AlexDaniel lizmat: oh, nice
22:05 timotimo Hotkeys: int arrays are not initialized to zeroes for you?
22:05 timotimo m: my int @a[10]; say @a
22:05 camelia rakudo-moar 9441bb: OUTPUT«[0 0 0 0 0 0 0 0 0 0]␤»
22:05 Hotkeys spam:
22:05 Hotkeys > my Int @lights[1000;1000];
22:05 Hotkeys Method 'gist' not found for invocant of class 'NQPMu'
22:05 Hotkeys > @lights[0;3]
22:05 Hotkeys > @lights[0;3] = 1
22:05 Hotkeys 1
22:05 deniska mort96: set up your server to send you SMS when someone pings you
22:05 Hotkeys > @lights[0;3]
22:05 Hotkeys 1
22:05 AlexDaniel lizmat: maybe it should also mention ZERO WIDTH JOINER… or this could be a separate bug report
22:05 Hotkeys am I doing this wrong
22:05 AlexDaniel Hotkeys: yes, why don't you use gitlab snippets?
22:05 mort96 then I'm not notified on my tablet
22:05 ChoHag Odd. This works:
22:05 Hotkeys not that part
22:05 ChoHag m: grammar { token plain-word { <:Letter + [_]> <:Letter + :Number + :Symbol - [.\[\]\<\>\:]>* }; token module { <.plain-word> [ '::' <.plain-word> ]+ }; token class { <.module> [ '++' <.module> ]* } }.parse('Foo::Bar++Baz::Bing', :rule<class>).perl.say
22:05 camelia rakudo-moar 9441bb: OUTPUT« => Any, list => (), hash =>, orig => "Foo::Bar++Baz::Bing", to => 19, from => 0)␤»
22:05 Hotkeys I meant the array
22:05 uvtc left #perl6
22:05 deniska Also who needs notifications?
22:06 lizmat AlexDaniel: I think a different one would be in order, will you do that one ?
22:06 ChoHag But this doesn't, despite an identical change in the string and token:
22:06 mort96 they're nice to have.
22:06 ChoHag m: grammar { token plain-word { <:Letter + [_]> <:Letter + :Number + :Symbol - [.\[\]\<\>\:]>* }; token module { <.plain-word> [ '::' <.plain-word> ]+ }; token class { <.module> [ '+(' <.module> ]* } }.parse('Foo::Bar+(Baz::Bing', :rule<class>).perl.say
22:06 camelia rakudo-moar 9441bb: OUTPUT«Nil␤»
22:06 AlexDaniel lizmat: yes, deal
22:06 deniska mort96: they are nice way to allow other people to eat your time :)
22:06 AlexDaniel lizmat: but I will read about this one for a few minutes…
22:06 ChoHag Obviously perl's and my idea of identical differ, but why?
22:06 Skarsnik Zoffix, hm, like if I want to write a ircbot to do stuff with twitch chat, I probably want to handle twitch special stuff, like when someone is hosting my stream (you get a privmsg/notice from an user). I mean I can do it normaly, but I probably just want to have a special new event for that
22:06 Hotkeys m: my Int @lights[10,10]; say @lights;
22:06 camelia rakudo-moar 9441bb: OUTPUT«Method 'gist' not found for invocant of class 'NQPMu'␤  in block <unit> at /tmp/BLg5N_0wX3 line 1␤␤»
22:06 Hotkeys m: my Int @lights[10;10]; say @lights;
22:06 camelia rakudo-moar 9441bb: OUTPUT«Method 'gist' not found for invocant of class 'NQPMu'␤  in block <unit> at /tmp/BbFvpgQUrI line 1␤␤»
22:06 Hotkeys how do I shaped array
22:06 Skarsnik the 32c3 stream buffer like crazy :(
22:07 Hotkeys m: my int @lights[10;10]; say @lights;
22:07 camelia rakudo-moar 9441bb: OUTPUT«[[0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0]]␤»
22:07 Hotkeys oh weird
22:07 Zoffix Skarsnik, k, I'll add that when I get a chance
22:07 Hotkeys Are arrays of "Int" not a thing?
22:08 chansen_ AlexDaniel: I didn't intend to cause this disturbance in your work ;)
22:08 anthk_ hello
22:08 Zoffix anthk_, hai
22:08 anthk_ how do I iterate over a file content in binary mode in Perl6?
22:09 Zoffix anthk_, use  :bin
22:09 Skarsnik open :bin ?
22:10 Ox0dea Hotkeys: Hm?
22:10 Hotkeys see above camelia bits
22:11 Ox0dea m: say my @a[10;10].shape # Hotkeys
22:11 camelia rakudo-moar 9441bb: OUTPUT«(10 10)␤»
22:12 chansen_ AlexDaniel: Unicode has done a lot of mistakes since they thought ISO/IEC 10646 where theres to control
22:12 lizmat AlexDaniel: #127047
22:12 patrickz joined #perl6
22:13 chansen_ lizmat: Do you have uri for that?
22:13 anthk_ Zoffix: would it work if I copy the bytes to an array?
22:13 lizmat chansen_:
22:14 chansen_ lizmat: thanks
22:15 anthk_ what I am trying to implement is a chip8 interpreter , and copying bytes to the fake memory array gave me type errors.
22:15 AlexDaniel RT #127047
22:15 AlexDaniel where's the bot? :)
22:15 Zoffix ded
22:15 anthk_ my uint16 @memory[4096];
22:15 anthk_
22:15 lizmat good night, #perl6!
22:16 Zoffix night
22:17 RabidGravy anthk_, assigning a Buf to that won't no
22:17 RabidGravy $buf.list however may work
22:18 RabidGravy i.e
22:19 RabidGravy m: my $buf =<1 2 3 4>); my uint16 @a = $buf.list; say @a;
22:19 camelia rakudo-moar 8c56c1: OUTPUT«1 2 3 4␤»
22:19 Ox0dea RabidGravy:
22:19 Begi joined #perl6
22:20 Zoffix Really bruh? -_-
22:20 Ox0dea Precision matters.
22:20 Ox0dea Don't let these things upset you.
22:20 Zoffix Not in here.
22:21 RabidGravy that's nice
22:21 Zoffix *Not in this case.
22:21 Zero_Dogg left #perl6
22:21 anthk_ could work with the file handle?
22:22 RabidGravy anthk_, if you do   ... .open(:bin); .... my $buf = $handle,read(..);
22:22 RabidGravy you get a Buf back
22:23 RabidGravy so no need to construct one
22:24 llfourn joined #perl6
22:28 AlexDaniel m: say “\x1F469\x200D\x2764\xFE0F\x200D\x1F48B\x200D\x1F468”.chars
22:28 camelia rakudo-moar 8c56c1: OUTPUT«4␤»
22:29 AlexDaniel m: say “\x1F469\x200D\x2764\xFE0F\x200D\x1F48B\x200D\x1F468”
22:29 camelia rakudo-moar 8c56c1: OUTPUT«????‍❤️‍????‍????␤»
22:30 anthk_ now I need a way to get the size. Sorry if I annoy you.
22:30 Zoffix anthk_, the total number of elements in your array? it's .elems
22:30 Zoffix m: my @a = ^10; say @a.elems
22:30 camelia rakudo-moar 8c56c1: OUTPUT«10␤»
22:31 AlexDaniel m: my @a = ^10; say +@a
22:31 camelia rakudo-moar 8c56c1: OUTPUT«10␤»
22:31 Zoffix This is hilarious brainfuck written in printf:
22:31 Hotkeys is there an idiomatic way to toggle a bool?
22:31 Zoffix Hotkeys, ?
22:31 Hotkeys or should I just xor it
22:31 Zoffix Oh, toggle
22:32 Ox0dea Hotkeys: What's wrong with `$b = !$b`?
22:32 Hotkeys oh
22:32 Hotkeys right
22:32 Hotkeys I'm, dumb
22:32 Hotkeys s/,//
22:34 deniska $b.=not
22:34 deniska because why .=not?
22:34 RabidGravy :)
22:34 Ox0dea Ah, there's the method for which I was looking.
22:34 Hotkeys nice
22:34 Hotkeys I like it
22:35 Ox0dea `.=` might be my favorite operator.
22:35 RabidGravy ugly to me
22:35 Hotkeys yeah
22:35 Ox0dea Pfft.
22:35 Ox0dea Do you feel that way about compound assignment in general?
22:35 timotimo i like .=
22:36 RabidGravy yeah lots of people do, I just don't feel the love
22:37 mohij joined #perl6
22:37 anthk_ mapping a buffer to an array seems impossible to me :(
22:37 ShimmerFairy $a ^^= True ? :)
22:37 Zoffix anthk_, why?
22:38 leont joined #perl6
22:38 anthk_ my $buf = $$fh.IO.s);
22:38 anthk_
22:38 ShimmerFairy RabidGravy: I personally like making use of .= to allow the user to choose (more easily) if the method modifies the object, i.e. $a.doesn't-modify, $a.=this-does
22:39 anthk_ and then I create a loop from $i to $buf.IO.s, because I don't know how to get the size of the buffer
22:39 Ox0dea ShimmerFairy: It doesn't actually modify the invocant, though.
22:39 SwellJoe joined #perl6
22:39 RabidGravy $buf.elems
22:39 anthk_ but this is perl6, sure there is another and proper way to do so
22:39 Zoffix anthk_, I told you, .elems
22:39 AlexDaniel lizmat:
22:39 Zoffix anthk_,
22:40 nine .tell [Coke] yes, I'm quite sure panda will get an uninstall
22:40 yoleaux nine: I'll pass your message to [Coke].
22:41 ShimmerFairy Ox0dea: true, I just like making it so that the extra = as a visual indicator that $a will change, instead of remembering/looking up the API. Not that I stick to the rule all that much, but it's a nice one anyway. :)
22:45 otsuaf joined #perl6
22:45 otsuaf hallo
22:45 lnrdo joined #perl6
22:46 geck joined #perl6
22:47 anthk_ ok, now it works, thanks.
22:48 anthk_ ironic that opcode logic seems easier (pen and paper does wonders) than some new stuffin p6
22:49 Ox0dea m: say [+] grep * %% (3|5), ^1000 # anthk_
22:49 camelia rakudo-moar 8c56c1: OUTPUT«233168␤»
22:49 Ox0dea My favorite Euler #1 solution evar.
22:49 Ox0dea It looks like pseudocode for programmers.
22:50 Ox0dea I think some of that is new in Perl 6, anyway.
22:50 anthk_ 0x0dea I am writting the chip8 interpreter in an easy way, sure I could do some perl magic as some people did implementing the vm in Scheme
22:51 Ox0dea > Sound timer: This timer is used for sound effects. When its value is nonzero, a beeping sound is made.
22:51 Ox0dea That's fun. :P
22:51 AlexDaniel m: say [+] ^1000.grep: * %% (3|5)
22:51 camelia rakudo-moar 8c56c1: OUTPUT«Potential difficulties:␤    Precedence of ^ is looser than method call; please parenthesize␤    at /tmp/87CupQm5AH:1␤    ------> 3say [+] ^10007⏏5.grep: * %% (3|5)␤0␤»
22:51 AlexDaniel m: say [+] ^1000 .grep: * %% (3|5)
22:51 camelia rakudo-moar 8c56c1: OUTPUT«(499500)␤»
22:52 AlexDaniel huh, different answer?
22:52 AlexDaniel m: say [+] (^1000 .grep: * %% (3|5))
22:52 camelia rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5EqdaqdEjM␤Confused␤at /tmp/5EqdaqdEjM:1␤------> 3say [+] (^1000 .7⏏5grep: * %% (3|5))␤»
22:52 anthk_ the fonts were easy, just a fixed array of bytes. Literally.
22:52 Zoffix m: say (^1000 .grep: * %% 3|5)
22:52 camelia rakudo-moar 8c56c1: 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…»
22:52 Zoffix m: say [+] (^1000 .grep: * %% 3|5)
22:52 camelia rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0ynGc04Fl1␤Confused␤at /tmp/0ynGc04Fl1:1␤------> 3say [+] (^1000 .7⏏5grep: * %% 3|5)␤»
22:52 Zoffix m: say [+] (^1000 \ .grep: * %% 3|5)
22:52 camelia rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/CagJHoQVwX␤Confused␤at /tmp/CagJHoQVwX:1␤------> 3say [+] (^1000 \ .7⏏5grep: * %% 3|5)␤»
22:52 Ox0dea Zoffix: Please figure it out locally. :P
22:52 Zoffix m: say [+] (0..9999 .grep: * %% 3|5)
22:52 camelia rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/44NB0XoA_c␤Confused␤at /tmp/44NB0XoA_c:1␤------> 3say [+] (0..9999 .7⏏5grep: * %% 3|5)␤»
22:53 Ox0dea Or keep shitting into the channel. :(
22:53 Zoffix m: say [+] ((0..9999) .grep: * %% 3|5)
22:53 camelia rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/8NZYgbTrzO␤Confused␤at /tmp/8NZYgbTrzO:1␤------> 3say [+] ((0..9999) .7⏏5grep: * %% 3|5)␤»
22:53 AlexDaniel m: say [+] (^1000).grep: * %% (3|5)
22:53 camelia rakudo-moar 8c56c1: OUTPUT«233168␤»
22:55 Zoffix m: say [+] ((0..100).flat.sort: * %% (2|3))
22:55 camelia rakudo-moar 8c56c1: OUTPUT«cannot numify this␤  in block <unit> at /tmp/3HYqx8FtL1 line 1␤␤»
22:55 Zoffix m: say [+] ((0..100).flat.sort: * %% 3)
22:55 camelia rakudo-moar 8c56c1: OUTPUT«5050␤»
22:57 Ox0dea m: say sum ^101 # Zoffix: Mine's shorter. :P
22:57 camelia rakudo-moar 8c56c1: OUTPUT«5050␤»
22:58 geck are there any ORMs from perl6 yet? I don't need something as full features at DBIc, just some premade sugar for handling my queries & managing connections
22:58 Zoffix geck, not yet
22:59 RabidGravy well some very experimental ones,
23:00 RabidGravy I don't even know this works BTW
23:01 geck that has some smells
23:01 Zoffix "Latest commit Dec 2, 2014"... I highly doubt it works.
23:01 RabidGravy yeah, I'd take book on it not working given the last time it was updated
23:01 Hotkeys "Partially dimensioned views of arrays not yet implemented." this makes me sad
23:02 Rotwang how do I know which core perl6 module is the official one? All the official modules are maintained under perl6 group in github?
23:02 Zoffix .oO( perl6 has core modules? )
23:02 Skarsnik Not really
23:03 Skarsnik Test/NC maybe?
23:03 RabidGravy Rotwang, there are only two "core" modules, NativeCall and Test
23:03 Zoffix But those aren't in a git repo
23:03 Skarsnik Probably Test. NC depend a lot of internal feature
23:03 geck How about web frameworks?
23:03 Zoffix geck, have you seen
23:03 RabidGravy
23:03 zengargoyle joined #perl6
23:04 geck yes, been looking through it all day, and founda  few options for things
23:04 Rotwang RabidGravy: I meant those distributed with rakudo *
23:04 Zoffix geck, they're a couple, but nothing usable in production TBH
23:04 Zoffix geck, you could use Perl 5 stuff via Inline::Perl5 tho
23:04 Rotwang for example lwp-simple is forked gazilion times, how do I know which one is the one being used by rakudo *?
23:04 geck not really looking for production usage, mostly looking for stuff to play with
23:04 Skarsnik hm, rakudo star is quite random
23:04 Skarsnik the one on
23:04 RabidGravy Rotwang, same answer as to geck
23:05 Zoffix geck, there's Bailador that I tried using
23:06 RabidGravy that is built from the same list that panda uses to install, and thus Task::Star will use those
23:06 Skarsnik is probably missing to be mentionned on maisn pages?
23:06 Zoffix (web frameworks)
23:06 Zoffix Skarsnik, I see it as item 3 in
23:07 RabidGravy People need to start using tags on their distributions
23:08 RabidGravy of course then we'll get a host of weirdos trying to mandate a "taxonomy"
23:08 Skarsnik taxonomy?
23:08 geck trying to standardize the tags that are used
23:09 geck and getting REALLY vigilent about it
23:09 Zoffix damn, why are modern movies so long :/
23:10 Zoffix 2h24m for The Martian :\
23:10 Skarsnik I don't know how is doable, but maybe add a .travis job on ecosystem perform some check on the last entry
23:10 * geck snickers
23:11 Zoffix Skarsnik, hm?
23:11 Skarsnik well we could have a .travis on ecosystem that will be run on each PR request that will check like the Meta file?
23:13 Zoffix That leaves the problem of not checking METAs after authors modify them
23:13 Zoffix We have this tho: you can grep for "[error]" to find all errors.
23:13 * flussence glances at timotimo and expects github will be overloaded right about now too... :)
23:13 Zoffix I notice 007 now got a JSON error
23:14 timotimo flussence: :D
23:14 timotimo "sorry, were you using github for anything else?"
23:14 RabidGravy are you breaking stuff
23:15 timotimo no
23:15 timotimo something was just announced
23:15 Zoffix Where?
23:15 flussence 32C3
23:15 Zoffix Perl 6?
23:15 RabidGravy github was rightly cocking me around yesterday
23:15 flussence nahhhh, we're way too small time to generate that kind of traffic...
23:16 RabidGravy swift or go then
23:16 Zoffix Can I watch what was announced or ... ?
23:17 * flussence shrugs, it'll probably have everything on youtube same day though...
23:18 flussence (I'm kinda impressed that they had a live stream in webm format that actually worked though)
23:18 timotimo flussence: you underestimate the c3voc
23:19 timotimo go to the main page and find the "re-live" button
23:19 * flussence clearly knows nothing :)
23:20 timotimo the c3voc is simply 100% amazing.
23:20 Ox0dea flussence: Are you Jon Starkgaryen?
23:20 RabidGravy webm has been around for a while, icecast supported it for a few versions now
23:20 Zoffix So... what was announced?
23:20 timotimo Zoffix: new hax for nintendo 3ds
23:21 Zoffix ah
23:21 virtualsue joined #perl6
23:21 * Zoffix got all excited for nothing
23:21 RabidGravy yeah not really my thing
23:22 flussence RabidGravy: I've tried many, many times to do some sort of webm streaming via ffserver and it's always failed miserably. maybe I was using the wrong software
23:22 RabidGravy though they've got a relatvely good sound chip
23:23 RabidGravy flussence, you could probably get something going with liquidsoap and icecast
23:23 RabidGravy don't know of a good source client though (more interested in audio streaming)
23:25 llfourn joined #perl6
23:26 dalek rakudo/nom: 47d3b98 | hoelzro++ | src/Perl6/Compiler.nqp:
23:26 dalek rakudo/nom: Move Linenoise logic into helper method
23:26 dalek rakudo/nom:
23:26 dalek rakudo/nom: Also, rename $!linenoise to $!readline, paving the way for
23:26 dalek rakudo/nom: integrating with Readline should it be available
23:26 dalek rakudo/nom: review:
23:26 dalek rakudo/nom: 0a76a99 | hoelzro++ | src/Perl6/Compiler.nqp:
23:26 dalek rakudo/nom: Load completions lookup unconditionally
23:26 dalek rakudo/nom:
23:26 dalek rakudo/nom: Otherwise each readline backend will have to remember to load them,
23:26 dalek rakudo/nom: and it's not a big performance hit to maintain it
23:26 dalek rakudo/nom: review:
23:26 dalek rakudo/nom: 5dacb11 | hoelzro++ | src/Perl6/Compiler.nqp:
23:26 dalek rakudo/nom: Add Readline support
23:26 dalek rakudo/nom:
23:26 dalek rakudo/nom: Now Rakudo will try to use Jeff Goff's Readline module if available,
23:26 dalek rakudo/nom: since many users don't care for Linenoise
23:26 dalek rakudo/nom: review:
23:26 dalek rakudo/nom: a7ea8e6 | hoelzro++ | src/Perl6/Compiler.nqp:
23:26 dalek rakudo/nom: Only emit a single message if Readline and Linenoise cannot be found
23:26 dalek rakudo/nom: review:
23:27 herby_ joined #perl6
23:27 herby_ o/
23:27 frew joined #perl6
23:28 RabidGravy erp
23:28 frew are the [^$foo] on supposed to be links
23:28 frew ?
23:28 herby_ m: map(.WHAT.perl, ('hello', 2, 4))
23:28 camelia rakudo-moar 8c56c1: OUTPUT«Cannot call map(Str, List); none of these signatures match:␤    (&code, + is raw)␤  in block <unit> at /tmp/GZYT18pieU line 1␤␤»
23:29 joydo joined #perl6
23:29 flussence frew: nah, footnote numbers
23:29 frew ahhh
23:29 frew flussence: thanks
23:29 herby_ m: ('hello', 2, 4).map: {.WHAT.perl};
23:29 camelia rakudo-moar 8c56c1: ( no output )
23:30 frew looking forward to a 6.c rakudo star
23:30 frew assuming that's imminent
23:30 RabidGravy week or so at a guess (but a reall guess)
23:30 * Skarsnik wish someone write a proper zip module
23:31 frew Skarsnik: be the change you want in the world
23:31 herby_ m: my @plus3 = map({$_ + 3}, (2, 4, 6)); say @plus3;
23:31 camelia rakudo-moar a7ea8e: OUTPUT«[5 7 9]␤»
23:31 Skarsnik nop
23:32 Skarsnik I already some modules to work on x)
23:32 RabidGravy ah gwan
23:34 Ulti m: say (2, 4, 6).map: * + 3;
23:34 camelia rakudo-moar a7ea8e: OUTPUT«(5 7 9)␤»
23:35 Ox0dea m: say map *+3, (2,4,6) # herby_
23:35 camelia rakudo-moar a7ea8e: OUTPUT«(5 7 9)␤»
23:35 Ox0dea Almost Haskell!
23:35 gfldex m: role R { method Str() {'hidden!'} }; my $i = 1 but R; sub f(\bound){ put bound }; f($i); $i++; f($i);
23:35 camelia rakudo-moar a7ea8e: OUTPUT«hidden!␤2␤»
23:36 herby_ Ox0dea, hmmm
23:36 gfldex should postfix:<++> strip the mixin in that way?
23:36 Ulti m: say map *+3, 2,4,6
23:36 camelia rakudo-moar a7ea8e: OUTPUT«(5 7 9)␤»
23:36 herby_ say map ***3, 2,4,6
23:37 herby_ m: say map ***3, 2, 4, 6
23:37 camelia rakudo-moar a7ea8e: OUTPUT«((6) (12) (18))␤»
23:37 Ox0dea Uh-oh.
23:37 herby_ hmm
23:37 AlexDaniel m: say (2, 4, 6)>>.succ>>.succ>>.succ
23:37 camelia rakudo-moar a7ea8e: OUTPUT«(5 7 9)␤»
23:37 AlexDaniel m: say (2, 4, 6)».succ».succ».succ
23:37 camelia rakudo-moar a7ea8e: OUTPUT«(5 7 9)␤»
23:38 AlexDaniel no version of succ that takes a parameter?
23:38 herby_ m: say map * **3, 2, 4, 6
23:38 camelia rakudo-moar a7ea8e: OUTPUT«(8 64 216)␤»
23:38 Ulti m: say map * ** 3, 2,4,6  #a little more readable >:P
23:38 camelia rakudo-moar a7ea8e: OUTPUT«(8 64 216)␤»
23:38 jcrespo joined #perl6
23:38 herby_ guess it needs that space
23:39 AlexDaniel m: say map *³, 2,4,6
23:39 camelia rakudo-moar a7ea8e: OUTPUT«Cannot call Numeric(Whatever: ); none of these signatures match:␤    (Mu:U \v: *%_)␤  in block <unit> at /tmp/TaF18IESwA line 1␤␤»
23:39 Ulti AlexDaniel: think superscripts only work for literals
23:40 AlexDaniel m: say map {.³}, 2,4,6
23:40 camelia rakudo-moar a7ea8e: OUTPUT«(8 64 216)␤»
23:40 jcrespo_ joined #perl6
23:40 Ulti wow
23:40 lucasb joined #perl6
23:40 herby_ how in the world do you get a superscript in irc?
23:40 RabidGravy yeah the whatever case isn't making a closure
23:40 Ulti there are more common examples of that
23:40 herby_ m: say map ** *3, 2,4,6
23:40 camelia rakudo-moar a7ea8e: OUTPUT«((6) (12) (18))␤»
23:41 herby_ ?
23:41 herby_ i'm confusing myself at this point
23:42 cpage_ joined #perl6
23:42 AlexDaniel how does that ↑ work?
23:42 herby_ m: say grep ('hello', 1, 2, 3).grep: Int
23:42 camelia rakudo-moar a7ea8e: OUTPUT«()␤»
23:43 herby_ blah
23:43 herby_ m: say ('hello', 1, 2, 3).grep: Int
23:43 camelia rakudo-moar a7ea8e: OUTPUT«(1 2 3)␤»
23:43 Ulti herby_:
23:43 herby_ ahhh, I'll give that a read.  Thanks!
23:43 AlexDaniel hyperwhatever… ok
23:44 Ulti UltraWhatever
23:44 Ulti ***
23:44 flussence
23:44 Ulti deals with changing dimensions through time
23:45 herby_ m: say (2,3,4,5,6).grep: %2 == 0
23:45 camelia rakudo-moar a7ea8e: OUTPUT«Cannot use Bool as Matcher with '.grep'.  Did you mean to use $_ inside a block?␤  in block <unit> at /tmp/IRa9hiazAy line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/IRa9hiazAy line 1␤␤»
23:45 herby_ hosed that up
23:46 herby_ can I grep a list to see what numbers can be evenly divisible by 2?
23:46 AlexDaniel m: say (2,3,4,5,6).grep: *%2 == 0
23:46 camelia rakudo-moar a7ea8e: OUTPUT«(2 4 6)␤»
23:46 herby_ ah, missed the *
23:46 AlexDaniel m: say (2,3,4,5,6).grep: *%%2
23:46 camelia rakudo-moar a7ea8e: OUTPUT«(2 4 6)␤»
23:46 AlexDaniel m: say (2,3,4,5,6).grep: {.%%2}
23:46 camelia rakudo-moar a7ea8e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/f_N26L0iOR␤Malformed postfix call␤at /tmp/f_N26L0iOR:1␤------> 3say (2,3,4,5,6).grep: {.7⏏5%%2}␤»
23:46 AlexDaniel m: say (2,3,4,5,6).grep: {. %% 2}
23:46 camelia rakudo-moar a7ea8e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/FIJTkDs0o7␤Unsupported use of . to concatenate strings; in Perl 6 please use ~␤at /tmp/FIJTkDs0o7:1␤------> 3say (2,3,4,5,6).grep: {.7⏏5 %% 2}␤»
23:46 AlexDaniel okay
23:47 herby_ m: say ('hello', 'world', 2,3,4,5,6).grep: *%2 == 0
23:47 camelia rakudo-moar a7ea8e: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5hello' (indicated by ⏏)␤  in whatevercode  at /tmp/rcKEpjPjHR line 1␤  in block <unit> at /tmp/rcKEpjPjHR line 1␤␤Actually thrown at:␤  in whateverc…»
23:47 lucasb m: say (42 but 'foo').Int
23:47 camelia rakudo-moar a7ea8e: OUTPUT«foo␤»
23:47 lucasb m: say (42 but 'foo').perl
23:47 camelia rakudo-moar a7ea8e: OUTPUT«foo␤»
23:48 Ulti m: say ('hello', 'world', 2,3,4,5,6).grep({$_ ~~ Int}).grep: *%2 == 0
23:48 camelia rakudo-moar a7ea8e: OUTPUT«(2 4 6)␤»
23:49 herby_ grep({$_ ~~ Int}) grabs all the Ints?
23:49 Ulti yup
23:49 Ulti :)
23:49 flussence am I doing something wrong? trying to build rakudo-jvm with --prefix=/usr; it works fine for moar but the java build ends up with a «javac -source 1.7 -cp /usr/usr/share/nqp/runtime/asm-4.1.jar:/usr/usr/share/nqp/runtime/asm-tree-4.1.jar...» and everything falls apart after that
23:49 AlexDaniel why {} though?
23:49 Ulti to make a closure
23:49 AlexDaniel say ('hello', 'world', 2,3,4,5,6).grep(* ~~ Int).grep: *%%2
23:49 AlexDaniel m: say ('hello', 'world', 2,3,4,5,6).grep(* ~~ Int).grep: *%%2
23:49 camelia rakudo-moar a7ea8e: OUTPUT«(2 4 6)␤»
23:50 AlexDaniel m: say ('hello', 'world', 2,3,4,5,6).grep(Int).grep: *%%2
23:50 camelia rakudo-moar a7ea8e: OUTPUT«(2 4 6)␤»
23:50 Ulti its a christmas miracle :)
23:51 jcrespo__ joined #perl6
23:51 RabidGravy :)
23:51 RabidGravy ttfn
23:51 AlexDaniel any way to make it shorter?
23:52 herby_ ('hello', 'world', 2,3,4,5,6).grep(Int).grep(* %% 2).say
23:52 herby_ m: ('hello', 'world', 2,3,4,5,6).grep(Int).grep(* %% 2).say
23:52 camelia rakudo-moar a7ea8e: OUTPUT«(2 4 6)␤»
23:53 Ch0c0late joined