»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
mscha m: say (-Inf..Inf)[100000]; # it actually has to think about this 00:01
camelia rakudo-moar 8bd7ee: OUTPUT«-Inf␤»
mscha m: say (-Inf..Inf)[1000000]; # it actually has to think about this
camelia rakudo-moar 8bd7ee: OUTPUT«-Inf␤»
mscha Or maybe not. It does in my local Rakudo Star.
m: say (-Inf..0)[*-1]; 00:02
camelia rakudo-moar 8bd7ee: OUTPUT«Cannot .elems a lazy list␤ in block <unit> at /tmp/TuIrhmsiLQ line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/TuIrhmsiLQ line 1␤␤»
00:03 lostinfog left
AlexDaniel mscha: this one is for you: rt.perl.org/Public/Bug/Display.html?id=125336 00:09
interestingly, it seems like it is fixed 00:10
yeah, can anybody close it please?
or guide me through creating a new account so that I can do it myself. 00:11
00:12 Skarsnik left, addison joined
AlexDaniel files.progarm.org/2016-02-05-02140..._scrot.png – that's all I can see when I log in 00:14
how can I fix it?
00:14 ZoffixWin joined
AlexDaniel when I try to view any ticket while I'm logged in I see this: “No permission to display that ticket No details” 00:14
dalek osystem: d6a2c05 | (Zoffix Znet)++ | META.list:
All Zoffix's modules: META.info -> META6.json
00:15
AlexDaniel or should I just mail [email@hidden.address] ?
00:17 wamba joined
ZoffixWin Tried clearing cache/cookies and relogginging? 00:19
00:19 HaraldJoerg left 00:21 RabidGravy left 00:23 Cheery joined
raiph hi Cheery :) 00:23
00:23 wamba left
raiph m: .WHAT.say for 1, 1.0e3 00:23
camelia rakudo-moar 8bd7ee: OUTPUT«(Int)␤(Num)␤»
raiph Num is a float
m: say (1 + 2e0).WHAT
camelia rakudo-moar 8bd7ee: OUTPUT«(Num)␤»
MadcapJake gfldex: hastebin.com/zedazucara.txt
Cheery what did happen there? 00:24
MadcapJake gfldex: here's the last line where the error occurs github.com/gfldex/http-server-simp...le.pm6#L48 00:25
but i don't understand why it's calling that, is it maybe for favicon.ico?
can't be that, i just added one as a link element 00:28
ZoffixWin New blog post: How to Make a Perl 6 Module (Bit Rot Thursday): blogs.perl.org/users/zoffix_znet/20...rsday.html 00:33
AlexDaniel ZoffixWin: no, it does not help 00:34
ZoffixWin AlexDaniel, weird :S
AlexDaniel ZoffixWin: I don't find it weird. RT is shit 00:35
ZoffixWin haha
00:35 cdg left 00:36 cdg joined
AlexDaniel If I write an email to [email@hidden.address] is it going to go down the sink? Who's there on the other side? 00:36
00:38 mcmillhj_ joined
AlexDaniel ok I guess there is one way to find out… 00:39
ajr_ Thanks for your help everyone. It's amazing how much one can learn translating a 5-line program. 00:40
00:40 mcmillhj left, gregf__ left 00:41 gregf__ joined 00:43 kid51 joined
[Coke] AlexDaniel: i get spport on that address, 00:44
OOC, what are you reporting?
00:45 Cheery left, ajr_ left, erdic left 00:46 erdic joined
AlexDaniel [Coke]: I can't use my account 00:47
[Coke]: in fact, I can't use the whole RT when I'm logged in
[Coke]: see this screenshot: files.progarm.org/2016-02-05-02140..._scrot.png
I can't even view any bug even if I go directly to the right link 00:48
00:49 lokien_ left
[Coke] yup, they should be able to help you out. 00:51
00:53 BenGoldberg joined 00:54 Cheery joined
Cheery .WHAT.say for 1, 1.0e3 in 00:55
00:55 BenGoldberg left, BenGoldberg joined
Cheery m: .WHAT.say for 1, 1.0e3 00:57
camelia rakudo-moar 8bd7ee: OUTPUT«(Int)␤(Num)␤»
Cheery ok. not going crazy anymore. :)
raiph: thanks for pointing that out
raiph Cheery: :)
m: multi sub infix:<+> (\a, \b) { say 'Cheery'; nextsame }; say 1 + 1 00:59
camelia rakudo-moar 8bd7ee: OUTPUT«2␤»
raiph m: multi sub infix:<+> ($a, $b) { say 'Cheery'; nextsame }; say 1 + 1
camelia rakudo-moar 8bd7ee: OUTPUT«2␤»
raiph m: multi sub infix:<+> (Int $a, Int $b) { say 'Cheery'; nextsame }; say 1 + 1
camelia rakudo-moar 8bd7ee: OUTPUT«Ambiguous call to 'infix:<+>'; these signatures all match:␤:(Int:D \a, Int:D \b --> Int:D)␤:(Int $a, Int $b)␤ in block <unit> at /tmp/29NRxMfNIM line 1␤␤»
raiph m: multi sub infix:<+> (1, Int $b) { say 'Cheery'; nextsame }; say 1 + 1 01:00
camelia rakudo-moar 8bd7ee: OUTPUT«Cheery␤2␤»
Cheery okay. :) 01:01
that's concise
raiph m: multi sub infix:<+> (Num $a, Int $b) { say 'Cheery'; nextsame }; say 1e0 + 1 01:02
camelia rakudo-moar 8bd7ee: OUTPUT«Cheery␤2␤»
raiph m: multi sub infix:<+> (Num $a, Int $b) { say 'Cheery'; nextsame }; say 1 + 1e0
camelia rakudo-moar 8bd7ee: OUTPUT«2␤»
raiph so that's a small version of the gof problem you're talking of, right?
Hotkeys is someone golfing? 01:04
raiph Cheery: ^^ ?
HotKeys: no, I meant GoF, short for Gang of Four
Cheery I'm not sure
AlexDaniel Hotkeys: no but I'd like to :D
kid51 AlexDaniel: Are you unable to see this ticket which you created? rt.perl.org/Ticket/Display.html?id=127424
01:05 yeahnoob joined
AlexDaniel kid51: No permission to display that ticket 01:05
kid51 And are you also unable to see the same ticket in the "public" view? rt.perl.org/Public/Bug/Display.html?id=127424 01:06
Hotkeys raiph: aw
AlexDaniel: woo
kid51 i.e., when you are not logged in to rt.perl.org via bitcard
AlexDaniel kid51: yes, I get an empty page
ah
when I'm not logged in of course I can see it 01:07
in fact, both links work just fine
Cheery raiph: in the GoF, I think I don't just like it. 01:08
kid51 I find that when I'm not logged in to rt.perl.org, clicking on the first link simply redirects to the second 01:09
AlexDaniel kid51: yes
kid51 Now, most of the time I am logged in, so I'm always getting the first link
Cheery raiph: one problem in it is that it's hard to explain what is happening in gang of four pattern
kid51 If you know that you are logged in and the first link redirects to the second, then, yes, there is something wrong and you have to speak with the admin. 01:10
Cheery it calls .__add__, if it fails, it calls .__radd__, but in middle it may do whatever to resolve that call.
kid51 (I actually never knew about the /SelfService/ endpoint until you posted it)
Cheery with multimethods, you can tell the default behavior, then you can tell the implemented type pairs. 01:11
AlexDaniel kid51: both links redirect me to SelfService when I'm logged in
rt.perl.org/SelfService/Display.html?id=127424 and rt.perl.org/SelfService/
Cheery raiph: anyway. I'm going to sleep now. but maybe we'll chat later. night. 01:12
ugexe m: my $v1 = v1.02; my $v2 = Version.new("v1.02"); say $v1.perl; say $v2.perl
camelia rakudo-moar 8bd7ee: OUTPUT«Version.new('1.2')␤Version.new('v.1.2')␤»
raiph Cheery: goodnight 01:13
kid51 Well, FWIW, this is the RT link I start with for Perl6: rt.perl.org/Search/Results.html?Fo...%2C%0A%20% 01:15
20%20Status%2C%0A%20%20%20QueueName%2C%0A%20%20%20OwnerName%2C%0A%20%20%20Priority%2C%0A%20%20%20%27__NEWLINE__%27%2C%0A%20%20%20%27%27%2C%0A%20%20%20%27%3Csmall%3E__Requestors__%3C%2Fsmall%3E%27%2C%0A%20%20%20%27%3Csmall%3E__CreatedRelative__%3C%2Fsmall%3E%27%2C%0A%20%20%20%27%3Csmall%3E__ToldRelative__%3C%2Fsmall%3E%27%2C%0A%20%20%20%27%3Csmall%3E__LastUpdatedRelative__%3C%2Fsmall%3E%27%2C%0A%20
%20%20%27%3Csmall%3E__TimeLeft__%3C%2Fsmall%3E%27&Order=DESC&OrderBy=LastUpdated&Page=1&Query=Queue%20%3D%20%27perl6%27%20AND%20%28Status%20%3D%20%27new%27%20OR%20Status%20%3D%20%27open%27%20OR%20Status%20%3D%20%27stalled%27%29&Rows=50
Woah, didn't expect that.
timotimo excellent!
AlexDaniel hmm…
timotimo note also that everyone clicking your link will potentially get a nasty warning about CSRF going on
kid51 Maybe this is better: tinyurl.com/j3kyb2t 01:16
AlexDaniel redirects to SelfService
kid51 Alright, then you'll have to sort that out with the admins. I've never used SelfService so can't speak to it. Good luch. 01:17
luck
AlexDaniel ok, thanks
Hotkeys: if you find any interesting problem to golf then please share :) 01:19
01:24 spider-mario left
Hotkeys will do 01:25
I just kind of trawl codegolf on stackexchange looking for intuitive problems 01:26
and hope that that other perl 6 guy hasn't answered them yet
AlexDaniel Hotkeys: what's your SE account? 01:33
Hotkeys codegolf.stackexchange.com/users/46...ockopeners
I haven't done very many
I do them here and there
I like when they allow functions 01:34
makes for very short stuff
AlexDaniel “shortest code in bytes” huh, bytes? 01:35
01:36 cdg left
Hotkeys I usually use bytes 01:36
Most people use bytes
I think it's so that golfed things don't become an obfuscated unicode mess like some of the golf langs can be 01:38
AlexDaniel in what encoding? 01:39
Hotkeys utf-8 is what I go with
probably that
timotimo 111 videos uploaded on fosdem's video page 01:41
AlexDaniel Hotkeys: codegolf.stackexchange.com/a/70856 this answer does not work :o 01:47
Hotkeys: “Indexing requires an instance, tried to do: [ (Any) ]” 01:48
Hotkeys what 01:49
I literally tried it a few hours ago
while trying to golf it shorter
worked fine
AlexDaniel hmmmm can you try it again?
oh wait, I'm doing it wrong 01:50
Hotkeys i.imgur.com/FPe5SWp.png 01:51
it's in a file, but same code
AlexDaniel yeah, sorry, I ignored the second argument 01:52
01:52 Actualeyes joined
Hotkeys ah 01:52
you gave me a scare there
:p
01:58 cbk joined 02:02 MichaelD joined 02:03 MichaelD left 02:04 telex left 02:06 telex joined
AlexDaniel Hotkeys: put [+] --«@*ARGS,1 # meh, exactly the same length 02:10
Hotkeys there was another answer in there that I didn't notice that was basically that 02:11
I didn't realize you could do '@*ARGS,1'
oh
wait
i'm a dope
nvm
AlexDaniel you can do the same thing with sum too :) 02:12
02:13 sivoais joined
AlexDaniel Hotkeys: why not say (^@*ARGS[0])».chr ? 02:20
Hotkeys: here: codegolf.stackexchange.com/question...2397#62397
Hotkeys: 0.. is not required according to the task 02:21
Hotkeys: or so it seems
02:21 sivoais left
Hotkeys because that was back in october 02:21
and I was a young 6r
6er
AlexDaniel Hotkeys: range(n) does not include n 02:22
Hotkeys: so edit it? :)
02:23 sivoais joined
Hotkeys alrighty 02:27
did
02:31 sivoais left 02:32 abaugher left 02:33 abaugher joined, sivoais joined 02:34 protium joined
AlexDaniel Hotkeys: my &f={.trans('a'..'z'=>[R~] 'a'…'z')} 02:38
Hotkeys: codegolf.stackexchange.com/question...8769#68769 02:39
Hotkeys: this is slightly shorter
though if you change … to ... it becomes as short as your version
but hey, it is more readable 02:40
oh!
minus one more character
Hotkeys: my &f={.trans('a'..'z'=>[~] 'z'…'a')}
Hotkeys I was just gonna say
why not just z to a
(lol that rhymes)
you need to accounmt for uppercase 02:41
AlexDaniel oh wait, it does not handle uppercase
02:42 sivoais left
AlexDaniel dammit :) 02:42
02:43 kid51 left
timotimo Svool 02:43
Hotkeys lol
svool
02:44 sivoais joined 02:45 DoverMo joined, ilbot3 left 02:47 ilbot3 joined
AlexDaniel Hotkeys: awww 02:52
02:52 sivoais left
AlexDaniel Hotkeys: my &f = {sqrt [+] (@^a »-«@^b)»²} 02:52
Hotkeys: one character longer than your version
timotimo m: say "Svool".encode.list>>.&({$^a+4+^31}).decode
camelia rakudo-moar 8bd7ee: OUTPUT«Method 'decode' not found for invocant of class 'List'␤ in block <unit> at /tmp/god1tTor9T line 1␤␤»
AlexDaniel … but much longer in bytes
timotimo m: say "Svool".encode.list>>.&({$^a+4+^31}).Buf.decode 02:53
camelia rakudo-moar 8bd7ee: OUTPUT«Method 'Buf' not found for invocant of class 'List'␤ in block <unit> at /tmp/UYnApBb7ZZ line 1␤␤»
timotimo m: say Buf.new("Svool".encode.list>>.&({$^a+4+^31})).decode
camelia rakudo-moar 8bd7ee: OUTPUT«Hello␤»
timotimo :\
soooo loooong 02:56
Hotkeys lol 02:57
02:57 MadcapJake left
Hotkeys AlexDaniel: yeah those bytes bite 02:58
the unicode can sometimes still save bytes though 02:59
like with this set op codegolf.stackexchange.com/a/66240/46687
not my answer
that's the other perl 6 golfer that I see all the time
03:03 zakharyas joined 03:07 addison left
timotimo he's also on the channel 03:09
AlexDaniel Hotkeys: ok this is not shorter (just 2 characters longer) but perhaps you'll find it interesting 03:10
m: my &f = &sqrt∘&sum∘{(@^a Z-@^b)»²}; say f([1,2], [3,4]);
camelia rakudo-moar 8bd7ee: OUTPUT«2.82842712474619␤»
Hotkeys function composition gives me nightmares of highschool math 03:11
jk hs math wasn't that bad
I didn't realize there was a sum function 03:12
m: say sum ^10
camelia rakudo-moar 8bd7ee: OUTPUT«45␤»
AlexDaniel same 3 characters as [+] :) 03:14
03:20 japhb left
AlexDaniel m: say IntStr.new(42, ‘NaN’) 03:21
camelia rakudo-moar 8bd7ee: OUTPUT«NaN␤»
AlexDaniel m: say IntStr.new(42, ‘NaN’) * 2
camelia rakudo-moar 8bd7ee: OUTPUT«84␤»
03:22 japhb joined 03:29 japhb left 03:30 noganex_ joined 03:33 noganex left
timotimo m: say [+]42 03:33
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Gir2EtPcam␤Two terms in a row␤at /tmp/Gir2EtPcam:1␤------> 3say [+]7⏏0542␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ statemen…»
timotimo m: say [+] 42
camelia rakudo-moar 8bd7ee: OUTPUT«42␤»
timotimo m: say sum 42
camelia rakudo-moar 8bd7ee: OUTPUT«42␤»
timotimo m: say sum42
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Pg1vWTtDAh␤Undeclared routine:␤ sum42 used at line 1␤␤»
timotimo fair enough
AlexDaniel m: say sum 41 03:34
camelia rakudo-moar 8bd7ee: OUTPUT«41␤»
03:36 japhb joined 03:47 Actualeyes left 03:54 Guest35482 left 03:55 japhb left, japhb joined 03:56 kurahaupo joined 04:02 _Dad joined
_Dad Is there a way to get "use English;" in Perl 6? 04:03
04:05 rayofilluminati joined 04:07 rayofilluminati left
AlexDaniel _Dad: most Perl 6 things have readable names. What is your issue? 04:09
except $_ and $/ I guess, but you are not forced to use these 04:11
and $! :)
_Dad The issue I'm having is with "use English;" itself. I get "Could not find English in" followed by about a dozen places it's looked. 04:15
AlexDaniel _Dad: ok, there's no “use English;” :) 04:16
_Dad I'm specifically wondering if the Z meta-operator has an English equivalent, like "zip these lists"
AlexDaniel sure
m: say zip (1,2,3), (42,69,96)
camelia rakudo-moar 8bd7ee: OUTPUT«((1 42) (2 69) (3 96))␤»
_Dad Okay, thanks. Is that the case for other meta-operators, and where would I read about them if so? 04:17
AlexDaniel m: say zip (1,2,3), (42,69,96), with => &[=>] 04:18
camelia rakudo-moar 8bd7ee: OUTPUT«(1 => 42 2 => 69 3 => 96)␤»
AlexDaniel _Dad: I don't think that there is any “Perl => English” table right now 04:19
_Dad: feel free to contribute one :)
_Dad: all docs are supposed to be here: doc.perl6.org/
_Dad: but I don't think that there is any quick way to search for what you are asking, hmm 04:20
_Dad: if you can't find something then just ask here, I guess
_Dad I'd be happy to, but I'm kind of on the ignorant side of "what the English equivalents are". I'll see if I can find something in the docs you linked. Thanks. 04:21
AlexDaniel wow! 「cross」 is not documented! 04:23
m: say cross (1,2,3), (42,69,96), with => &[=>]
camelia rakudo-moar 8bd7ee: OUTPUT«(1 => 42 1 => 69 1 => 96 2 => 42 2 => 69 2 => 96 3 => 42 3 => 69 3 => 96)␤»
AlexDaniel _Dad: submitted: github.com/perl6/doc/issues/382 04:25
but yeah, I guess that nobody asked before :) 04:26
perlawhirl AlexDaniel: there should also probably be a link to 'cross' from 'X' and (and vice versa)... same goes for 'Z' and 'zip'
_Dad At least the English equivalents are straightforward in these two cases, which is good. 04:29
AlexDaniel perlawhirl: You're right. I've copied your message to the issue.
04:29 polyfloyd left
AlexDaniel _Dad: personally I'd prefer “no English”. Some things are too verbose to me 04:31
e.g. there is currently no operator for 「roundrobin」
so you actually have to type “roundrobin”, geez
_Dad: but in that aspect Perl 6 will probably make you more happy than it makes me happy, currently :) 04:33
04:33 protium left 04:34 DoverMo left
_Dad My feeling is that the operators diminish readability, IDEs and cheap storage mean there's no penalty for verbosity, so English is the way to go. 04:36
I don't even like that "with => &[=>]" you threw in there. How is somebody supposed to look that up? 04:37
04:37 BenGoldberg left, polyfloyd joined
Hotkeys well => is an op and 'name => thing' is syntax for a named parameter 04:38
you'd have to already know some of that
AlexDaniel m: say cross (1,2), (42,69), :with(&[=>])
camelia rakudo-moar 8bd7ee: OUTPUT«(1 => 42 1 => 69 2 => 42 2 => 69)␤»
Hotkeys I prefer this syntax myself ^ 04:39
for all named vars
_Dad Better :)
AlexDaniel _Dad: so you think that this ↑ is more readable than
m: say (1,2) X=> (42,69)
camelia rakudo-moar 8bd7ee: OUTPUT«(1 => 42 1 => 69 2 => 42 2 => 69)␤»
AlexDaniel I don't buy it
Hotkeys I don't either
if you didn't know 04:40
you could just search the docs for infix X docs.perl6.org/routine/X
see that it can be a metaop, and then look at infix => 04:41
badabing
badaboom
and once you know it once you know it so
much more readable IMO
AlexDaniel _Dad: you don't have to listen to us though, we're not here to dictate some specific style :) 04:42
Hotkeys dictates
AlexDaniel but we may tell you about our opinions, yes :)
_Dad I suppose there was a time when "once I know it once, I know it," but increasingly the sad reality is "I used to know that, but..."
AlexDaniel _Dad: then look it up! It is quite easy to search the docs for an operator 04:43
all operators are listed here: docs.perl6.org/routine-operator.html
Hotkeys I like how easy the docs are to navigate 04:44
much more so than some other langs
they're not 100% complete but they're pretty good and that'll come with time
AlexDaniel the search form will be improved too
04:45 vendethiel joined
_Dad Jesus H. Christ, it's worse than I thought. ^fff^ ??? 04:45
AlexDaniel doesn't like “use English” idea because he cannot speak English properly
_Dad: don't worry, this one is not very popular :) 04:46
04:47 wbill joined
_Dad "Hard to read" may be contributing to its low popularity ? 04:47
AlexDaniel _Dad: “wtf is flipflop operator” is probably a bigger influnce on its popularity 04:48
04:48 Actualeyes joined
_Dad Is that what that thing is, a flipflop operator? TIL 04:49
(today I learned, tomorrow I forget)
b2gills Hotkeys: Do you want me to slow down on answering CodeGolf problems? 04:55
Hotkeys b2gills: haha no it's alright 04:56
b2gills &infix:<fff> and &infix:<ff> have their roots all the way back to sed
AlexDaniel _Dad: well, Perl 6 has lots of operators and lots of features, but you don't have to know about all of them. Feel free to use a subset of Perl 6 (which is what we all do). 04:57
b2gills: but there's a good question why we have no “flipflop” sub or something
b2gills flipflop is VERY magical 04:58
Its main use is in parsing line oriented files
Hotkeys we do AlexDaniel
&infix:<fff>() :p 04:59
AlexDaniel :/
Hotkeys jk
04:59 zakharyas left
b2gills m: for ^10 { say 5 fff 7 } 04:59
camelia rakudo-moar 8bd7ee: OUTPUT«Nil␤Nil␤Nil␤Nil␤Nil␤1␤2␤3␤Nil␤Nil␤»
Hotkeys b2gills: I didn't actually see your answer on the electrical outlet question until after I posted 05:00
_Dad I don't have a problem with the feature, but the "sed-inspired" syntax seems to me to be a mistake. When someone writes "flipflop" I can make a decent guess about what it does. When someone writes ^fff^ I have no clue.
Hotkeys I didn't intend to try and take the spotlight I swear
b2gills Hotkeys: I've done that before as well
AlexDaniel m: for <AB C D B E F> { say $_ if &infix:<fff>(/A/, /B/); } 05:01
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gj5iG8ganT␤Undeclared routine:␤ infix:<fff> used at line 1. Did you mean 'infix:<∖>', 'infix:<lt>', 'infix:<eq>', 'infix:<o>', 'infix:<~|>'?␤␤»
b2gills _Dad the ^ means exclude that side
Hotkeys Have we always had a sum function or is that recent
AlexDaniel Hotkeys: ↑ it doesn't work?
Hotkeys I seem to remember having to use [+] no matter what
b2gills sum was added to make [+] 1..1000000 faster
Hotkeys not sure AlexDaniel
b2gills m: say [+] 1..1000000; say now - INIT now
camelia rakudo-moar 8bd7ee: OUTPUT«500000500000␤0.00280925␤»
Hotkeys it's listed as 'sub infix:<fff>(Mu $a, Mu $b)' so i just assumed
AlexDaniel Hotkeys: it looks like a bug… 05:02
b2gills I think fff has to be in the parser because of how magical it is 05:03
Hotkeys m: my @list = <A B C>; say $_ if /A/ ^fff^ /C/ for @list;
camelia rakudo-moar 8bd7ee: OUTPUT«B␤»
Hotkeys m: my @list = <A B C>; say $_ if infix:<^fff^>(/A/,/C/) for @list;
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZQ_fkN2yd7␤Undeclared routine:␤ infix:<^fff^> used at line 1. Did you mean 'infix:<..^>', 'infix:<…^>', 'infix:<...^>', 'infix:<^..>', 'infix:<~^>'?␤␤»
b2gills Each use of fff is a new state variable
Hotkeys I' 05:04
I've been getting so much rep today
Was that you AlexDaniel :p
AlexDaniel b2gills: mmmmm, inconsistencies
05:04 khw left
AlexDaniel Hotkeys: yeah, I upvoted ones that I couldn't golf down shorter 05:04
(almost all of them)
Hotkeys woo 05:05
b2gills Well that's what you get when you combine things from languages that are over 30 years old
05:06 khw joined 05:08 vendethiel left 05:11 protium joined
sortiz Just installed new R* with msi, then I try "p6doc faq" and get "Variable '@rem' is not declared...", seems that the panda's wrapper for windows is trying to run the bat file. 05:28
05:28 MadcapJake joined
MadcapJake ZoffixWin, why'd you change your modules' META.info to META6.json files? 05:30
sortiz Indeed, s/.bat// in perl6\site\bin\p6doc solves the issue. Not others files in bin affected, just p6doc! 05:36
AlexDaniel sortiz: PR! PR! PR! :)
sortiz AlexDaniel, I need to check first where is the wrapper constructed. 05:37
ugexe because the .bat is automatically generated now 05:38
05:39 lokien_ joined
sortiz The p6doc.bat file seems right, is panda's p6 wrapper bin/p6doc that had the problem. 05:41
ugexe its the same code github.com/rakudo/rakudo/blob/nom/...ion.pm#L24 05:43
b2gills I just noticed that codegolf.stackexchange.com/a/66454/1147 was broken because three of the "characters" were trimmed
05:46 vendethiel joined 05:47 Cabanossi left
sortiz ugexe, right, panda is innocent then. In this case somehow the perl_wrapper got 'p6doc.bat' in #name# 05:47
jeek Is there any new perl6 magic to more quickly find solutions for a+b+c+d+e+f+g+h==someconstant where a through h are each from the same 40320-entry list?
sortiz p6doc includes its own p6doc.bat, that can be the problem. 05:49
ugexe maybe. panda strips the .bat off the name. CURLI automatically adds it back on. but theres also already a `p6doc` file to go along with "p6doc.bat".subst(/.*\.bat$) (the same) 05:50
AlexDaniel jeek: what is 40320-entry list?
jeek A list with 40320 entries in it. 05:51
05:51 Cabanossi joined
AlexDaniel aaa 05:51
jeek Permutations of 12345678, if it matters.
ugexe but yea, the perl6 wrapper will try to run the p6doc .bat as a perl6 file 05:52
AlexDaniel m: say 42 ~~ any(((1…9).permutations).map: &sum) 05:56
jeek: ↑ ?
might take some time to compute…
camelia rakudo-moar 8bd7ee: OUTPUT«(timeout)» 05:57
AlexDaniel jeek: hold on, but the result is always the same… 05:58
05:58 khw left
AlexDaniel jeek: did you mean combinations? 06:00
jeek 12345678, 12345687, 12345768, 123456786, ..., 87654312, 87654321
looking for all nonrepeating length-8 subsets of that list that sum to 39999996 06:01
AlexDaniel ah… 06:02
so that's combinations of permutations? :) 06:03
06:03 bjz joined
AlexDaniel jeek: that's going to take quite some time to compute with the most obvious solution 06:04
even if you do that in parallel
sortiz ugexe, Any way source doc/bin/p6doc.bat seems superfluous.
06:07 protium left, bjz left 06:20 kanishka joined 06:23 wbill left 06:28 vendethiel left 06:31 AlexDaniel left 06:37 domidumont joined
perlawhirl permutations is quite slow to eagerly evaluate once you have more than a small handful 06:39
m: say +(^7).permutations; say now - INIT now
camelia rakudo-moar 8bd7ee: OUTPUT«5040␤1.3458848␤»
perlawhirl m: say +(^8).permutations; say now - INIT now 06:40
camelia rakudo-moar 8bd7ee: OUTPUT«40320␤9.63394466␤»
perlawhirl it keeps going up almost by orders of 10
06:42 domidumont left 06:44 domidumont joined
b2gills m: say (^10).permutations.elems; say now - INIT now # really this optimization should be enabled, but I think there is a bug in List 06:45
camelia rakudo-moar 8bd7ee: OUTPUT«(timeout)»
b2gills m: say permutations(10).elems; say now - INIT now 06:46
camelia rakudo-moar 8bd7ee: OUTPUT«3628800␤0.0039319␤»
06:46 geraud left 06:47 zakharyas joined 06:48 CurtisOvidPoe joined 06:50 domidumont left 06:52 vendethiel joined 06:57 raiph left
jeek I got something together in python that is at least spitting out answers quickly, but there's going to be a lot of them. 06:58
perlawhirl m: say permutations( +(^15).join.comb ).elems # /70982/rearranging-the-sequence 06:59
camelia rakudo-moar 8bd7ee: OUTPUT«2432902008176640000␤»
perlawhirl that is the quickest way i've found
where 15 is the imput
my $i = 30; say permutations( +(^$i).join.comb ).elems
odd 07:00
say permutations( +(^100).join.comb ).elems
oops
m: my $i = 30; say permutations( +(^$i).join.comb ).elems
camelia rakudo-moar 8bd7ee: OUTPUT«30414093201713378043612608166064768844377641568960512000000000000␤»
jeek gist.github.com/anonymous/1afc48c1910561a170eb 07:01
07:07 CurtisOvidPoe left 07:08 sjoshi joined 07:09 domidumont joined
Hotkeys that's a lot of stuff 07:10
perlawhirl say permutations(+(^(+$_||1)).join.comb).elems for lines # /70982/rearranging-the-sequence 07:13
nine .tell raiph I'm not on reddit, but would be happy to discuss these things on #perl6-toolchain. 07:27
yoleaux nine: I'll pass your message to raiph.
perlawhirl ohai nine 07:31
07:31 nakiro joined
perlawhirl remember you asked me about reporting issues with panda complaining about reinstalling already installed modules 07:31
i think i managed to replicate it
07:31 vendethiel left
perlawhirl i installed a module from the eco system 07:31
i wanted to try some modifications, so cloned it from git, made may changes. when i then tried to do a local install with panda (from my cloned copy) it complains it's already installed and dies 07:32
07:33 _Gustaf_ joined
perlawhirl i understand maybe the reasoning why... perhaps it could say 'already installed, are you sure you want to overwrite with ...' etc 07:33
07:39 perlawhirl left
El_Che perlpilot: fork the name? 07:40
Blah::Blue::Forked
07:41 _mg_ joined
[Tux] test 23.214 07:44
test-t 12.583
csv-parser 50.953
07:45 _mg__ joined 07:46 _mg_ left, _mg__ is now known as _mg_, cxreg2 is now known as cxreg
dalek href="https://perl6.org:">perl6.org: d27cf15 | (Steve Mynott)++ | source/downloads/index.html:
refer to new window's MSIs
07:47
07:48 MadcapJake left 07:49 CIAvash joined 07:59 lokien_ left 08:01 Ven joined 08:02 salv0 joined, zakharyas left 08:11 FROGGS joined 08:12 skids left, uruwi joined
moritz .tell perlawhirl panda has a --force option to overwrite existing installations of a module 08:13
yoleaux moritz: I'll pass your message to perlawhirl.
08:13 darutoko joined 08:14 Ven left
dalek href="https://perl6.org:">perl6.org: 9d0de27 | (Steve Mynott)++ | source/downloads/index.html:
add whitespaxe
08:14
uruwi Anyone else having problems with Compress::Zlib on Rakudo Star 2016.01? 08:15
stmuk_ uruwi: do you have a short code example? 08:18
uruwi Try running the tests for Compress::Zlib. 08:19
* Compress::Zlib::Raw
Seems to be a Find::Bundled problem, though
FROGGS o/ 08:20
uruwi The stack trace leads to line 10 of this source: github.com/retupmoca/P6-Find-Bundl...undled.pm6 08:21
FROGGS uruwi: there is no @*INC anymore, is there? 08:22
m: say @*INC
camelia rakudo-moar 8bd7ee: OUTPUT«Dynamic variable @*INC not found␤ in block <unit> at /tmp/tm5rbEx4zL line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/tm5rbEx4zL line 1␤␤»
uruwi That explains it. 08:24
timotimo o/ 08:25
stmuk_ maybe try something like ($*REPO.repo-chain()>>.Str).grep: *.IO.d 08:26
moritz the first thing it does in the loop is create CompUnit::Repository from the strings anyway 08:27
so maybe just "for ($*REPO.repo-chain() { ...
?
stmuk_ I think that would contain objects as well as directories 08:28
uruwi m: say ($*REPO.repo-chain()>>.Str).grep: *.IO.d
camelia rakudo-moar 8bd7ee: OUTPUT«(/home/camelia/rakudo-m-inst-1/share/perl6/site /home/camelia/rakudo-m-inst-1/share/perl6/vendor /home/camelia/rakudo-m-inst-1/share/perl6)␤»
stmuk_ oh moritz is right that's what you want anyway 08:29
I was never sure why the list contained two data types TBH 08:30
El_Che META.info is nowadays META6.json?
08:33 bioexpress joined, wamba joined
timotimo aye think so 08:33
stmuk_ yeah I think S22 changed
bioexpress Hi, could changing a signature from `( Array $list, %opt? )` to `( Array $list, Hash $opt? )` break the API? 08:34
stmuk_ actually it seems to change more frequently than I change shirts
08:34 perlawhirl joined
uruwi Replacing @*INC with all that didn't get rid of the error, though. 08:36
moritz bioexpress: it could. The % sigil actually implies Associative (a role that Hash does), not Hash itself 08:39
bioexpress: but why would you even do that?
08:41 firstdayonthejob left
uruwi Did CompUnit::Repository change its definition? 08:42
Seems to have added an id method 08:43
08:45 Amendil left
El_Che the json extension is nice to get syntax highlighting in vim :) 08:46
08:47 rindolf joined, cibs left
sortiz Testing new R* MSI, found a more serious problem with p6doc: No documents are installed, because Build.pm fails. See github.com/perl6/doc/pull/383 08:48
moritz sortiz: I'm waiting for the travis check before merging that pull request 08:49
sortiz: and thanks for the pull request, btw :-)
bioexpress moritz: I don't change it - the question occured to me because `Array $list, %opt` looked a little "unbalanced" to me.
moritz sortiz: I've also invited you to the perl6 org on github, so you can push directly
bioexpress: right, I'd just use (@list, %opt) 08:50
bioexpress moritz: because it looks better or do I gain something else? 08:51
sortiz \o/ thanks moritz, I'll be very careful.
moritz bioexpress: because you can iterate over it 08:52
for @list { ... } # works
bioexpress moritz: is there a difference in speed between passing it as @list or as Array $list? 08:53
moritz bioexpress: yes, $ is always a scalar
08:53 cibs joined 08:54 perlawhirl left
timotimo not a difference in speed, really 08:54
08:55 vendethiel joined
bioexpress Thx, so I will try it with @list. 08:56
timotimo though ... maybe it does have an impact. i haven't measured
08:57 fireartist joined 08:59 Ven joined 09:01 perlawhirl joined 09:02 RabidGravy joined 09:06 buharin joined
buharin hello :) 09:06
DrForr Mornin'. 09:07
dalek href="https://perl6.org:">perl6.org: 4039a64 | (Steve Mynott)++ | source/downloads/index.html:
explain star
buharin hey I was looking for list of module to implement 09:08
09:08 mr-foobar left
buharin but I don't know what to take :/ 09:08
for beginning
timotimo so you already found the "most wanted" project on github? 09:09
09:09 mr-foobar joined
buharin no I didn't decide 09:11
09:12 ecocode joined, gregf__ left, firstdayonthejob joined, breinbaas left
El_Che buharin: github.com/perl6/perl6-most-wanted...-wanted.md 09:12
RabidGravy well I could do with a really good logging thing, an eventsource client, something a bit like SQL::Abstract and a few other things 09:13
09:13 breinbaas joined
buharin ye I look at this github.com/perl6/perl6-most-wanted...modules.md but I don't know what is best for beginnng 09:13
09:13 gregf_ joined 09:14 abraxxa joined
RabidGravy I would actually look at it from a different angle, think of an application that would be useful to you, look at how you might make it, make modules that might be neeeded 09:15
buharin RabidGravy: thats a point
El_Che buharin: you could send a PR to fix this module: github.com/retupmoca/P6-Net-SMTP/issues
buharin: if uses a method removed from rakudo 09:16
09:16 bioexpress left, ocbtec joined
stmuk_ extending test coverage for existing modules is useful too since many don't test themselves at all 09:16
buharin okay ;-) I will look at it at home
09:16 vendethiel left
DrForr The Standard code modules from I18n are relatively low-hanging fruit. 09:16
buharin when an web framework perl will be announced anyway? 09:17
DrForr Bailador is there but somewhat stale.
RabidGravy yeah, some standard locale stuff for dates, numbers and stuff would be useful
dalek c: d00b0c5 | (Salvador Ortiz)++ | Build.pm:
Update Build.pm

In windows File::Find::&find returns files with backslash (\) separator, so $dest.split fails to find '/doc' in them. See:
  ```
  > say $dest, '=>', $dest.split("$workdir/doc")[1];
C:\rakudo\tests\doc\doc\Type\X\Syntax\Signature\InvocantMarker.pod=>Nil
  > say $dest, '=>', $dest.split("$workdir\\doc")[1];
C:\rakudo\tests\doc\doc\Type\X\Syntax\Signature\InvocantMarker.pod=>\Type\X\Syntax\Signature\InvocantMarker.pod
  ```
09:19
c: a30c00d | sylvarant++ | Build.pm:
Merge pull request #383 from salortiz/patch-1

Fix Build.pm for proper Windows support
09:29 Averna joined 09:30 perlawhirl left, yeahnoob left 09:32 CIAvash left
fireartist morning! How can I pass a %hash to a method with signature (*@args), such that it sees a single hash, instead of a list of kv pairs? 09:33
jnthn $%hash or %hash.item 09:34
yoleaux 4 Feb 2016 22:02Z <lizmat> jnthn: could it be that nqp::attrinited gives false positives? it may be buggy, as it only seems to be used in one place in nqp ?
09:35 mr-foobar left
fireartist jnthn: thanks - do you now what doc page explains that leading $ version? 09:35
09:35 Zero_Dogg left
jnthn .tell lizmat It's used in Mu.pm and is hit every single object construction. It's not buggy, but you do need to know that if anything did an nqp::getattr on the attribute then it'll have been vivified, and so count as atterinited. So if things are fetching it elsewhere in Hash/Map rather than doing the inited check, that may be the issue. 09:35
yoleaux jnthn: I'll pass your message to lizmat.
09:36 Zero_Dogg joined
jnthn fireartist: doc.perl6.org/language/containers#F...containers seems to talk about it a bit 09:36
(May need to read earlier bits of the page for context) 09:37
fireartist jnthn++ thanks very much!
09:39 mr-foobar joined 09:41 sjoshi left 09:44 mr-foobar left, mr-foobar joined 09:49 kanishka left 09:57 sjoshi joined 09:58 vendethiel joined 10:00 kjs_ joined
RabidGravy I might add an option to Test::lives-ok so that in the fail case it can print the full back-trace of the exception rather than just the message 10:01
the number of times I've had a lives-ok fail, not sure why gone from message to the test file and commented out the lives-ok part to jut get the full exception 10:02
10:03 Amendil joined, yurivish_ left 10:07 Amendil left 10:17 zakharyas joined
dalek c/salortiz-remove-bat: 7195760 | (Salvador Ortiz)++ | bin/p6doc.bat:
Delete p6doc.bat, unneded with CURLI

In windows, at install time CURLI creates a bat file when needed, and this file results in an non-functional perl6 wrapper created in ..\\site\\bin.
10:17
10:20 vendethiel left 10:31 espadrine joined, perlawhirl joined 10:36 Ven left, partly joined
partly hi 10:36
10:36 Amendil joined
partly I'm trying to build the current moarvm 10:36
FROGGS hi partly 10:37
partly: and you are running into problems?
partly if i execute rakudobrew build moar i'm getting an error 10:38
partly is searching for an official perl6 nopaste
10:38 Averna left
FROGGS partly: use any no-paste service you like 10:38
or gist.github.com
partly nopaste.linux-dev.org/?936462 10:39
10:39 zakharyas left
partly I had some problems before but i fixed them by installing perl-Test-Harness and perl-ExtUtils-Command 10:39
But this one does not look like a missing dependency
timotimo when i got that error, i just had to nuke my install folder
and it went away 10:40
FROGGS no, looks more like NativeCall is unhappy
yeah, that might solve it
partly Why is native call unhappy
timotimo it's really hard to see that it's about nativecall, what with the obfuscated names
FROGGS timotimo: "bool" only exists in NativeCall land 10:41
timotimo yeah
10:41 pangur joined
timotimo but a regular user wouldn't know about that 10:41
FROGGS partly: I guess it is fetching a NativeCall::* package from a previous build from install/
true 10:42
partly FROGGS: this makes sense. I have a working perl6 installation
10:42 donaldh joined
partly so just rm -rf ~/.rakudobrew/moar-nom/install/* should fix it? 10:42
10:43 travis-ci joined
travis-ci Doc build passed. Salvador Ortiz 'Delete p6doc.bat, unneded with CURLI 10:43
travis-ci.org/perl6/doc/builds/107200294 github.com/perl6/doc/commit/7195760740d8
10:43 travis-ci left
pangur I have been trying out the perl6intro.com/#_running_perl_6_code and find that the script involving zoo animals does not work for me --- even though I merely copied it into my emacs. 10:43
The error message that I get is this:
perl6 test.p6 10:44
===SORRY!=== Error while compiling test.p6
Confused
at test.p6:5
------> <BOL>⏏my @animals = ['camel','vicuña','llama']
expecting any of:
statement list
Sorry, I hope that was not flooding.
FROGGS we usually use no-pastes for that as well
can you no-paste your test.p6? 10:45
if you put it in a gist we can run it here
pangur paste.fedoraproject.org/318894/ 10:46
FROGGS pangur: line 3 misses a semicolon at the end 10:47
timotimo why don't we give a good error about that?
pangur I just copied and pasted directly from the tutorial.
FROGGS m: use v6␤say 42 10:48
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XoL8rLLZpu␤Confused␤at /tmp/XoL8rLLZpu:2␤------> 3use v67⏏5<EOL>␤»
pangur ah not line 3
10:48 pecastro joined
FROGGS m: use v6␤␤say 42 10:48
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/TlMR3Ke8oN␤Confused␤at /tmp/TlMR3Ke8oN:3␤------> 3use v67⏏5<EOL>␤»
FROGGS m: use v6␤␤my $bar
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZV1IGAXgbG␤Confused␤at /tmp/ZV1IGAXgbG:3␤------> 3use v67⏏5<EOL>␤»
partly FROGGS, timotimo: Thanks for the advice, it seems to work
RabidGravy yep works fine with the ; on that line 10:49
FROGGS \o/
jnthn m: say 42␤say 43
timotimo partly: glad to hear it!
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lz83psBHwF␤Two terms in a row across lines (missing semicolon or comma?)␤at /tmp/lz83psBHwF:2␤------> 3say 427⏏5<EOL>␤ expecting any of:␤ infix␤ infix stopper␤ postfi…»
flussence m: use Test␤my $bar
camelia rakudo-moar 8bd7ee: OUTPUT«5===SORRY!5=== Error while compiling /tmp/N3jsZb8jfn␤Error while importing from 'Test':␤no EXPORT sub, but you provided positional argument in the 'use' statement␤at /tmp/N3jsZb8jfn:2␤------> 3my $bar7⏏5<EOL>␤ expecting any of:␤ …»
FROGGS bbl
jnthn FROGGS: I think it only intuits it if there's a TTIAR
flussence: heh, that one is actually legal syntax :)
Oh no, you could do something horrible with that!
pangur OK, sorry for missing the semicolon at use v6; However I now get this error:
use of uninitialized value of type Any in string context in block at test.p6:15
RabidGravy my hovercraft is full of eels
timotimo jnthn: you could pass a variable to the EXPORT sub and have the export sub "is rw" it, you mean? :) 10:50
jnthn timotimo: Correct :)
flussence sounds like a case of DIHWIDT
pangur What is wrong with "say "We're going to let go: " ~ @animals.splice(1,2) ~ " and keep the " ~ @animals;" 10:51
partly I executed rakudobrew build moar && rakudobrew build-panda
jnthn flussence: I'm sure it could be used to good effect, I just hadn't thought of it :)
partly if i execute perl6 --version it shows me Rakudo version 2015.12... built on MoarVM version 2016.01
shouldn't i have the Rakudo version 2016.01 after update?
10:51 TEttinger left
jnthn partly: I think it builds HEAD, but 2016.01 was done from a release branch that didn't get pulled back into HEAD yet. 10:52
dalek c: 7195760 | (Salvador Ortiz)++ | bin/p6doc.bat:
Delete p6doc.bat, unneded with CURLI

In windows, at install time CURLI creates a bat file when needed, and this file results in an non-functional perl6 wrapper created in ..\\site\\bin.
c: 7b80938 | (Salvador Ortiz)++ | bin/p6doc.bat:
Merge pull request #384 from perl6/salortiz-remove-bat

Delete p6doc.bat, unneded with CURLI
jnthn partly: I don't really know how rakudobrew works, but I think you'd need to give it the tag name to build precisely 2016.01
partly jnthn: so how do you upgrade and deploy perl6 if you are not using rakudobrew? I thought this is the official way? 10:53
RabidGravy it's a way 10:54
pangur paste.fedoraproject.org/318897/54669607/ shows the output from the tutorial script.
RabidGravy rakudobrew makes it easy to manage the various versions in a way like perlbrew
but installing from source may be better for "production" use 10:55
pangur I am wondering if my perl6 is properly installed? Is there a way I could tell?
jnthn partly: Using the releases is another way: rakudo.org/
El_Che --> packaging to rpm/deb, etc
RabidGravy pangur, what does "per6 -v" say? I don't get that running the same code 10:56
10:56 kjs_ left
pangur This is perl6 version 2013.12 built on parrot 5.9.0 revision 0 10:56
10:56 kjs_ joined
partly i see 10:57
RabidGravy pangur, way old, you will need to upgrade
pangur ah ok, thanks RabidGravy.
I only installed it yesterday :)
RabidGravy where from? and how?
flussence from a bad distro, I'm guessing...
RabidGravy parrot isn't even supported any more afaik 10:58
pangur sudo apt-get install perl6 I think.
RabidGravy lawks
flussence ah, Debian Stale.
pangur I use linuxmint
El_Che Debian Stale :)
aha
flussence same thing :)
pangur So, how should I install it instead? 10:59
RabidGravy pangur, rakudo.org/how-to-get-rakudo/
partly btw zef or panda? which one should be used?
pangur click
RabidGravy a number of options
pangur OK, thanks for the link 11:00
11:00 kjs_ left
timotimo hahaha, 2013.12, that's kind of hilarious :) 11:03
11:04 Ven joined 11:07 ely-se joined
timotimo twitter.com/dclinephx/status/695470443164110849 - cool. i wonder if we can haz slides? does anybody know this person? 11:09
11:11 emdashcomma_ left
partly are the FOSDEM Perl6 videos already online some where? 11:11
11:11 mr-foobar left, Cabanossi left, lucs_ left, jameslen_ left, zacts left, alnewkirk left
timotimo video.fosdem.org/2016/STATUS.txt - the number hasn't gone up since last night. last night there were no perl6 related videos yet 11:12
11:12 firstdayonthejob left, sortiz left, juu left, Rotwang left, ingy left, anshin left
partly timotimo: thanks 11:12
11:13 zacts joined, lucs joined, alnewkirk joined, zacts is now known as Guest52031, Rotwang joined, jameslenz joined 11:14 salv0 left, mcmillhj_ left 11:16 Cabanossi joined, emdashcomma joined
Ven the names rooms are :| 11:16
pangur I removed perl6, installed rakudobrew via git clone, and I still seem to have parrot 5.9.0 revision 0 :(
Ven s/names rooms/room names/ 11:17
pangur: huh?
timotimo pangur: with "which perl6" you can find out where it takes the perl6 binary from
11:18 kid51 joined
pangur '/usr/bin/perl 11:18
timotimo OK, so somehow it's still installed system-wide
not sure how to determine if that's what dpkg installed for you
pangur It was perl5 originally
flussence wait, *what*? 11:19
pangur that was at /usr/bin/perl
timotimo huh?
did you just type and forgot the 6?
11:19 juu joined
pangur '/usr/bin/perl6 11:20
11:20 ely-se left
pangur I did which perl rather than which perl6 11:20
timotimo OK
pangur Sorry
11:21 mr-foobar joined
timotimo so, something's still giving you a /usr/bin/perl6? 11:21
pangur yes but it obviously is not the perl6 version that I had been hoping for. 11:22
timotimo right. so you've tried to uninstall the perl6 package, but it somehow didn't work? 11:23
pangur When I do sudo apt-get remove perl6, it says Note, selecting rakudo instead of perl6
timotimo that could be all right
11:24 anshin joined
pangur Ah, I have now autoremoved libparrot5.9.0 nqp parrot parrot-minimal 11:25
11:25 sortiz joined, firstdayonthejob joined, ingy joined
timotimo but none of those packages should provide the perl6 binary 11:25
well, it's a moot point, that stuff is years out of date and we can't change it now
pangur Now, when I do perl6 -v I get bash: /usr/bin/perl6: No such file or directory 11:27
That sounds as I am making progress, I hope :)
timotimo it's interesting that it's giving you a specific path
pangur I have perl5 still installed. 11:28
Does that make a difference?
timotimo no, perl6 and perl5 are completely separate
pangur phew
I think my system relies on perl5 11:29
sortiz pangur, Yes! You NEED perl5 to build rakudo.
DrForr And to run a lot of what's on your system already, for that matter :)
pangur Yeah, I still have perl5. 11:30
Am removing directories referring to rakudo
sortiz night #perl6 11:31
timotimo it's generally a bad idea to manually muck with files managed by the package manager, but since you've already killed the packages, it may be all right
gnite sortiz
11:31 kaare_ joined 11:32 sortiz left 11:38 vendethiel joined
pangur OK, I have gotten as far as to git clone rakudobrew. 11:38
At this point, it looks as if I am faced with choiuce moar or panda. 11:39
choice
RabidGravy moar
timotimo that's not really a choice 11:40
"build moar" will give you a rakudo perl6 based on the MoarVM
pangur I have to do panda as well?
timotimo "build panda" gives you the module installer 11:41
pangur ok
thanks
timotimo panda won't run without a perl6
pangur I missed these steps last time
I noticed that I could not sudo rakudobrew build moar, only rakudobrew build moar. 11:43
Rakudo has been built and installed. 11:44
flussence the last person who blindly ran rakudobrew as root nuked their entire OS
jast there were symlinks involved in that case, too 11:45
timotimo yes, not sudo, please
blind + unlucky in that case
pangur Someone made the installer clever enough to prevent it. That is good.
I am currently installing panda 11:46
built panda :)
watching Task::Star install 11:48
This is Rakudo version 2015.12-242-g8bd7ee6 built on MoarVM version 2016.01 implementing Perl 6.c. 11:54
timotimo good :) 11:55
pangur is in a happy mood
pangur goes to test his zoo :)
11:56 azawawi joined
azawawi hi #perl6 11:56
11:57 xtreak joined, Ven left
pangur Now I get perl6 test.p6 /bin/bash: perl6: command not found 11:57
Am I ever going to get this zoo working?
11:58 RabidGravy left
pangur OK, I have gotten it. If I use the terminal, I am OK. 11:59
11:59 donaldh_ joined
azawawi atom.io/packages/atom-perl6-editor-tools # New release of Atom Perl 6 editor tools (v0.7.0) 11:59
pangur Thanks for your help, timotimo 12:00
timotimo you're welcome :) 12:01
12:01 donaldh left, donaldh_ is now known as donaldh, pangur left 12:02 vendethiel left
timotimo azawawi: do you think it'd be sensible to make the rendered pod use atom's theme? 12:02
timotimo briefly falls over from random, unreasonable exhaustion 12:03
azawawi timotimo: github.com/azawawi/atom-perl6-editor-tools#todo
timotimo: :)
timotimo: sure im adding features and fixing TODOs :) 12:04
timotimo: vim Perl 6 snippets are up
12:04 pangur joined
azawawi timotimo: prove-ing test is also there... 12:04
timotimo i saw :)
azawawi timotimo: now to syntax checking :) 12:05
timotimo: basically farabi6
ZoffixWin .tell MadcapJake because I wanted to be cool and popular!
yoleaux ZoffixWin: I'll pass your message to MadcapJake.
12:05 juu left
azawawi ZoffixWin: you're cool and popular :) 12:05
ZoffixWin .tell MadcapJake but it's my understanding META6.json is what the file should be called now and META.info is the old name so *shrug* 12:06
yoleaux ZoffixWin: I'll pass your message to MadcapJake.
pangur My program will run in terminal but my emacs cannot find perl6, and I am not sufficiently smart to be able to tell it how to find it :)
'/bin/bash: perl6: command not found 12:07
ZoffixWin `type perl6` script.p6
:)
`which perl6` script.p6 12:08
Two thoughts crossed :P
azawawi the last one is better
ZoffixWin Actually... never mind that won't work either. I should at least drink 1 cup of coffee before I start helping someone :)
azawawi since the first one returns 'perl6 is hashed (/home/azawawi/.rakudobrew/bin/perl6)'
pangur Which perl6: /home/calum/.rakudobrew/bin/perl6
azawawi i stopped drinking instant coffee and now im better :) 12:09
ZoffixWin pangur, so use that. My guess is inside emacs, your PATH does not include the Rakudobrew path
pangur I suppose I should ask in the emacs room. 12:10
azawawi pangur: also github.com/hinrik/perl6-mode seems useful 12:11
pangur ah, thanks for that link, azawawi :) 12:12
12:13 eyck left, pangur left
llfourn_ m: role R { multi method foo(Cool) { } }; class C { multi method foo(Str) { } }; my $t = C.new does R; $t.foo("yo") 12:13
camelia rakudo-moar 8bd7ee: OUTPUT«Ambiguous call to 'foo'; these signatures all match:␤:(C $: Str $, *%_)␤:(C+{R} $: Cool $, *%_)␤ in block <unit> at /tmp/sZw_0DpxCb line 1␤␤»
llfourn_ can anyone explain to me what that is "Ambiguous"?
why that is*
I think it's a bug
m: role R { multi method foo(Cool) { } }; class C does R { multi method foo(Str) { } }; my $t = C.new; $t.foo("yo") # works if you don't use a mixin 12:15
camelia ( no output )
12:15 llfourn_ is now known as llfourn
ZoffixWin m: role R { multi method foo(Int) { } }; class C { multi method foo(Str) { } }; my $t = C.new does R; $t.foo("yo") 12:15
camelia ( no output )
ZoffixWin yeah, probably a bug
llfourn hmm interesting why does that work?
12:15 ely-se joined
ZoffixWin Because Cool includes Str 12:16
But Int doesn't
llfourn right yeah ofc :S
ok thanks RTing :) 12:17
ZoffixWin m: role R { multi method foo(Str) { } }; class C { multi method foo(Cool) { } }; my $t = C.new does R; $t.foo("yo") 12:18
camelia ( no output )
ZoffixWin Also works if the role provides the narrower class
llfourn interesting... 12:19
im guessing it's using the role's one
12:19 partly left
ZoffixWin m: role R { multi method foo(Str) { say "role"} }; class C { multi method foo(Cool) { say "class"} }; my $t = C.new does R; $t.foo("yo") 12:19
12:19 eyck joined
camelia rakudo-moar 8bd7ee: OUTPUT«role␤» 12:19
12:22 firstdayonthejob left 12:27 rindolf left 12:30 mr-foobar left 12:31 mr-foobar joined
jnthn llfourn: Not a bug 12:35
llfourn: Given A <: B, the signatures (A, B) and (B, A) will be tied.
And your case is just an extension of that 12:36
(C, Str) and (C+R, Cool) will be tied
Because C+R <: C, but Str <: Cool 12:37
llfourn jnthn: so there is an intended difference between Class.^mixin(R) and class Class does R { }?
jnthn llfourn: Very much so
llfourn hmm ok I'll have to ponder that 12:38
jnthn The first is for per-object mixins
The second is for compile time composition
llfourn is there anyway to get the same MMR in a runtime mixin as if it had been compile time composed?
12:39 kanishka joined, donaldh left
masak llfourn: all other things being equal, no. 12:39
llfourn: they are different mechanisms, as jnthn points out above. 12:40
jnthn No; runtime mixins are defined as "create an anonymous subclass and compose the role into that"
And you generally *want* that, because otherwise you'd not be able to override multis in a mixin 12:41
lizmat .messages
yoleaux 09:35Z <jnthn> lizmat: It's used in Mu.pm and is hit every single object construction. It's not buggy, but you do need to know that if anything did an nqp::getattr on the attribute then it'll have been vivified, and so count as atterinited. So if things are fetching it elsewhere in Hash/Map rather than doing the inited check, that may be the issue.
llfourn ok thanks (masak and jnthn)++ I will have to reconsider what I am doing :)
12:43 kid51 left 12:46 cbk left
lizmat jnthn: but that basically means I cannot use attrinited for hash access 12:48
jnthn lizmat: Well, it means you'd need to review all of Map/Hash and consistently use it 12:50
lizmat well, I've been reviewing until I was blue in the face, but I couldn't find what was causing the failure 12:51
and since this is pretty low level code, putting debug statements in there generally means creating an infinite loop 12:52
because somewhere a hash access is being used :-(
coming up with a minimal patch
12:54 molaf joined, sufrostico joined
jnthn lizmat: nqp::say('foo') would probably be low-level enough 12:55
12:55 Ven joined
lizmat can I do an attrinited check twice ? 12:55
on the same attribute ? or will the 2nd one give 1 ? 12:56
jnthn Yes, you can do it twice
lizmat ok
jnthn it's nqp::getattr or nqp::bindattr that will cause change
12:58 cbk joined
lizmat even an nqp::say stops it from installing core modules :-( 13:04
trying again with another conditional
jnthn nqp::printfh(nqp::stderr(), 'msg') maybe... 13:05
13:06 cognominal left
lizmat now it hangs building the restricted setting :-( 13:06
dalek kudo-star-daily: 5987eb2 | coke++ | log/ (9 files):
today (automated commit)
13:10
lizmat jnthn: for reference, nqp::getstderr :-)
jnthn ah :) 13:12
lizmat jnthn: so it indeed claims to be inited, when it isn't 13:13
this is in a hash returned from process-cmd-args in MAIN_HELPER 13:14
no named args are given, so the hash is not touched and returned
13:15 kurahaupo left
jnthn lizmat: Then something must have nqp::getattr'd the storage at some point 13:16
lizmat yes, but if I try to simulate that situation, there is no issue :-(
abraxxa are we interested to let Michael Larabel (phoronix.com, OpenBenchmarking.org) benchmark the various Perl 6 compilers/releases?
jnthn lizmat: I think it'll need a systematic look at all the nqp::getattr usages in Map and Hash and maybe Stash 13:17
lizmat the odd thing is that it passes the entire test-suite, only breaks on 'perl6 -e 'sub MAIN($foo) { }' 13:19
trying to see if --help was specified
timotimo abraxxa: i wonder what code he'd be running to benchmark stuff 13:25
13:25 kjs_ joined
abraxxa timotimo: I think those examples from rosetta code would be a good starting point to also compare to other languages/compilers 13:27
lizmat m: sub a(@args is copy) { my (@a,%h); @a,%h }; my ($a,$h) = a(my @); if $h<help> { say "help" } # jnthn: simulation 13:28
camelia ( no output )
lizmat hmmm... actually: 13:29
m: sub a(@args is copy) { my (@a,%h); @a,%h }; my ($a,$h) := a(my @); if $h<help> { say "help" } # jnthn: simulation
camelia ( no output )
lizmat it needs binding, rather than assigning
13:29 pmurias joined
lizmat trying without binding 13:29
aaaaahhhh 13:31
(erlebnis) 13:32
pmurias timotimo: picking what to benchmark seems to be the hard part to comparing programming language performance
abraxxa my thought was to 'outsource' that to him as I'm pretty sure he would be interested 13:33
13:34 kurahaupo joined 13:35 FROGGS left 13:37 vendethiel joined
lizmat abraxxa timotimo would be great to get an extra set of eyes on performance development 13:38
timotimo aye
i haven't run the benchmarks in a long time, i think
13:38 kurahaupo left
timotimo right now my desktop is plenty busy. listening to music, browsing the web, will be working soon 13:38
of course i usually head out of the home and shut down all applications once a day for a few hours ... in which i could run benchmarks on the machine as idle as i can get it 13:39
abraxxa is there an 'official' benchmark for Perl 6?
Woodi hi #perl6 :) 13:40
13:40 RabidGravy joined
abraxxa Hi! 13:40
Woodi [Coke]++ / perl6devs++ # R*201601 :)
timotimo well, we have perl6-bench 13:41
(two with the same name, actually)
Woodi ...and there is speedup from 30x perl5 to 23x ! :) ; but perl5 slowed down from 0.044 (last ~2 years to 0.046) 13:42
13:42 Ven left
abraxxa timotimo: how can i run it? 13:42
timotimo git clone [email@hidden.address]
it has a "quickstart" function
El_Che speedup from 30 to 23? 13:43
timotimo that downloads, compiles, times and compares a bunch of revisions of different rakudos and nqps
El_Che is it a plain, a bird, sarcasm?
lizmat El_Che: from 30x slower to 23x slower
Woodi El_Che: nothing scientific :) just very rounded numbers
El_Che aaaah
:)
abraxxa git clone github.com/japhb/perl6-bench for the firewalled me
dalek kudo/nom: d488bb0 | lizmat++ | src/core/Capture.pm:
Make sure we use attrinited for creating Captures
13:44
abraxxa why is panda so slow on its first start? downloading something? if yes it should print a message to the user
panda installdeps . should be added to README.md
Woodi as for R* 201601: make install (with installing modules) is seriously to slow...
pmurias jnthn: do we have a way in QAST to detect/mark a lexical sub as immutable? 13:45
abraxxa huh?
panda installdeps .
resolve stage failed for .: Project . not found in the ecosystem. Maybe try "panda update" first?
El_Che dunno who did the magic, but perl6 repl + linenoise is no longer slow
jnthn pmurias: Not sure what you mean?
abraxxa what is 2016.01.1? a small patch ontop of 2016.01?
El_Che precomp thing?
timotimo yeah, most probably precomp 13:46
abraxxa can we do precomp on install?
El_Che also, also scripts get precomp love
timotimo hmm. installing runs tests, which causes precomp. but i think tests run before an actual installation happens, so the precomp stuff wouldn't actually land in the global precomp store, right? 13:47
pmurias jnthn: if I have my sub foo() {...} and when can statically determine that &foo doesn't get rebound to anything I could optimize the calls to &foo a lot
s/when/we/ 13:48
abraxxa i know that the debian python package does precomp on install because the user doesn't have right to write to the dirs where the library files are located and the precomp files would be generated by the compiler
13:48 kjs_ left
jnthn pmurias: Part of that is covered by the getlexstatic op, iirc 13:48
pmurias: Though that means "and there's no closure semantics"
gfldex abraxxa: i turned .pod files into modules to get them precompiled. The speedup was 20x . 13:49
13:49 jsimonet left
jnthn pmurias: Which covers things from UNIT and CORE.setting 13:49
gfldex rakudo is really good at being slow :->
abraxxa builds 2016.01.1
jnthn gfldex: It does pretty well compared with a few years back :)
So the trajectory is right at least. :) 13:50
13:52 abraxxa left, abraxxa1 joined
abraxxa1 that was my f***** work notebook running OOM due to Chromium talking the usual 4gigs, thunderbird 1gig and rakudo compiling in addition to the others things open 13:53
13:53 abraxxa1 is now known as abraxxa
abraxxa and what in gods name do i have to do to not allow any damn app stealing focus??? 13:55
gfldex abraxxa: for proper focus management see: www.enlightenment.org/ 13:56
abraxxa gfldex: sadly there seems to be not a single distro shipping it
arnsholt I wouldn't be surprised if that's one of those things that's impossible to manage completely under X11 13:57
abraxxa ah, it seems the 'honor ICCM standard focus flag' doesn't go with 'focus stealing prevention'
gfldex debian got e17
13:58 vendethiel left, uruwi left, gcole left
abraxxa i'll check it out this weekend 13:59
gotta catch my train
ping me if you want me to contact Michael regarding benchmarking perl6
bye!
*wink*
14:00 abraxxa left, gcole joined, cdg joined, cdg left, cdg joined, cdg left 14:01 jsimonet joined, cdg joined 14:03 Ven joined 14:06 sjoshi left
Woodi about R* make install: maybe there could be 'make modules' target ? if it would be skippable then it would be very nice 14:10
timotimo why would you ever want to skip the modules installation if you get rakudo star? 14:11
14:11 vendethiel joined
ugexe msi installation is eaiser than rakudobrew on windows 14:11
although i guess someone on windows probably isnt using `make` on an msi :o 14:14
14:21 uruwi joined 14:23 AlexDaniel joined
pmurias is there a way in git to avoid the ability to lookup history with blame when spliting a large file into many small parts? 14:24
Woodi timotimo: becouse R* is "official" release, I think it gets more work then just add modules to R release. but maybe you are right
timotimo it gets more work? 14:25
lizmat m: my $b = $*FOO
camelia ( no output )
lizmat hmmm...
14:26 rindolf joined 14:29 lokien_ joined
azawawi timotimo: ping 14:30
14:30 FROGGS joined
timotimo here 14:31
azawawi timotimo: github.com/azawawi/atom-perl6-edit...t-altctrlo # as requested earlier :)
timotimo: ctrl-f5...
btw, seems like github does not update uploaded images right away 14:32
14:32 vendethiel left
azawawi so if you link to it, it takes like 1-2 minutes to update 14:32
timotimo sweet!
i do see it
14:33 dolmen joined
azawawi no back to the syntax checker :) 14:33
mscha m: say "Hello"; $*OUT.say: "World"; # I hate this inconsistency 14:34
camelia rakudo-moar d488bb: OUTPUT«Hello␤World␤»
uruwi What's different? 14:35
mscha uruwi: the :
uruwi It's the difference between a sub and a method call
mscha I know, but I still hate it. :)
timotimo well, think about accessors
dalek kudo/nom: 7acf5cc | lizmat++ | src/core/stubs.pm:
Make dynamic lookups 2% faster
14:36
timotimo oof, that's only 2%? 14:38
welp
flussence 2% of $hugenum is still a good thing 14:40
14:42 CurtisOvidPoe joined
timotimo it seems like that's only for the initial initialization of dynamics? 14:43
lizmat timotimo: it was pretty optimised already
timotimo right. we also have the dynamic var cache
lizmat yeah, only if the dynamic isn't found in any lexical scope
dynamic var cache ? 14:44
14:44 mullagainn joined, vendethiel joined
lizmat you mean PROCESS:: ? 14:44
timotimo no, at the MoarVM level
14:44 donaldh joined
lizmat and that's visible at Perl 6 level ? 14:44
timotimo no
i don't know exactly how it works, but i think every call frame has a little piece of space it will put dynamic variables in that it has looked up already
lizmat ah, ok :-)
timotimo all you can tell is that it's a bit faster
jnthn Yeah, it's hidden behind how Moar implement getlexdyn 14:45
timotimo like any good cache :)
lizmat jnthn: so there is no point in storing a dynamic in a lexical to improve performance ?
timotimo there is. the cache is limited in size and it's not perfect
lexical lookup is still way faster than dynamic var lookup, until we have tracing in spesh 14:46
which might happen this year, or maybe not.
jnthn lizmat: That can still be useful, though the second time you'll likely hit the cache, if you didn't the first time.
But yeah, lexical access - especially JIT-compiled - is really cheap.
lizmat ok
hoelzro good *, #perl6! 14:48
RabidGravy RARR!
timotimo ohai 14:49
dalek kudo/nom: 37aac8d | lizmat++ | src/core/Str.pm:
Change some existskeys into ifnulls
14:53
hoelzro o/ RabidGravy, timotimo
El_Che "Private multi-methods are not supported" is that a feature or a work in progress? 14:54
flussence probably WIP, but couldn't you just use lexical multi-subs there anyway? 14:56
jnthn El_Che: We'll support them in a future Perl 6
timotimo lexical multi-subs won't have access to self, necessarily
jnthn They're fairly often requested.
El_Che jnthn: thx for the info.
timotimo though you can use the simple first-argument trick with it
14:57 kjs_ joined, xpen joined
El_Che timotimo: you mean a sub with self as a parameter? 14:57
14:58 perlawhirl left, kjs_ left
timotimo yeah, because when you $foobar.&my-sub(1), it'll call &my-sub($foobar, 1) for you 14:58
14:59 kurahaupo joined 15:04 Ven left, _Gustaf_ left 15:05 Ven_ joined, vendethiel left
RabidGravy y'know the one good thing about Perl 6 allowing utf-8 characters in code? I actually get to work out how to type them using the compose key 15:07
pmurias hoelzro: hi 15:09
RabidGravy previously I maybe used a é every once in a while or a ñ or something but now there is no stopping me
hoelzro hello pmurias 15:10
El_Che RabidGravy: your new nick should be ñéñé
RabidGravy that would just be confusing
pmurias hoelzro: I'm splitting up the huge src/vm/jsQAST/Compiler.nqp file 15:11
15:12 raiph joined 15:15 mr-foobar left
dalek kudo/nom: 57ecc79 | lizmat++ | src/core/ (2 files):
Make Map<a> about 10% faster

Note that the change in CallFrame is needed, because it would otherwise create a Map with a hash with a different REPR that does *not* allow access non-existing keys without raising an exception.
15:16
hoelzro nice!
it's been a while since I've looked at the JS backend; I imagine it's gotten pretty big
15:16 MadcapJake joined
pmurias hoelzro: I have a grant application for the the JS backend (to extend it to support full Perl 6) up for community review: news.perlfoundation.org/2016/02/ian...plica.html 15:18
dalek p: 885b540 | (Pawel Murias)++ | / (13 files):
[js] Split up the huge src/vm/js/QAST/Compiler.js file.
hoelzro pmurias: how different is that from what you posted to blogs.perl.org oh so long ago?
dalek p: 8237a68 | (Pawel Murias)++ | src/vm/js/nqp-runtime/bignum.js:
[js] Fix base_I with base = 16 and n=0.
15:20
p: 459b36d | (Pawel Murias)++ | t/nqp/60-bigint.t:
Add a regression test, and improve test description.
15:21
15:22 uruwi left
pmurias hoelzro: it should be mostly just reorganized (and with description of how I plan to tackle gather/take with continuations (of which a basic version is implemented) 15:25
15:25 xtreak left
pmurias hoelzro: also that one was a draft and this is the submitted version for which community comments are gathered before it's voted on ;) 15:26
15:27 AlexDaniel left 15:28 vendethiel joined, kjs_ joined 15:29 ely-se left, kjs_ left 15:34 uruwi joined, brrt joined
El_Che perl6 -Ilib bin/certmigration.p6 --mail_interval=3 # say $mail_interval.WHAT; => (IntStr) 15:35
that's new :)
hoelzro pmurias: ah, ok! I'll give this another look, then! 15:36
lizmat El_Che : yes, allomorphs, added by ShimmerFairy if I remember correctly 15:37
they're basically like Perl 5 scalars :-) 15:38
m: my $a = IntStr.new("a",42); say +$a; say ~$a
camelia rakudo-moar 57ecc7: OUTPUT«Type check failed in binding $i; expected Int but got Str␤ in block <unit> at /tmp/aFRhQMuFxS line 1␤␤»
xenu pmurias: how js backend is supposed to work? i mean, it compiles p6 code to js as i understand, but is some kind of runtime library needed too?
moritz sure 15:39
lizmat m: my $a = IntStr.new(42,"a"); say +$a; say ~$a
camelia rakudo-moar 57ecc7: OUTPUT«42␤a␤»
lizmat
.oO( dualvars! :-)
gfldex xenu: most of Perl6 is implemented in Perl6. So getting hold of those runtime libs aint that hard.
dalek kudo/nom: 15ec392 | lizmat++ | src/core/Hash.pm:
Make Hash<a> about 10% faster
15:40
timotimo you turn Str into Str:D? didn't that use to make stuff slower?
15:42 xpen_ joined, gregf_ left 15:43 xpen left
xenu gfldex: wonder how it would fare performance-wise. while js vms are really fast, when you add libraries like jquery it slows down a lot 15:44
and you want to keep thing quick in the browser
15:45 gregf___ joined
xenu tings* 15:45
things*
anyway, it's a freakin cool idea to be able to write frontend in perl 15:46
15:47 Ven_ left
xenu hope that pmurias will get the grant 15:47
timotimo me, too
moritz is in a grumpy mood, and thinks that frontend programming will still suck, even with Perl 6 in the browser
though probably less than with p6
15:50 vendethiel left
xenu it can't be worse than it is now :) 15:51
lizmat timotimo: Str:D is correcter, and doesn't make a difference for methods, apparently
timotimo oh, huh. 15:52
15:52 AlexDaniel joined
timotimo perhaps only for the invocant? 15:52
lizmat m: my %h; say %h{Str}
camelia rakudo-moar 15ec39: OUTPUT«Use of uninitialized value of type Str in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block <unit> at /tmp/iDmv2cb70F line 1␤(Any)␤»
MadcapJake wrt js backend, one thing i'd be worried about is JS errors 15:53
yoleaux 12:05Z <ZoffixWin> MadcapJake: because I wanted to be cool and popular!
12:06Z <ZoffixWin> MadcapJake: but it's my understanding META6.json is what the file should be called now and META.info is the old name so *shrug*
lizmat timotimo: that used to die
timotimo oh, ah
lizmat with unable to unbox type object
15:53 vendethiel joined
timotimo ugh, yes. ugly error message, definitely 15:53
lizmat afk for a few hours&
MadcapJake .tell ZoffixWin oh! I had thought it the other way around, didn't realize META6.json was the new standard. 15:55
yoleaux MadcapJake: I'll pass your message to ZoffixWin.
pmurias xenu: it will compile to js (and currently does for most of NQP) 15:57
MadcapJake: JS errors?
15:58 kjs_ joined, kjs_ left, fireartist left
RabidGravy MadcapJake, META6.json is what is specified in S22 I think, most tools have supported both META.info and META6.json customarily 15:59
mscha m: 1..100 ==> grep *.is-prime ==> my @primes; say @primes; 16:00
camelia rakudo-moar 15ec39: OUTPUT«[2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97]␤»
pmurias MadcapJake: you mean actuall bugs in javascript implementations? or how will stack traces work?
mscha Are feeds documented anywhere? Can't find on doc.perl6.org.
MadcapJake pmurias, i've done some programming in compile-2-js languages and anytime an error passes through to the JS error reporting, it's usually complete garbledygook, unless you plan on transpiling to pretty JS ala coffeescript
though sourcemaps are great as long as they are mapped really well 16:01
RabidGravy, is META.info some vestige of it being written in another format besides JSON? 16:02
pmurias MadcapJake: nqp-js has sourcemap support
RabidGravy MadcapJake, haven't the faintest idea when it crept in or why 16:03
MadcapJake pmurias, do the sourcemaps map really granularly? I know I've used some that just stick the point at the beginning of more complicated blocks
timotimo granu-gnarly
16:03 a3r0_ joined 16:04 Psyche^_ joined, tinita_ joined
pmurias MadcapJake: I don't think there is a granularlity limit, I think it's just the compiler not doing it granularly enough 16:07
16:08 breinbaa1 joined
pmurias MadcapJake: for nqp-js some attention to detail will be required to make them work really way (and a part of the grant schedule is to work on such things as part of "user experience") 16:09
16:09 tadzik1 joined 16:10 breinbaa1 left
MadcapJake pmurias, agreed that it's always the compiler, sourcemaps could map down to the character. Well-made sourcemaps would make debugging in browser dev tools really nifty 16:11
timotimo doesn't seem like today saw any uploads of fosdem videos 16:12
MadcapJake :(
who's got the raw footage?
16:13 breinbaa1 joined, breinbaa1 left
pmurias MadcapJake: in nqp-js the source maps are built in as a core part of emitting javascript (not hacked on a statement level or something) so it's a matter of "just" making sure they are correctly attachted everywhere when code is emitted 16:14
16:14 breinbaas left, Psyche^ left, a3r0 left, tinita left, tadzik left, keix left
MadcapJake pmurias, nice! 16:14
16:15 awwaiid left
pmurias got to go& 16:15
16:16 pmurias left, breinbaas joined, vendethiel left 16:17 khw joined 16:19 ecocode left 16:20 tinita_ is now known as tinita 16:22 muraiki joined 16:23 Actualeyes left, perl6newbee joined 16:24 xpen_ left 16:25 skids joined
MadcapJake anyone have advice on writing a search algorithm for my issue submitter? I'd like to let users write their whole subject line and the backend will try to find closely related tickets 16:27
16:28 _mg_ left
timotimo deep learning/neuronal nets, obviously 16:28
DrForr Sure, bring on the Singularity. 16:30
moritz ääääÄÄÄÄÄÄÄäää 16:33
+ee
perlpilot "In other news today ... it appears that a search engine for Perl 6 modules has accidentally created Skynet ... "
MadcapJake my current naive thinking is, take out all pronouns, prepositions, articles, and run the rest of the words through a search of rt.perl.org, then give points for any shared results, then take larger words and break off varying portions of them, run more searchs, give more points 16:34
perl6newbee hi all
16:34 vendethiel joined
perlpilot MadcapJake: sounds reasonable to me. 16:34
perl6newbee: greetings
llfourn MadcapJake: have you considered using a database that does this already? 16:35
MadcapJake llfourn, how do you mean?
perlpilot If it could also search with related words (rather than just stems) that would be neat
llfourn MadcapJake: like elasticsearch has a tokenizer which removes stopwords and gives decent weighted search results 16:36
if you like to implement search algorithms though be my guest :D
MadcapJake llfourn, does it cost money though? 16:37
llfourn MadcapJake: nope
also mongodb has a less flexible but decent one: docs.mongodb.org/manual/core/index-text/
MadcapJake oh i see, you mean place all the tickets in a database 16:38
llfourn oh isn't that what you're doing?
MadcapJake well my current plan was to just use a bunch of calls to the `rt` command line tool :D
but that would probably be easier and would potentially save me from getting banned from all the queries this app would do :P 16:39
perl6newbee the bit riot thursday blog post by Zoffix intrigued me to use IO::Prompt and/or Tree--Simple to increas my Perl6 foo. Which is very limited. It is recommend for an newbie?
llfourn sure I don't even know abou this rt command. You can already do text-indexed searchs on RT? 16:40
I mean I know the web based search but it seems to suck a bit
MadcapJake yep, rt command line tool, hoelzro told me about
llfourn MadcapJake++ interested to see what you come up with :)
hoelzro MadcapJake: I think that an RT REST client wouldn't be a bad addition to the ecosystem either ;)
llfourn does RT have a REST API? 16:41
hoelzro mhmm
MadcapJake hoelzro, well i could wrap this cli up in a module
hoelzro that's how the CLI works
llfourn where is the documentation for this?
MadcapJake yeah i can't find that link you sent me either :P
hoelzro MadcapJake: that works too! I have a script I've been working on that wraps the RT CLI client
MadcapJake llfourn, requesttracker.wikia.com/wiki/REST 16:43
llfourn MadcapJake: cheers
16:46 vendethiel left, vendethiel joined
MadcapJake here's my current issue submitter server for anyone interested hastebin.com/asunozejef.pl6 16:48
stmuk_ MadcapJake: I have used compression to measure how similar text is 16:49
16:49 lokien_ left 16:50 brrt left
MadcapJake stmuk_, how would you do that? 16:50
stmuk_ MadcapJake: if A & B appended compress well they are similar text
MadcapJake how do you measure "compress well"
stmuk_ compression ratio
MadcapJake ohh i see 16:51
that's a really nifty idea
llfourn I guess you could *try* and narrow down the search results like that 16:52
hoelzro that's really cool 16:53
you could probably use cosine or jaccard similarity, or a bag of words model 16:54
but I think that bag of words may be difficult
MadcapJake llfourn, i'm actually in the midst of installing elastisearch, will give it a go, I like the idea of only running one request every few minutes for new tickets rather than ~10 requests per search via the cli method
llfourn buys guns and ammo for the impending skynet
moritz perlpunks.de/paste/show/56b4d3cf.64f.9d is this idiomatic code for workings blocklingly consuming for a queue? 16:55
hoelzro MadcapJake: careful with that say $output; on line 21; some servers will use STDOUT for the response body
16:56 vendethiel left
hoelzro I'm sure it's just for debugging, but it would probably be better to use note 16:56
MadcapJake hoelzro, what's note?
llfourn MadcapJake: me too. From what I remember it gives pretty natural search results.
hoelzro say for standard error
MadcapJake woah, didn't. even. know.
hoelzro also, $output.split("\n") is probably written better as $output.lines
MadcapJake oh yeah! thanks for the tweaks! 16:57
is there a better way to write L19? seems like there should be a convenience method for this
hoelzro if you used run, you could say my $p = run(..., :out); my $output = $p.out.slurp-rest;
llfourn MadcapJake: what would be cool is if we could figure out a way to find the error message in the RT or if the web interface submitter had a field for error message so that could be indexed and weighted specially.
hoelzro also, if you use that tap, you probably should do ~=, not = 16:58
otherwise, if you have a lot of results, the first chunks will get clobbered
MadcapJake hoelzro, yeah that's happened to me before, it seemed like rt was printing it all out in one go though, but better safe than sorry! 16:59
hoelzro MadcapJake: it does, but you can't guarantee the chunk size with stdout.tap, iirc
MadcapJake oh ok, good to know!
hoelzro it's *probably* the stdlib buffer size, but I'm not sure
17:02 Skarsnik joined
Skarsnik Hello 17:02
AlexDaniel o/
hoelzro hi Skarsnik! 17:03
Skarsnik I was wondering is there some plan for the Google Summer of Code about Perl 6 ?
17:03 awwaiid joined
perlpilot TPF would have to get accepted as an organization first 17:05
(I recall a couple of years ago that they did not)
17:05 kjs_ joined, domidumont left 17:06 brrt joined
[Coke] yup. not up to the perl 6 devs. it's up to the org, and in the past when tpf was accepted, there were p6 projects. 17:06
17:06 brrt left
[Coke] and after being passed over for new orgs recently, I would be surprised if someone tried agian. 17:06
17:09 muraiki left
moritz well, the Perl 6 devs could apply as a separate project, no? 17:10
or does one need to be a legal entity somehow?
17:11 keix joined
perlpilot developers.google.com/open-source/gsoc/rules scroll down to section 3. Organizations 17:13
17:14 dolmen left 17:15 nakiro left
Skarsnik Well there is a concrete release now, it probably have more chance 17:17
moritz doesn't sounds like it needs to be a legal entity
17:18 ely-se joined
[Coke] moritz: you need to be an org of some kind and be able to handle $$ 17:19
17:19 uruwi left
[Coke] It's a lot of work. unless we have someone who is SUPER dedicated to it, it's probably not worth it. 17:19
if we can glom onto an existing org, awesome, let's do that. 17:20
moritz [Coke]: iirc SPI or some other non-profit can handle the money transfer stuff
[Coke]: but you're right that it's quite much work 17:21
perlpilot The gosc faq also says: "The project does not need to be a legally incorporated entity."
TimToady "the project" is usually a student, I'd think 17:23
yoleaux 1 Feb 2016 13:41Z <gfldex> TimToady: please have a look at irclog.perlgeek.de/perl6/2016-02-01#i_11972281
TimToady well, maybe it's an intermediate layer...
17:24 uruwi joined
RabidGravy I was involved in a GSoC with the TPF ages ago and it turned out to be a massive PITA and IIRC everyone involved at the time vowed never again 17:26
17:26 kjs_ left
moritz I've been involved in at least three GSoC projects as mentor or backup mentor, and found that it worked rather well 17:27
perlpilot developers.google.com/open-source/.../faq?hl=en very bottom of the page 17:29
mspo I was the admin last year and didn't get selected, it was a bummer 17:30
(for netbsd gsoc)
moritz they seem to have thrown out quite a few established orgs last year 17:31
mscha m: 1..100 ==> grep *.is-prime ==> my @primes; say @primes; # are feeds documented? Can't find at doc.perl6.org... 17:32
camelia rakudo-moar 15ec39: OUTPUT«[2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97]␤»
17:32 apathor left
moritz mscha: probably not 17:34
17:34 apathor joined
azawawi atom.io/packages/atom-perl6-editor-tools # v0.8.0 - Perl 6 syntax checker lint support and POD-theme friendly viewer 17:35
17:35 Amendil left 17:36 donaldh left
geekosaur feeds are still rather speculative 17:37
17:37 Relsak joined, domidumont joined 17:38 vendethiel joined 17:40 mr-foobar joined 17:42 keix left 17:44 foobot joined, keix joined
Hotkeys I should probably start using 'sum' for golf instead of '[+]' 17:44
same number of characters and more readable
17:44 dupa joined
mscha Hotkeys: isn't that a bad thing in golf? 17:45
Hotkeys lol
only if you're writing in pyth or cjam
17:46 foobot left
nemo grr. why does ↑ not do anything in the perl6 shell. I'm used to being able to access old commands 17:47
I'm on 2015.11
mscha nemo: panda install Linenoise 17:48
[Coke] nemo: you need to install a module.
nemo ah.
mscha Not sure that works on 2015.11, but you should upgrade to 2016.01 anyway.
hoelzro Linenoise *may* not work on 2015.11
[Coke] also, you should be on 2016.01
nemo mscha: I was trying to stick to the distro perl6 here
[Coke] heh. I am clearly 10 seconds behind mscha today. :) 17:49
nemo which probably means I'll just put up w/ not having that stuff
[Coke] nemo: at least get to 2015.12
mst nemo: 2015.11 isn't a perl6 install, the spec wasn't finalised until 2015.12
nemo hm
mst nemo: just don't bother with it, you'll just buy yourself pain
nemo odd. I thought Locutus was trying to package the upstream debian of stable
nemo pokes him
mst it's entirely possible the debian package is obsolete as well
nemo oh. he's not around. later I guess
[Coke] mst is not technically correct, but he's pretty correct. :)
mst yeah. "isn't a perl6 install" for any useful-as-of-today-values-of-perl6-install is what I meant 17:50
nemo mst: ok. so the thing is. perl6 is barely on our radar here, but I probably should stick to things other people would actually have on their computers
mst: it's kinda like "X is only in latest nightly of rust"
although luckily that's not really too much of a problem anymore with rust
mst nemo: the distro package story currently sucks somewhat 17:51
there's a gentoo overlay that gets you a sensible one ;)
17:51 sufrostico left, uruwi left
nemo hm... 17:52
17:52 Zero_Dogg left
nemo checks to see if this machine has the ppa at least 17:52
17:53 Zero_Dogg joined, sufrostico joined 17:55 awwaiid left 18:01 _mg_ joined
dalek href="https://perl6.org:">perl6.org: ad3e873 | (Zoffix Znet)++ | source/index.html:
Fit announcement box on one line
18:01
18:05 firstdayonthejob joined 18:06 vendethiel left 18:10 rindolf left
nine -win 36 18:10
18:13 zed00 joined, awwaiid joined 18:15 espadrine left, kjs_ joined
dupa hey how perl6 Struct can handle callback? 18:17
DrForr dupa: As happens github.com/drforr/perl6-Inline-Scheme-Guile has an example of that. 18:19
dupa DrForr, but where?;s 18:21
DrForr Wait, do you mean CStruct?
dupa DrForr CStruct representation only handles int, num, CArray, CPointer, CStruct, CPPStruct and CUnion 18:22
18:22 kjs_ left
dupa and I need smh like &callback (Str --> in32) 18:22
18:23 vendethiel joined
AlexDaniel I've never liked that 「map」 requires a code block first. Most of the time I want it to be 「map」 → list → block, exactly in this order. So here is what I came up with: 18:23
m: say map |(<4 8 15 16> R, { $_ + 3 });
camelia rakudo-moar 15ec39: OUTPUT«(7 11 18 19)␤»
18:23 awwaiid left
[Coke] btw, the way to get rid of spam tickets in the RT queue is to click the red S in the upper right hand side. 18:23
llfourn AlexDaniel: isn't that what for is for
[Coke] presumably this helps train the system to better catch future spam. 18:24
DrForr dupa: I use Str inside CStruct just fine, it's just a pointer to C.
dupa I don't understand
AlexDaniel llfourn: you mean that I can use list comprehension instead of map in this case? 18:25
llfourn: I don't think that I like that
DrForr dupa: Time for a pastebin or gist so I can see your code. 18:26
llfourn AlexDaniel: what is R?
TimToady m: say map <4 8 15 16>: { $_ + 3 }
camelia rakudo-moar 15ec39: OUTPUT«(7 11 18 19)␤»
[Coke] reverse metaop
m: say 3 R- 4
camelia rakudo-moar 15ec39: OUTPUT«1␤»
AlexDaniel TimToady: what, how does that work?
TimToady that's the invocant colon 18:27
dupa DrForr, I am trying to port wiki.libsdl.org/SDL_RWops
AlexDaniel TimToady: okay, that's much better 18:28
dupa so in Struct I should place &.size(Pointer[SDL_RWops] --> Sint64)
TimToady m: say do for <4 8 15 16> { $_ + 3 } 18:29
camelia rakudo-moar 15ec39: OUTPUT«(7 11 18 19)␤»
TimToady m: say (for <4 8 15 16> { $_ + 3 })
camelia rakudo-moar 15ec39: OUTPUT«(7 11 18 19)␤»
TimToady TMTOWTDI 18:30
RabidGravy dupa that doesn't work right now 18:31
dupa RabidGravy, so SDL porting need to be stop ;s
DrForr dupa: Ah, got it.
RabidGravy You're the second person to ask about this in so many days, or you're the same person asking the same question again 18:32
dupa I asked again ;D
cause I didn't get
last time 18:33
18:33 ely-se left
[Coke] how can I tell what version of panda I'm running? 18:33
18:34 grondilu joined
DrForr dupa: You're welcome to try to add it yourself. Have you filed a request? 18:34
dupa I don't know how
:<
18:35 lonewolf28 joined
[Coke] updates panda jic 18:35
DrForr How to file a request? [email@hidden.address] IIRC.
RabidGravy the long answer is: at the current time rakudo NativeCall does not allow for structs with pointers to functions, if you really need to deal with such an interface then the easiest way would be to make a small wrapper library that exposes the functions as normal ones that the NativeCall can handle
dupa RabidGravy, no I don't want to make wrapper 18:36
DrForr Which is something of what Inline-Scheme-Guile does.
18:36 _ramix_ joined
AlexDaniel TimToady: cool 18:36
dupa where to find implementation of perl6 native calls? 18:38
DrForr dupa: What that's saying is you don't want to work around or fix the problem, so I guess you ... get to wait with the rest of us?
dupa: If you're using rakudobrew, in .rakudobrew/ somewhere in NativeCall.nqp? 18:39
dupa raked is perl implementation? 18:40
I use rakudo star
RabidGravy yeah, but all the important parts for this particular case are in moar, I looked the other day having concluded it was doable but got lost in the moar code 18:41
DrForr dupa: I don't use R* so I can't tell you where to look. If that's a precompiled binary you'll have to look in the github repo. 18:42
dupa I am looking for right now ;-)
DrForr, what are you using?
DrForr rakudobrew, as I just mentioned :) 18:43
18:44 vendethiel left 18:46 awwaiid joined 18:47 wamba left 18:48 perlpilot left 18:51 awwaiid left 18:53 addison joined
dupa what is nqp? 18:58
DrForr Not Quite Perl, the language on top of MoarVM/JVM/Whatever. 18:59
dupa DrForr, is it like Perl6 language definition
AlexDaniel it's more like a subset of Perl 6 19:00
19:00 spider-mario joined
[Coke] it's not exactly that, either, but that's close. 19:01
19:02 perl6newbee left
dupa Id rather won't look to it ;D 19:04
I found NativeTypes.nqp
but no Struct there
19:05 rindolf joined 19:06 addison left 19:11 kjs_ joined 19:13 kjs_ left 19:14 uruwi joined
AlexDaniel m: my $hello = ‘foo’ ~ * ~ ‘bar’; say $hello(25) # why bother with sprintf 19:21
camelia rakudo-moar 15ec39: OUTPUT«foo25bar␤»
DrForr Wow, something today caused a major speedup... 19:23
AlexDaniel DrForr: how much?
DrForr dupa: grep for CStruct in the code? When in doubt, RTFS.
AlexDaniel: Not sure, I haven't been benchmarking. Just my gut instinct. 19:24
19:24 awwaiid joined
DrForr I'm pretty sure it wasn't the C refactoring I've been doing :) 19:24
19:24 cdg left 19:25 uruwi left
RabidGravy drupa, there's a directory in the moar source called 'repr' or something similar, the CStruct representation is in there 19:26
DrForr, is this since yesterday? lizmat++ did something to hash keyed access 19:27
DrForr I remember seeing that, probably that though my code doesn't rely too much on that. 19:28
19:29 uruwi joined
DrForr lizmat++ # just on general principles, really... but yeah, for hashes too. 19:30
lizmat DrForr: glad to hear it! 19:31
colomon just chopped up the cheese he bought during the Swiss Perl Workshop… 19:33
DrForr What variety?
perigrin Swiss Cheese ... duh. 19:34
19:34 kyclark joined
moritz The Swiss Cheese 19:34
I'm sure there can only be one... The Swiss Highlander Cheese :-)
RabidGravy :) 19:35
most often found melted and mixed with kirsch and stuff
DrForr Of course, gruyere.
RabidGravy haven't had a proper swiss fondue for years
19:36 ZoffixW joined
kyclark Silent error on l. 3 here: lpaste.net/151744 19:36
stmuk_ was impressed with the range of penknives in the Zurich Airport
kyclark Why is that?
RabidGravy stmuk_, yeah, right before security
stmuk_ oddly this was *after* security 19:37
moritz I've had such a thing for new year's eve: en.wikipedia.org/wiki/Raclette#Dish
ZoffixW I recall someone dropping a link to a list with a whole bunch of fancy Unicode ops proposed to be added to Perl 6.... AlexDaniel was it you? I need that link
moritz well, Switzerland is know for high quality knifes, they won't let pesky security concerns stop them from selleing them
AlexDaniel ZoffixW: yeah
ZoffixW: type “Save me from Texas” in your browser and you'll get it :D 19:38
ZoffixW lmao
DrForr I managed to sneak in a raclette between my train to Lyon and getting it into Zurich.
AlexDaniel gist.github.com/AlexDaniel/c89bd2786f9b63f31e4c
flussence «Stage parse : 108.309» ...yowch.
ZoffixW AlexDaniel++ thanks
AlexDaniel ZoffixW: I keep adding thing to this list 19:39
things*
19:39 vendethiel joined
moritz AlexDaniel: we also have <-> for lambdas with rw-Signatures 19:41
I'm sure you'll find a good Unicode arrow for that :-)
AlexDaniel sure
19:41 ocbtec left
perigrin moritz: welcome to american cheese sophistication ... "swiss cheese" is a type here ... noteable becasue it has holes that Jerry can often hide from Tom in. 19:42
moritz perigrin: like "German bread" :-) 19:43
perigrin italian ... german beer.
kyclark Guys, cheese or code? It bothers me that P6 silently drops my ".push" :-)
moritz kyclark: what a question. Cheese *and* code. Where's yours? 19:44
code, I mean :-)
kyclark Up above. lpaste.net/151744
DrForr I have some St. Moritz in the frid...oh, code.
AlexDaniel moritz: oh, almost forgot that I have that on my keyboard… ↔
ZoffixW m: my @list = (John => 10, Jack => 43); @list.push(Jeff => 50); say @list
camelia rakudo-moar 15ec39: OUTPUT«[John => 10 Jack => 43]␤»
ZoffixW dafuq
moritz kyclark: ah. you're passing Jeff => 50 as a named argument to push, which it ignores (as do all methods with extra named) 19:45
ZoffixW Ah
AlexDaniel m: my @list = (John => 10, Jack => 43); @list.push((Jeff => 50)); say @list
camelia rakudo-moar 15ec39: OUTPUT«[John => 10 Jack => 43 Jeff => 50]␤»
moritz if you write it as .push("Jeff" => 50) or .push((Jeff => 50)) it works
kyclark I feel like that's a bad surprise
19:45 Relsak left
moritz yes, I know. Sadly the alternative brings differnt gotchas with it 19:45
for every DWIM you pay with a WAT
ZoffixW :D 19:46
19:46 darutoko left
kyclark It happens when I declare "my Pair @list"," too. I would expect the extra type checking to catch this. 19:47
ZoffixW kyclark, FWIW, perhaps one of a Hash, Bag, BagHash, Set, SetHash types would be more suited for your purpose than an Array?
moritz kyclark: that type check only stops you from pushing wrong things; it doesn't stop you from not pushing anything :-) 19:48
kyclark True. I was just sitting in a class on R this morning and wanted to replicated some of the indexing operations. I tried this bit of code to add a Pair to my list and saw it never made it AND I never got an error.
19:48 cognominal joined
ZoffixW kyclark, what's happening is you're giving .push a named argument :Jeff with value 50. So it ignores it 19:48
19:48 MadcapJake` joined
moritz fwiw the subroutine form is safe against that 19:48
19:49 yqt joined
moritz m: my @a; push @a, Jeff => 52; say @a.perl 19:49
camelia rakudo-moar 15ec39: OUTPUT«[]␤»
moritz huh?
19:49 kyclark left
moritz now I'm seriously surprised 19:49
FROGGS m: say &push.signature
camelia rakudo-moar 15ec39: OUTPUT«(\a, |elems is raw)␤»
AlexDaniel perhaps will start a list of WATs in Perl 6
moritz sub push (\a, |elems) { a.push: |elems }
that explains a lot... and is LTA, IMHO 19:50
AlexDaniel ah
nah…
ZoffixW m: sub foo ( :$Jeff = 42 ) { say "$Jeff" }; foo Jeff => 50; foo Mike => 342;
camelia rakudo-moar 15ec39: OUTPUT«50␤Unexpected named parameter 'Mike' passed␤ in sub foo at /tmp/ScNjY0gSTh line 1␤ in block <unit> at /tmp/ScNjY0gSTh line 1␤␤»
AlexDaniel I thought that .append will work better
ZoffixW Oh. Never knew that happens.
m: class Foo { method foo ( :$Jeff = 42 ) { say "$Jeff" }; }; Foo.foo: Jeff => 50; Foo.foo: Mike => 342; 19:51
camelia rakudo-moar 15ec39: OUTPUT«50␤42␤»
moritz you can't inherit and override subs like you do with methods, which is why subs don't need to take care to preservice interface consistency
ZoffixW ky[TAB] ^ this is what's happening
Came across LTA error IMO: 19:52
m: class Foo { methid foo ( :$Jeff = 42 ) { } }
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/04aNqHJq78␤Variable '$Jeff' is not declared␤at /tmp/04aNqHJq78:1␤------> 3class Foo { methid foo ( :7⏏5$Jeff = 42 ) { } }␤»
ZoffixW m: class Foo { not-really-a-method-go-away foo ( :$Jeff = 42 ) { ... } }
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/i2kY5bUuno␤Variable '$Jeff' is not declared␤at /tmp/i2kY5bUuno:1␤------> 3oo { not-really-a-method-go-away foo ( :7⏏5$Jeff = 42 ) { ... } }␤»
ZoffixW ^_^
moritz I don't know if we can even generate better error messages for a misspelled declarator
ZoffixW Oh well :) 19:53
moritz m: ours $x = 42; # hey, I'm declaring it right here...
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GEjU7UsfIA␤Variable '$x' is not declared␤at /tmp/GEjU7UsfIA:1␤------> 3ours 7⏏5$x = 42; # hey, I'm declaring it right h␤»
uruwi Does `$_ = $_.clone;` do the same thing as what `$_ = CompUnit::Repository.new($_);` used to do? 19:54
geekosaur in theory it would be possible to mark specific blocks (e.g. class Foo BLOCKHERE) as expecting a declarator as the first thing
ZoffixW m: not-really-mine not-really-a-class Foo { not-really-a-method foo ( :$WAT = 42 ) { ... } }
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ePdLtMK4Q0␤Variable '$WAT' is not declared␤at /tmp/ePdLtMK4Q0:1␤------> 3-class Foo { not-really-a-method foo ( :7⏏5$WAT = 42 ) { ... } }␤»
flussence aiui, it fails that way because those could be post-declared subs 19:56
'sub' and 'method' are more magic-y language construct things that indicate the next thing is a signature though 19:57
moritz geekosaur: you can put arbitrary code in a class block, not just declarations
uruwi m: say $*REPO.files("ho"); 19:58
camelia rakudo-moar 15ec39: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/IXdS5nP6VS line 1␤␤»
geekosaur yep. hence "in other"; there's a common form but not a mandatory one... would be good for a bunch of WATs
uruwi Is CompUnit::Repository#files broken?
geekosaur er "in theory:
geekosaur wonders where "other" came from there
uruwi CompUnit::Repository.new($*REPO)
m: say CompUnit::Repository.new($*REPO)
camelia rakudo-moar 15ec39: OUTPUT«Method 'id' must be implemented by CompUnit::Repository because it is required by a role␤ in any compose_method_table at gen/moar/m-Metamodel.nqp line 2801␤ in any apply at gen/moar/m-Metamodel.nqp line 2811␤ in any compose at gen/moar/m-Metamodel…»
moritz m: say CompUnit::Repository.HOW.^name 19:59
camelia rakudo-moar 15ec39: OUTPUT«Perl6::Metamodel::ParametricRoleGroupHOW␤»
moritz ah, it's a role
AlexDaniel ZoffixW: by the way, why did you need it? :)
moritz m: say $*REPO.new($*REPO)
camelia rakudo-moar 15ec39: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤ in block <unit> at /tmp/LdzTKY9_lF line 1␤␤»
uruwi m: say $*REPO.what.new($*REPO) 20:00
camelia rakudo-moar 15ec39: OUTPUT«Method 'what' not found for invocant of class 'CompUnit::Repository::Installation'␤ in block <unit> at /tmp/CP39hnd6qc line 1␤␤»
uruwi m: say $*REPO.WHAT.new($*REPO)
camelia rakudo-moar 15ec39: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤ in block <unit> at /tmp/M47M8Bu5CM line 1␤␤»
uruwi m: say $*REPO.clone # same as the past CompUnit::Repository.new($*REPO)? 20:01
camelia rakudo-moar 15ec39: OUTPUT«inst#/home/camelia/.perl6/2015.12-247-g15ec392␤»
uruwi m: say $*VERSION
camelia rakudo-moar 15ec39: OUTPUT«Dynamic variable $*VERSION not found␤ in block <unit> at /tmp/VjpmyxG1tD line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/VjpmyxG1tD line 1␤␤»
ZoffixW m: What's in a name that which we call a rose␤By any other name would smell as sweet␤␤␤␤␤␤␤␤␤␤$WAT
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/D5Xw8rL1_y␤Variable '$WAT' is not declared␤at /tmp/D5Xw8rL1_y:12␤------> 3<BOL>7⏏5$WAT␤»
ZoffixW thinks of a funny tweet
geekosaur would need something horrid like "if we're in a place where we could reasonably expect a declarator and then fail because of an undefined variable, ask if the first word-like token could have been a declarator, ideally doing Levenshtein against known declarators" 20:02
could be done but ick
20:02 awwaiid left, vendethiel left
AlexDaniel .u ⌁ 20:04
yoleaux U+2301 ELECTRIC ARROW [So] (⌁)
AlexDaniel electric arrow, hmmm
uruwi So in conclusion, CompUnit::Repository#files isn't broken only on Windows.
20:05 alpha123 joined
ZoffixW ^_^ twitter.com/zoffix/status/695699729712197632 20:05
AlexDaniel, I'm writing a blog post about WhateverStar and I wanted a mention that some people proposed using something other than an asterisk for it. 20:06
20:06 _mg_ left, perlpilot joined
uruwi How is it parsed anyway? 20:06
AlexDaniel ZoffixW: I love your blog posts, by the way 20:07
ZoffixW uruwi, what's the breakage?
AlexDaniel, thanks
uruwi From the example of your poetic source code? 20:08
colomon DrForr: one was a Gruyère and the other a Parmigiano-like local variety whose name I forget.
ZoffixW uruwi, hm? You said this and I'm wondering what exactly is broken? <uruwi> So in conclusion, CompUnit::Repository#files isn't broken only on Windows. 20:09
uruwi No, I was talking about the tweet you linked. twitter.com/zoffix/status/695699729712197632 20:11
But the method is complaining about unboxing a type object. 20:12
20:13 lokien_ joined, mr-foobar left
jferrero m: my (@a, @b) = f(); sub f { my @x = <A B C>; my @y = 1, 2, 3; return @x, @y; } dd @a; dd @b; 20:16
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fLYNII7Syf␤Strange text after block (missing semicolon or comma?)␤at /tmp/fLYNII7Syf:1␤------> 3 B C>; my @y = 1, 2, 3; return @x, @y; }7⏏5 dd @a; dd @b;␤ expecting any of:␤ infix␤ …»
geekosaur also notes that older perl had poetry mode for quite a long time >.> 20:17
ZoffixW m: my (@a, @b) = f(); sub f { my @x = <A B C>; my @y = 1, 2, 3; return @x, @y; }; dd @a; dd @b;
camelia rakudo-moar 15ec39: OUTPUT«Array @a = [["A", "B", "C"], [1, 2, 3]]␤Array @b = []␤»
geekosaur still has not been able to load the tweet. notwork is extremely not
jferrero yes...
geekosaur (local issue) 20:18
ZoffixW m: my ($a, $b) = f(); sub f { my @x = <A B C>; my @y = 1, 2, 3; return @x, @y; }; dd $a; dd $b;
camelia rakudo-moar 15ec39: OUTPUT«Array $a = $["A", "B", "C"]␤Array $b = $[1, 2, 3]␤»
jferrero It is possible to return two arrays?
ZoffixW jferrero, ^ . I think the @array stuff slurps everything up
or something like that
20:19 awwaiid joined
moritz m: my (@a, @b) .= f(); sub f { my @x = <A B C>; my @y = 1, 2, 3; return @x, @y; }; dd @a; dd @b; 20:19
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/BzLcU_SFkK␤Cannot use .= initializer with a list of declarations␤at /tmp/BzLcU_SFkK:1␤------> 3my (@a, @b) .= f()7⏏5; sub f { my @x = <A B C>; my @y = 1, 2,␤»
moritz m: my (@a, @b) := f(); sub f { my @x = <A B C>; my @y = 1, 2, 3; return @x, @y; }; dd @a; dd @b;
camelia rakudo-moar 15ec39: OUTPUT«Array @x = ["A", "B", "C"]␤Array @y = [1, 2, 3]␤»
ZoffixW :o
moritz jferrero: ^^ works when you use binding instead of assignment
DrForr colomon: Yum. 20:21
colomon DrForr: that’s the idea. we’ve been saving them for when I got a chance to make a pizza, and today’s the day! dough is now rising. 20:22
20:22 CurtisOvidPoe left
ZoffixW m: my $x = *.say; say $x 20:23
camelia rakudo-moar 15ec39: OUTPUT«WhateverCode.new␤»
ZoffixW m: my $x = **.say; say $x
camelia rakudo-moar 15ec39: OUTPUT«sub (*@_) { #`(Sub|66971072) ... }␤»
20:23 awwaiid left, molaf left, uruwi left 20:24 ely-se joined
ZoffixW m: my $x = *****.say; say $x 20:24
camelia rakudo-moar 15ec39: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZBOcvWRKAe␤Multiple HyperWhatevers and Whatevers may not be used together␤at /tmp/ZBOcvWRKAe:1␤------> 3my $x = *****.say7⏏5; say $x␤»
20:25 dupa left
ZoffixW camelia, eh... whatever then 20:25
^_^
20:25 ZoffixW left 20:26 Sqirrel joined
AlexDaniel m: my $x = *×*×*.say; say $x 20:28
camelia rakudo-moar 15ec39: OUTPUT«WhateverCode.new␤»
20:28 _ramix_ left 20:29 mullagainn left 20:30 Praise left, dolmen joined 20:31 musiKk joined, Praise joined, Praise left, Praise joined 20:34 dupa joined
raiph #perl6: please point out mistakes, things you don't like, omissions, re: my draft of a p6doc performance page: gist.github.com/raiph/6fc40c34377efe2f74fb Also, please suggest examples for the "Using native types (speed)" section. 20:35
yoleaux 07:27Z <nine> raiph: I'm not on reddit, but would be happy to discuss these things on #perl6-toolchain.
20:37 Praise left, addison_ joined 20:40 prammer joined 20:41 domidumont left 20:43 MadcapJake` left, muraiki joined
[Coke] wilwheaton.tumblr.com/post/13874099...matics-the # Furbonacci sequence 20:43
20:44 Praise joined, Praise left, Praise joined 20:52 zed00 left 20:55 dupa left, Ven joined
TimToady someone could point out that p6 behaves properly with stackoverflow.com/questions/116951...ntax-error 20:56
jnthn [Coke]: Wow, cat pictures *and* a pun :) 20:57
moritz willdo
20:59 dupa joined, kanishka left
DrForr Was it someone here asking me about the P6 talk at FOSDEM? 21:00
moritz stackoverflow.com/questions/1169511...7#35233397
21:02 Ven left 21:03 tlvb joined, Ven joined
dalek kudo/nom: ac9abb9 | lizmat++ | src/core/Compiler.pm:
Micro opt for Compiler.id
21:04
21:05 kaare_ left
tlvb is it possible to unload modules (or at least reload them), so that a perl program can have components updated without having to restart the main process? 21:06
21:06 revhippie joined
moritz tlvb: I don't think so 21:08
21:08 cdg joined
moritz though it would be a worthwhile extension 21:08
21:11 autark joined
ugexe besides clone, is there a way to change a bunch of attribute values in a class (assuming they are rw) like `.new(|%hash)`? 21:16
hoelzro blog.acolyer.org/2016/02/05/is-soun...ping-dead/
could make for an interesting read
moritz Perl 6 doesn't even pretend to have "sound" gradual typing, whatever that is :-) 21:17
hoelzro yeah, that choice of terminology tripped me up a bit 21:19
21:21 pmurias joined
azawawi moritz: im integrating now atom-build with my Perl 6 editor tools 21:21
moritz: what do you think is a good build sequence in Perl 6 projects?
21:21 perlpilot left
azawawi moritz: perl Makefile && make && make test... etc 21:22
pmurias moritz: a sound type system is an actual technical term
moritz pmurias: I know, but I don't see how it transfers to gradual typing
azawawi: dunno; maybe ask in #perl6-toolchain 21:23
21:23 geraud joined
pmurias moritz: that no type errors happen in the statically typed part 21:24
azawawi moritz: thx 21:25
moritz pmurias: that presumes there's a clear boundary between statically and dynamically typed code
21:26 kyclark joined
pmurias moritz: there is one in gradually typed languages 21:26
Skarsnik Perl 6 only not check type on routine/method call?
moritz pmurias: what's the boundary in Perl 6?
pmurias I wouldn't call Perl 6 a gradually typed language 21:27
moritz pmurias: please elaborate
pmurias Perl 6 doesn't have a statically type part
gradually typed languages (at least the ones that paper was concerned about) consist of both a dynamic and a static part 21:28
when things go from the dynamic part to the static part they are typed checked 21:29
Perl 6 lacks the static part
Skarsnik compile does not fix type?
jnthn Uh, natives are very clearly static.
pmurias that's a point 21:30
21:32 Kristien joined
pmurias but we still lack a full static type system (I suspect that in the future modules will change that) 21:32
21:33 ely-se left
pmurias one selling point of gradual type systems is that you can gradually add type declarations to a dynamically typed program and turn it into a statically typed checked one 21:33
21:33 lostinfog joined
DrForr Inline::Scheme::Guile now supports the full numeric stack including num/denom and complex numbers, I've still got +/-INF and maybe a few oddball representations. 21:34
Skarsnik Nice DrForr 21:35
what was your issue?
DrForr Well, it *still* doesn't like 0, that bug still needs to be worked out. 21:36
21:37 kyclark left
DrForr The original issue is that the predicates for null_p and false_p both trigger on null, so I was getting .. er, false positives. 21:37
21:37 SCHAAP137 joined
moritz false null_p? :-) 21:38
DrForr It was obviously something of a oversight on the API designers, as there's a #define for _false_and_not_null_p(x). 21:39
Skarsnik lol 21:42
21:44 muraiki left 21:45 Rotwang left, Rotwang joined
moritz I'm looking for German-speaking folks to proof-read an article on Perl 6 21:47
dalek kudo/nom: 91a5d11 | lizmat++ | src/core/Capture.pm:
Some Capture streamlining
moritz and give me some feedback
21:49 Ven left
moritz I guess I'll ask again when more central Europe is more awake :-) 21:51
grondilu ls 21:52
oops ignore that^
ugexe his password is ls! 21:53
21:53 perlpilot joined
moritz who would have guessed? :-) 21:53
pmurias what happened to the irc log? 21:54
21:55 uruwi joined
pmurias it's back up 21:55
22:00 TEttinger joined
moritz my monitoring didn't report any downtime 22:02
hoelzro moritz: I'll read it, but my German is a little rusty 22:04
reading should help that ;)
ZoffixWin pets the robot 22:05
yoleaux 15:55Z <MadcapJake> ZoffixWin: oh! I had thought it the other way around, didn't realize META6.json was the new standard.
22:10 vendethiel joined 22:11 awwaiid joined
moritz hoelzro: sent by email 22:13
22:13 molaf joined
hoelzro moritz: thanks! I'll probably have it read by tomorrow morning your time =) 22:14
ZoffixWin Tried Go today for the first time... I think it's pretty good: xtatik.org/tmp/go-lang-hello.html 22:18
22:18 awwaiid left
Skarsnik huhu 22:18
Kristien Go is great for most things that has to do lots of I/O, networking, concurrency 22:19
22:19 Kristien is now known as ely-se
ely-se oh I clicked the link just now :( 22:19
22:25 tlvb left
ZoffixWin :D 22:25
22:25 prammer left 22:33 vendethiel left 22:34 lonewolf28 left 22:35 molaf left 22:36 awwaiid joined 22:37 dupa left 22:39 sivoais joined 22:41 musiKk left
b2gills m: my &code = ->\c,\m{for ^c {.[+*]=[+] .[*X-1,2]for m;m[+*]=[m[*-2;*] »+«m[*-1]]};m}; say code(3,[[1,1,1],[2,3,4]]).perl 22:41
camelia rakudo-moar 91a5d1: OUTPUT«[[1, 1, 1, 2, 3, 5], [2, 3, 4, 7, 11, 18], [3, 4, 5, 9, 14, 23], [5, 7, 9, 16, 25, 41], [8, 11, 14, 25, 39, 64]]␤»
22:43 vendethiel joined, awwaiid left 22:49 Ven joined 22:52 Ven left, rindolf left
AlexDaniel b2gills: great, link? 22:53
22:56 awwaiid joined 22:58 autark left 22:59 autark joined
azawawi github.com/azawawi/atom-perl6-edit...ld-support # v0.8.4 => build support in Perl 6 (atom editor)... Enjoy :) 23:02
23:02 Ven joined 23:04 Ven left
lizmat azawawi++ 23:05
23:05 autark left
RabidGravy nice 23:05
23:05 awwaiid left
azawawi now give me build tasks :) 23:05
23:05 vendethiel left
azawawi im so sleepy 23:06
:)
good night
and ty for making perl6
RabidGravy :-* 23:07
b2gills AlexDaniel: Actually it was to give someone else a link showing that the code worked codegolf.stackexchange.com/a/71157/1147 23:08
23:08 BenGoldberg joined 23:10 snarkyboojum joined, azawawi left, autark joined 23:13 perlawhirl joined 23:15 pmurias left
AlexDaniel b2gills: you can make it shorter by replacing »+« with Z+ 23:17
23:18 snarkyboojum left
AlexDaniel oh wait, it doesn't work with the short version 23:18
23:20 perlawhirl left
b2gills AlexDaniel: it does if you put the `;*` back in that I removed, so it isn't quite as big a win, but it is still 2 bytes shorter 23:21
AlexDaniel b2gills: right 23:22
oh
b2gills: interestingly you don't even need any whitespace before Z in this case 23:23
so yeah, same character count but less bytes
23:25 firstdayonthejob left 23:31 captain-adequate joined
dalek kudo/nom: ec543e9 | lizmat++ | src/core/ (2 files):
Streamline phaser handling

Should make a lot of iterables a bit faster, and use less memory because of a new "has-phaser' method that returns a bool instead of a list that needs to be counted.
23:31
Skarsnik lizmat++ with the speedup commit :) 23:32
23:32 kid51 joined
AlexDaniel m: say ()[;0] 23:33
camelia rakudo-moar 91a5d1: OUTPUT«Non ast passed to WANTED: BOOTInt␤Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Weird node in analyze: BOOTInt␤===SORRY!===␤Unknown QAST node type BOOTInt␤»
AlexDaniel camelia: bleeougrhhh!
lizmat good night, #perl6! 23:34
AlexDaniel m: say [;] # a bit shorter, but the output is less impressive
camelia rakudo-moar 91a5d1: OUTPUT«Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Weird node in analyze: BOOTInt␤===SORRY!===␤Unknown QAST node type BOOTInt␤»
ZoffixWin lizmat++ night and thanks for all those optimizations you've been pushing :)
AlexDaniel m: [;]
camelia rakudo-moar 91a5d1: OUTPUT«Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Weird node in analyze: BOOTInt␤===SORRY!===␤Unknown QAST node type BOOTInt␤»
AlexDaniel woooooooooow 23:35
m: (;)
camelia rakudo-moar 91a5d1: OUTPUT«(signal XFSZ)Non-QAST node visited BOOTInt␤Weird node visited: BOOTInt␤Resultchild 0 can't returns! BOOTInt␤- QAST::Stmts :BY<comp_unit ua u> :context<sink> (;)␤ - QAST::Stmt :BY<comp_unit ua u u> :context<sink> :final (;)␤ - 0␤␤Non-QAST …»
AlexDaniel try that in command line
23:35 cdg left
AlexDaniel did I open some door to matrix or something? 23:35
23:36 addison_ left 23:37 addison_ joined
ZoffixWin fmt.Println(add 42, 13 ) prog.go:10: syntax error: unexpected literal 42, expecting ) 23:37
And thus ends my escapade into Go Lang :) Perl spoiled me
I do like their Tour thing though: tour.golang.org/welcome/1 23:38
alpha123 Go has got to be the most boring and utterly useless language of the last 8 years 23:39
ZoffixWin AlexDaniel, :o that looks to be the wormhole to the 5th dimension! 23:40
23:42 dolmen left
ZoffixWin "Resultchild 0 can't returns!" looks like two typos in that error message. Missing space and "returns" -> "return" 23:43
AlexDaniel ZoffixWin: and that's the only thing that bothers you? 23:45
no, I'm not going to tag it as LTA :D
ZoffixWin :)
AlexDaniel anyway: rt.perl.org/Public/Bug/Display.html?id=127473 23:46
yeah, coming up with meaningful titles is hard. One reason is that I have no idea what is going on there at all 23:47
23:54 RabidGravy left