»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:04 BenGoldberg joined, mcmillhj left
japhb Who is Zoffix right now? I need to ask about IRC::Client ... 00:05
timotimo elfoonto 00:06
japhb ... but not here? Hmmm
timotimo zoffix tends to pop in and out of existence 00:07
japhb How do you .tell someone who keeps changing nick all the dang time?
geekosaur they left, yes
(and I see I pegged them without much evidence :)
bioduds yay, worked
00:07 cdg left 00:09 cognominal left
japhb Gah, well: Anyone currently in here successfully use IRC::Client in a Rakudo built today? 00:09
00:09 labster left
bioduds I guess you could md5 before installing, geekosaur? 00:10
japhb I'm trying to figure out if I failed my daily stupidity check, or I got unlucky and IRC::Client is allergic to a recent commit.
bioduds to check if a man in the middle attack occurred, no?
geekosaur I hope you mean sha256; md5 is long since compromised for that use, and sha1 is unreliable 00:11
bioduds could be, yes
would prevent such hotspot geeks, right?
timotimo https should already be good enough, if we can get the certificate pinned in the curl commandline maybe? 00:12
bioduds excellent
yes, there is no session
no hijacking I guess
Im putting up a whole series of linux distros now to test it 00:13
first was ubuntu 14.04
later ill try on my old mac
00:14 cognominal joined
bioduds obscuring the file also helps 00:14
with https, am I right?
I mean, along with https
00:15 mcmillhj joined
dalek c: 51d7a8d | gfldex++ | doc/Language/control.pod6:
alias swtich to given for search
MasterDuke japhb: bisectable6, benchable6, and committable6 all use IRC::Client
with a somewhat recent Rakudo
timotimo if someone gets a trusted certificate for rakudo.org and MITMs you, you can still be pwned ... 00:17
geekosaur and unfortunately that kind of thing is a somewhat common occurrence 00:18
timotimo like if you have an antivirus or something the OEM installed that ships a CA in order to "protect" you from stuff in https encrypted connections
geekosaur cf. various entities getting certs for both microsoft.com and google.com
timotimo and when the software also accidentally ships the private key to go with that certificate authority ...
geekosaur or deliberately, in the dell case
timotimo lenovo also had a case of that
MasterDuke japhb: This is Rakudo version 2016.07.1-148-g9cbd855 built on MoarVM version 2016.07-17-g40948f6 00:19
bioduds who would be responsible for acquiring such a certificate for perl6.org, guys?
im using 2016.04 00:20
00:20 mcmillhj left 00:25 richi235 left
geekosaur what? 00:27
I have the feeling you did not understand what was said there and now you want a fake perl6.org cert to hijack the site with?
00:28 eyck joined
geekosaur also I have the feeling you are so convinced that something *fundamentally insecure* is critically important to have and therefore cannot possibly be fundamentally insecure, it's just a matter of tweaking things right to make it safe 00:28
and yes, I have seen lots of justifications for why "just set the server up right and it's perfectly safe" that prove that the people that wrote them *do not understand network security* 00:29
00:31 girafe left 00:32 mcmillhj joined 00:35 mempko left
japhb MasterDuke: I figured out the problem -- no SSL support in IRC::Client. 00:35
00:37 mcmillhj left
MasterDuke ahh, didn't realize that. good to know 00:37
00:42 mcmillhj joined 00:47 gfldex left, mcmillhj left 00:49 pierre_ joined 01:05 mcmillhj joined, ItayAlmog left 01:08 labster joined 01:13 bjz joined 01:14 Actualeyes joined, mcmillhj left 01:16 mcmillhj joined 01:19 bjz_ joined 01:20 bjz left 01:21 mcmillhj left 01:23 lambd0x left, bjz_ left 01:24 BenGoldberg left 01:25 MasterDuke left 01:26 bjz joined 01:27 BenGoldberg joined 01:30 ItayAlmog joined 01:31 pierre_ left 01:32 pierre_ joined 01:45 ilbot3 left 01:47 ilbot3 joined 01:49 bjz_ joined 01:50 bjz left 01:52 skrshn left 01:53 mcmillhj joined 01:57 mcmillhj left 02:00 itaipu joined
SmokeMachine____ If I want to "create" a "alias" for the class word, I can use the EXPORTHOW... Is there anything like that for the has word? 02:11
02:13 labster left 02:14 pierre_ left, labster joined
SmokeMachine____ m: module EXPORTHOW {constant DEFINE::just-a-class = Metamodel::ClassHOW}; say just-a-class Name {} 02:16
camelia rakudo-moar ec9e81: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing initializer on constant declaration␤at <tmp>:1␤------> 3module EXPORTHOW {constant DEFINE:7⏏5:just-a-class = Metamodel::ClassHOW}; sa␤»
SmokeMachine____ m: module EXPORTHOW {module DEFINE {constant just-a-class = Metamodel::ClassHOW}}; say just-a-class Name {} 02:18
camelia rakudo-moar ec9e81: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared name:␤ Name used at line 1␤Undeclared routine:␤ just-a-class used at line 1␤␤»
SmokeMachine____ m: package EXPORTHOW {package DEFINE {constant just-a-class = Metamodel::ClassHOW}}; say just-a-class Name {} 02:22
camelia rakudo-moar ec9e81: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared name:␤ Name used at line 1␤Undeclared routine:␤ just-a-class used at line 1␤␤»
SmokeMachine____ Something like that...
But is there a way to do that with the "has" key word? 02:23
02:23 pierre_ joined
SmokeMachine____ And for methods? 02:24
02:27 mcmillhj joined, pierre_ left 02:32 mcmillhj left 02:39 aries_liuxueyang left, noganex joined 02:42 noganex_ left
ugexe Slangs 02:43
02:46 aries_liuxueyang joined 02:51 labster left, mcmillhj joined 02:53 bob777 joined, eliasr left 02:56 mcmillhj left 02:59 atweiden left, richi235 joined 03:02 mempko joined, pierre_ joined 03:12 cibs left 03:15 cibs joined 03:26 mcmillhj joined 03:30 mcmillhj left 03:38 beatdown left 03:46 MilkmanDan left 03:48 MilkmanDan joined 03:52 mcmillhj joined 03:56 mcmillhj left 03:58 mempko left 04:08 mcmillhj joined 04:09 Actualeyes left 04:10 mempko joined 04:13 mcmillhj left 04:15 Cabanossi left 04:16 khw left 04:19 Cabanossi joined 04:21 mcmillhj joined 04:22 labster joined 04:26 mcmillhj left 04:27 zapwai left 04:34 mcmillhj joined 04:35 mempko left 04:36 gabiruh left, sftp left, mindos left 04:37 pierre_ left, canopus left, kipd left, DrParis left 04:38 zostay left, peteretep left, Lucas_One left, olinkl left, mcmillhj left, sftp joined 04:39 mindos joined 04:40 zostay joined, peteretep joined, kipd joined, olinkl joined, Lucas_One joined 04:41 kent\n left, kent\n joined 04:42 DrParis joined, gabiruh joined 04:44 ponbiki joined, ponbiki is now known as Guest43351, canopus joined 04:46 Matthew[m] left, pierre_ joined, kent\n is now known as kentnl 04:48 JimmyZ joined 04:49 kentnl is now known as kent\n 04:50 ItayAlmog left 04:51 pierre_ left 04:52 Matthew[m] joined 04:54 mcmillhj joined 04:55 skids left 04:59 mcmillhj left 05:03 pnu_ left, mrsolo left, tbrowder left, Guest58374 left 05:04 pnu_ joined 05:05 Guest58374 joined, tbrowder joined 05:06 mrsolo joined, PotatoGim joined 05:07 woolfy joined, w4and0er96 joined 05:13 jnap_ joined 05:18 mcmillhj joined 05:23 mcmillhj left
Woodi tail -3 ~/.bashrc\nexport PATH\nPATH=$HOME/.rakudo/bin:$PATH\nexport PATH\nYou have new mail.\n$ should work :) 05:25
geekosaur except when you use virtual environment managers which expect that .bashrc does not undo the path changes they just made 05:27
Woodi geekosaur: err... .bashrc are now autogenerated too ?? :) 05:28
geekosaur (some uses of perlbrew; rvm; hsenv; more generally stuff like modules)
05:31 canopus left 05:37 canopus joined 05:38 Actualeyes joined
Woodi geekosaur: looks hsenv introduces new layer so installation needs to be level-up from this. or just implementation of meta-tools that operate on environment from inside is needed :> 05:40
geekosaur so, the real point is, you use an environment manager to point your current shell to a particular installation of something. you fire up vim, and expect it to also be using that. but vim loads your .bashrc when it runs an external command, which undoes the modified $PATH --- oops 05:41
Woodi err... there was RFC discussion on #perl6-dev yesterday... do this means that pasting links from HN is now prohibited without thinking&proposing RFC paper ?? 05:42
05:42 ufobat joined
Woodi geekosaur: that's why you need meta-part there, it needs to modify .bashrc template for every env usage :) 05:44
geekosaur that's not scalable to modules or nikola or other such systems where the sysadmins manage the environment configs for possibly hundreds of users with different shells 05:46
05:47 pierre_ joined
Woodi finally become proper X desktop user by learning to use that virtual desktop feature from twm/fvwm times :) 05:50
05:52 pierre_ left 05:57 pierre_ joined
moritz Woodi: welcome to the 20th century! :-) 05:59
06:00 pierre_ left 06:01 pierre_ joined 06:11 itaipu left 06:15 mcmillhj joined 06:18 Wiertek joined 06:19 woolfy left, woolfy1 joined 06:20 pierre___ joined, mcmillhj left, wamba joined 06:21 wtw_ joined, pierre_ left, wtw left, wtw_ left, wtw_ joined, firstdayonthejob joined 06:22 pmurias joined 06:24 zacts joined 06:28 mempko joined 06:29 brrt joined
moritz ok, I'm not sure fvwm had that in 1999 06:30
06:30 nadim joined 06:34 firstdayonthejob left, AlexDaniel left 06:36 berthos joined 06:39 berthos left, domidumont joined 06:43 domidumont left 06:45 domidumont joined, mcmillhj joined
geekosaur it did 06:45
original twm didn't 06:46
06:47 darutoko joined 06:49 mcmillhj left
geekosaur probably thinking of ctwm, from 1992 06:49
06:50 nine joined 06:54 Wiertek left 06:56 domidumont left 06:57 domidumont joined 07:00 mcmillhj joined 07:01 CIAvash joined 07:03 brrt left 07:04 mcmillhj left 07:12 mohae_ joined 07:14 mohae left 07:18 BenGoldberg left 07:19 labster left, gucore joined 07:22 dsp_ left 07:23 dsp_ joined 07:25 espadrine_ joined 07:31 Wiertek joined 07:34 woolfy1 left, woolfy joined 07:35 canopus left 07:36 zakharyas joined 07:40 canopus joined 07:46 mempko left 07:49 domidumont left 07:50 RabidGravy joined 07:51 mcmillhj joined 07:56 mcmillhj left 08:01 girafe joined 08:03 labster joined 08:04 vendethiel left 08:06 espadrine_ left 08:07 grondilu joined, nightsh joined
grondilu how do I recursively list all regular files in a directory? 08:07
08:08 dolmen joined
nine grondilu: use File::Find or Path::Iterator 08:09
08:09 pierre___ left
grondilu yeah, just saw it on rosettacode 08:10
08:11 dakkar joined 08:14 pierre_ joined 08:16 yoleaux joined, ChanServ sets mode: +v yoleaux 08:19 leont joined 08:21 nightsh left
masak good antenoon, #perl6 08:22
08:26 Actualeyes left 08:29 brrt joined 08:31 mcmillhj joined 08:34 vendethiel joined, jonas3 joined, smls joined 08:36 mcmillhj left 08:45 ItayAlmog joined 08:47 Sgeo_ joined 08:48 rindolf joined, ItayAlmog left 08:49 ItayAlmog joined 08:51 Sgeo left, mcmillhj joined, perl6p4 joined 08:52 ab6tract joined
ab6tract o/ #perl6 08:52
i seem to be confused about array slicing 08:53
m: my @a = [ 1 xx 5 ], [ 2 xx 5], [3 xx 5], [4 xx 5]; say @a[][2]; say @a[*][2]
camelia rakudo-moar ec9e81: OUTPUT«[3 3 3 3 3]␤[3 3 3 3 3]␤»
lizmat ab6tract: or you found a bug :)
ab6tract i thought for sure one of those syntaxes (or another that i am forgetting) used to give a list of all the second elements of the arrays
08:54 ItayAlmog left, vendethiel left
ab6tract lizmat: are you saying i ain't crazy (at least not about this)? 08:55
08:56 mcmillhj left
lizmat well, @a[*] is basically the same as @a[], which is basically the same as @a 08:56
masak m: my @a = [1 xx 5], [2 xx 5], [3 xx 5], [4 xx 5]; say @a[*;2]
camelia rakudo-moar ec9e81: OUTPUT«(1 2 3 4)␤»
lizmat so that's just saying @a[2], which looks correct
masak ab6tract: ^^
ab6tract right, but wasn't there a slice syntax for getting at every second element? 08:57
of a multi dim
lizmat I think that's still NYI ?
ab6tract oh
masak just showed me :)
lizmat ah, ok, must not be awake then :-)
there's something wrt to multidim slicing that's NYI still
DrForr Of *course* Perl6 does APL-style slicing. :/ 08:58
masak DrForr: you seem disappointed at this.
08:58 perl6p4 left
DrForr It means I have *more* work :) 08:58
ab6tract maybe we can bacronym APL to be Another Perly Language :)
08:58 nine left, nadim left, ufobat left, aries_liuxueyang left, imcsk8 left, Ulti left, hanekomu left, mtj_ left, jdv79 left, mniip left, broquaint left, dylanwh left, shadowpaste left, xdbr left, jervo left 08:59 mniip joined, sjohnson joined, rafl joined, remmie joined 09:00 dylanwh joined
DrForr The major problem is that APL does strict L-to-R evaluation; I'd need to add a slang that ignores precedence in order to make the operations properly line up. 09:00
09:01 ggherdov left 09:02 leont left, leont_ joined 09:03 jervo joined, nine joined, nadim joined, ufobat joined, aries_liuxueyang joined, imcsk8 joined, Ulti joined, hanekomu joined, mtj_ joined, jdv79 joined, broquaint joined, shadowpaste joined, xdbr joined, TheDir_ joined, jeek joined, gypsydave5 joined, jast joined, margeas joined, aries_liuxueyang left 09:04 ggherdov joined, MorayJ joined 09:05 mcmillhj joined 09:06 aries_liuxueyang joined 09:07 gucore is now known as fridim___ 09:08 ggherdov left 09:09 ggherdov joined, mcmillhj left 09:18 pierre_ left 09:19 Sgeo_ left, mcmillhj joined 09:20 Sgeo_ joined 09:21 girafe left 09:23 pierre_ joined 09:24 mcmillhj left 09:25 leont_ left
TEttinger DrForr: does it? isn't there some precedence so "1 2 3 4 rho 2 2" knows that the first block of numbers are an array, and "2 2" is another array passed as argument to rho? 09:26
09:27 domidumont joined 09:28 pierre_ left
DrForr Well, that was at least the impression I got when I last read the official manual (which I have in storage back in the States.) I'm sure the memory has faded, though. 09:28
09:36 pierre_ joined 09:38 TEttinger left, pierre_ left, pierre_ joined 09:45 brrt left 09:47 CIAvash left, michiamodiego joined, brrt joined 09:48 michiamodiego left 09:49 di_ego joined 09:52 di_ego left 09:54 CIAvash joined
dalek osystem: 81e535d | ab5tract++ | META.list:
Update Terminal::Print META6.json location
10:18 Sgeo_ left 10:22 girafe joined
nine nadim: you've already missed a lot of interesting discussion over in #perl6-toolchain starting at irclog.perlgeek.de/perl6-toolchain/...i_13112051 10:23
nadim: also my proposal at github.com/perl6/toolchain-bikeshe...r/build.md
10:23 pierre_ left 10:24 Sgeo joined 10:30 lambd0x joined
lambd0x Hi everyone! 10:30
10:37 margeas left 10:42 bioduds left
DrForr Afternoon. 10:42
10:43 itaipu joined 10:48 eyck left 11:02 labster left 11:07 eyck joined 11:11 kaare__ joined
melezhik Hi! 11:13
Hwo can I get an exception object inside CATCH { ... } ?
lizmat $_
melezhik thanks! 11:14
lizmat m: die "foo"; CATCH { dd $_ }
camelia rakudo-moar f0e6ae: OUTPUT«X::AdHoc.new(payload => "foo")␤foo␤ in block <unit> at <tmp> line 1␤␤»
melezhik ok, thanks lizmat: 11:15
sorry, for silly question, I read about payload , but still can't understand how to use it in my exception classes ... 11:16
lizmat die "foo" is basically short for X::AdHoc.new(payload => "foo").throw 11:19
other exceptions have other parameters
melezhik so payload method only makes a sense for X::AdHoc class? 11:20
lizmat yes 11:21
m: say 24 / my $ = 0; CATCH { dd $_ } # other example
camelia rakudo-moar f0e6ae: OUTPUT«X::Numeric::DivideByZero.new(using => "div", numerator => 24)␤Attempt to divide 24 by zero using div␤ in block <unit> at <tmp> line 1␤␤Actually thrown at:␤ in block <unit> at <tmp> line 1␤␤»
11:21 pmurias left
melezhik ok, thanks lizmat: 11:22
how to disable variables interpolation inside regular expressions ?
to have something /$foo/ where $foo is not a variable ... 11:23
timotimo just put it in single quotes
that'll guarantee no interpolation happens
nadim nine, I'll look at it right now 11:24
nine: so when I explain a problem you profit of the occasion to cleanup your nose and get a small raccoon out of it. imgur.com/a/mBNte 11:26
melezhik thanks timotimo: , I guessed this, probably had some other errors in other parts of my regexps ...
timotimo could be, yes 11:28
nine LOL
nadim hehe
nine Well if the image was larger, I could talk myself out of this...
timotimo melezhik: have you tried perl6-debug-m yet? (you need to install a front-end module)
melezhik perl6-debug-m for what ?
nadim nine: IMVHO, and I know a lot of people will not get it, forget make, forget make, forget make. also, in my experience, declarative systems will fail. or rather they will deprecate rapidly. Maybe we can continue this on the toolchain channel. 11:29
timotimo melezhik: for your regex parsing?
nine nadim: please. I wouldn't mind you reposting that
melezhik ah, I am confident enough to manage on my own, thanks for advise anyway ... 11:30
lizmat nadim: that was just nine switching the tape recorder up his nose to "record" :-)
melezhik can't find to how to have tests without plan at docs.perl6.org/language/testing if I have only done-testing at the end, I still have a Parse errors: No plan found in TAP output 11:31
lizmat just a done-testing at the end should be enough 11:32
m: use Test; ok 1; done-testing
camelia rakudo-moar f0e6ae: OUTPUT«ok 1 - ␤1..1␤»
melezhik ahh, got now, seems like program flow does not reach a done-testing call
that's the reason ...
it's ok now
DrForr Or 'plan 42;' at the top, if you know the number of tests or can compute them. 11:33
timotimo worst case, just END { done-testing } :P
nadim lizmat: he's sneaky like that
11:33 jonadab left
melezhik strange enough if I have asserts in CATCH {} block seems like done-testing also needs to be called inside CATCH {} block; If I have done-testing just at the end of the file I have "No plan found in TAP output" 11:35
lizmat m: say 24 / my $ = 0; CATCH { default { dd $_ } } # use default to disarm the exception 11:38
camelia rakudo-moar f0e6ae: OUTPUT«X::Numeric::DivideByZero.new(using => "div", numerator => 24)␤»
lizmat m: use Test; die; CATCH { default { dd $_ } }; done-testing
camelia rakudo-moar f0e6ae: OUTPUT«X::AdHoc.new(payload => "Died")␤»
lizmat m: use Test; ok "foo"; die; CATCH { default { dd $_ } }; ok "bar"; done-testing 11:39
camelia rakudo-moar f0e6ae: OUTPUT«ok 1 - ␤X::AdHoc.new(payload => "Died")␤»
lizmat hmmm
m: use Test; ok "foo"; die; CATCH { default { dd $_ } }; ok "bar"; END done-testing
camelia rakudo-moar f0e6ae: OUTPUT«ok 1 - ␤X::AdHoc.new(payload => "Died")␤1..1␤»
melezhik was able to reproduce lizmat: ?
lizmat melezhik: I guess using END is best then :-)
melezhik yes, but this one is obscure , don't you think? 11:40
11:42 MilkmanDan left
jnthn Having a CATCH block in the mainline of your test file is sure obscure :) 11:42
melezhik yeah, tests need to get improved , for sure, I just trying to say that I expect that done-testing works at the end of my code, without any additional magic with END { ... } 11:44
lizmat m: use Test; ok "foo"; die; CATCH { .resume }; ok "bar"; done-testing
camelia rakudo-moar f0e6ae: OUTPUT«ok 1 - ␤ok 2 - ␤1..2␤»
lizmat I think the misunderstanding was about what CATCH does
the CATCH doesn't prevent the exception to be thrown per se
melezhik why you focus on CATCH? I just found that done-testing does not work for some cases 11:45
lizmat melezhik: what is the case it doesn't work ?
melezhik ok, let me write an explanatory code
I thought you already did ... 11:46
11:46 itaipu_ joined
Xliff I've tracked weird behavior in a custom sub EXPORT I am writing. 11:46
If I send anything but an empty map, I get the following error: "Cannot find method 'package_at_key': no method cache and no .^find_method
Maybe related to rt.perl.org/Public/Bug/Display.html?id=128010 11:48
11:49 itaipu left, brrt left 11:50 girafe left 11:54 mcmillhj joined 11:55 vendethiel joined, smls left
jnthn melezhik: After a CATCH has handled the exception, the block enclosing the CATCH is left (which in your case is the mainline of the program). done-testing isn't something magical, it's just a normal subroutine call (like all the test subs). So you exit the mainline of the program before there's any chance to reach done-testing and run it. 11:55
melezhik gist.github.com/melezhik/5a3b0b77e...ad60b0a542 11:57
please take a look at this
11:57 rindolf left
lizmat melezhik: after the CATCH block is executed, execution stops: it never reaches the done-testing in that case 11:58
dalek c: 37999cd | MasterDuke17++ | doc/Language/glossary.pod6:
Fix typo in 'Colon Pair' indexing
11:59 mcmillhj left, MorayJ left
melezhik "after the CATCH block is executed, execution stops: it never reaches the done-testing in that case" does it stated at docs.perl6.org/language/exceptions ? 12:00
12:00 rindolf joined 12:01 itaipu_ left, itaipu joined
masak melezhik: yes. 12:02
melezhik: from that page: "Exceptions interrupt control flow and divert it away from the statement following the statement that threw it."
lizmat docs.perl6.org/language/exceptions...Exceptions
masak (in fact, the sentence is not completely correct. interruption happens at the resolution of sequence points, not statements.) 12:03
melezhik masak: it's about exceptions , but not that clear (at least I can't this that everything going _after_ CATCH blocks will be never executed ... ) 12:04
12:04 domidumont left
timotimo not quite 12:05
masak melezhik: "Exceptions interrupt control flow"
12:05 domidumont joined
masak melezhik: it's right there in those words 12:05
timotimo m: { die "oh no!"; say "not executed"; CATCH { default { } }; say "also not executed?" }; say "end of the thing"
camelia rakudo-moar f0e6ae: OUTPUT«end of the thing␤»
timotimo ah.
jnthn melezhik: It's not about "not after the CATCH block", it's about "not after the point of the throw"
masak yes, it's not about "after the CATCH"... what jnthn++ said 12:06
melezhik masak: and? ... I know what exceptions are , please reread my lines about catch blocks
masak melezhik: plonk
jnthn But yes, I agree that page could be more clear.
12:06 Wiertek left
jnthn melezhik: If you expect control to reach your done-testing statement, your understanding of exceptions has some way to go :) 12:06
The easiest way to deal with this is just to shove the throwing statement and your CATCH inside of a try { ... } 12:07
lunch time &
melezhik guys forget about done-testing, I am just tying to say that according to exceptions docs it's not clear that code goes after CATCH {} will be never executed
12:08 ItayAlmog joined
melezhik it is not about I can't have my tests done in right way, it's about ,,, well more about documentation, imho 12:08
moritz melezhik: you're welcome to open an issue on the perl6/docs repo, or even contribute the docs yourself 12:09
perl6/doc that is
on github
melezhik yes, sure , I just want to be sure that I do not want judge anybody I just want to be sure, that other get my thoughts ...
12:11 domidumont left
melezhik now I know how CATCH works in perl6, thanks for explanations, I just tried to say this behavior is not clear after my reading perl6 exceptions docs, that is it. 12:11
won't tell more on this topic :)) 12:12
mst right, but we're saying "we don't know how to make it clearer if you don't help, so please help, we'd love that"
12:12 domidumont joined
melezhik mst: sure 12:13
moritz melezhik: don't stop with that topic. Please use your newly gained understanding to improve the docs.
mst melezhik++ # I look forward to the patch
melezhik moritz: , mst: will think about perl6 doc contribution
12:13 mcmillhj joined
DrForr It's just a Git PR away :) 12:14
melezhik DrForr: sure ... :) 12:15
12:15 bjz_ left
DrForr Fork, checkout a new doc branch, hack hack, commit, PR. *boom*. 12:15
timotimo good boom or bad boom? :) 12:16
jast only one way to find out
DrForr Boom today, boom tomorrow. There's *always* a boom tomorrow. 12:17
timotimo hm. when's next boomday?
fish: ddate: command not found... - grrrrrr
DrForr Tomorrow, of course. (Good grief, have you all forgotten Babylon 5?...) 12:18
12:18 MasterDuke joined
arnsholt <3 Babylon 5 12:18
melezhik btw, if perl6 CATCH {} has something similar like "ensure" block like in ruby, where someone could put a code which will be executed _unconditionally_, right after all the "when" blocks executed ... ?
12:19 vendethiel left
timotimo melezhik: yeah, LEAVE should do that 12:19
melezhik ahh, good
timotimo who's the boom king? 12:20
arnsholt Well, masak used to be king of the bug reports, so maybe he is? =)
timotimo no, no, no. i'm the boom king!
anyway, AFK for a bit 12:21
DrForr . o ( Say hello to my *BOOM* stick )
timotimo (if you don't know what i was referencing, it's "She's So Hot Boom" by Flight of the Conchords, and it comes highly recommended - especially with the video that goes with it)
12:22 garu joined
dalek line-Perl5/raccoon: e746858 | niner++ | / (3 files):
Experimental support for experimental raccoon build system
12:29 CIAvash left
garu hi everyone! not sure if it's a bug, a not-implemented-yet or a by-design thing, but "my regex fú { \. }; say 'w00t' if 'a.b' ~~ / <fú> /;" is borking with "Error encoding ASCII string: could not encode codepoint 250" 12:29
if I change fú with fu it works, of course 12:30
(tested against moar-nom aa5e494. running rakudobrew build moar now) 12:32
12:32 bjz joined 12:34 sufrostico joined
MasterDuke bisect: my regex fú { \. }; say 'w00t' if 'a.b' ~~ / <fú> / 12:35
bisectable6 MasterDuke, On both starting points (good=2015.12 bad=ec9e814) the exit code is 1 and the output is identical as well
MasterDuke, Output on both points: ===SORRY!===␤Error encoding ASCII string: could not encode codepoint 250
12:35 n1lp7r joined
masak timotimo: thanks for the "boom" reference. I enjoyed watching www.youtube.com/watch?v=a-sawvtJxDI :) 12:36
have heard the song before but not seen the video
garu p6: my regex fú { \. }; say 'w00t' if 'a.b' ~~ / <fú> /;
camelia rakudo-moar f0e6ae: OUTPUT«===SORRY!===␤Error encoding ASCII string: could not encode codepoint 250␤»
garu I guess it fails on HEAD as well :/ 12:37
moritz that's a bug :(
garu moritz: excelent! is it easy enough that someone who's never had any contact with the codebase *cough*me*cough* can take a stab a it? Or will I be doing more damage than good? :D 12:38
moritz garu: I don't know 12:39
garu: it's not immediately obvious where the bug comes from, so I can't tell
garu then I guess the answer is no. no worries, I'm happy I could help spotting it anyway :) 12:40
masak what's codepoint 250? is there any non-ASCII in that camelia eval? 12:41
12:42 ItayAlmog left
moritz masak: regex fú 12:43
the ú isn't ASCII :-)
.u ú
masak geez, I gotta set up this term correctly... 12:48
timotimo masak: i more thought of www.youtube.com/watch?v=JT5AQIlmM0I when i mentioned the video that goes with it :) 12:50
it has a bit of the story from the series at the beginning, but it's super funny, too.
other favourites include "i'm not crying", "you don't have to be a prostitute", "carol brown", "frodo don't wear the ring", "mother uckers", and so many more :) 12:54
12:54 neuron joined 12:55 tonar joined
tonar bisect: :१x 12:56
bisectable6 tonar, For the given starting points (good=2015.12 bad=ec9e814), exit code on a ‘good’ revision is 1 (which is bad), bisecting with inverted logic
tonar, bisect log: gist.github.com/20bd24e49edd56c973...da0224876d
tonar, (2016-06-12) github.com/rakudo/rakudo/commit/054a54a
tonar committable6: 2016.04 :१x 12:57
committable6 tonar, ¦«2016.04»: ===SORRY!===␤Error encoding ASCII string: could not encode codepoint 2407 «exit code = 1»
tonar garu: ^ the fix for your thing is likely the same. (see commit from bisectable)
12:57 darutoko left
tonar s/same/similar/; 12:57
And the docs for nqp ops are here: github.com/perl6/nqp/blob/master/d...s.markdown 12:59
You don't need the radix one, but maybe something or other :) 13:00
13:00 tonar left
timotimo so what's RT #128306 exactly? 13:02
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128306
timotimo thank you, synopsebot6
oh, does that mean the fix got b0rked in the mean time? then why did bisectable show that commit and not the one that b0rked it recently(ish)? 13:03
13:05 eliasr joined 13:06 Sgeo left 13:07 tonar joined
melezhik github.com/perl6/doc/pull/876 - CATCH blocks and the following code 13:07
my vision of it
tonar timotimo: the 128306 is a resolved ticket. It had the same error as garu's issue, and thus its fix may be at least helpful to garu's desire to attempt to fix the bug. Nothing got broken after it got fixed. I've used commitable robot to execute code on a pre-fix commit. 13:08
DrForr melezhik: Yay! 13:09
tonar melezhik: that's not accurate. The CATCH block can go anywhere in the block. It's the code after the thrown *exception* that will never get executed. 13:10
melezhik tonar: I see 13:11
tonar melezhik: you can put that CATCH and LEAVE right at the start of the block and effect would be nearly* the same (*the only difference is when they are at the very end, which affects block's return value)
melezhik "The CATCH block can go anywhere in the block" , what do you mean by <block> ? A some other block, like try { ... } ? 13:12
moritz the block outside of CATCH 13:13
melezhik ок, moritz: makes a sense now
tonar m: CATCH { default { 'sploops'.say } }; die "zomg!"; say 'we are OK' 13:14
camelia rakudo-moar a45202: OUTPUT«sploops␤»
melezhik I will probably adjust my patch soon
tonar m: CATCH { default { 'sploops'.say } }; say 'this still gets printed because it is before the exception thrown by die that follows'; die "zomg!"; say 'we are OK'
camelia rakudo-moar a45202: OUTPUT«this still gets printed because it is before the exception thrown by die that follows␤sploops␤»
timotimo tonar: you know a lot about stuff, but i never read your name before ... are you The Z? :P 13:15
tonar m: say 'this still gets printed because it is before the exception thrown by die that follows'; die "zomg!"; say 'we are OK'; CATCH { default { 'sploops'.say } };
camelia rakudo-moar a45202: OUTPUT«this still gets printed because it is before the exception thrown by die that follows␤sploops␤»
melezhik tonar: make a sense for me, will update my MR soon
tonar timotimo: Tthe Z? Never heard of her.
13:15 skids joined
tonar :) 13:15
13:17 itaipu left 13:19 cdg joined, ufobat left 13:20 MilkmanDan joined 13:21 tonar left 13:23 girafe joined 13:26 itaipu joined 13:29 wamba left
timotimo huh, this "Girls Who Code DSM" account apparently has only a single tweet and it's about perl6 ... strange 13:34
mst that's really weird, the DSM's only at version 5 13:35
13:36 MilkmanDan left
timotimo what does DSM stand for in your context? 13:37
13:38 MilkmanDan joined
mst enwp.org/DSM_V 13:39
timotimo oh, that thing 13:40
as long as it doesn't classify perl 6 as a disorder ...
13:42 neuron left 13:44 darutoko joined 13:46 jonadab joined
ugexe its spectrum now 13:51
timotimo Perl Spectrum Disorder?
13:51 mspo joined
timotimo could be either 5, or 6, or in some older patients, 4? :) 13:51
13:56 MilkmanDan left 13:58 zacts left
melezhik tonar: have just updated my MR - github.com/perl6/doc/pull/876/files 14:00
14:02 gfldex joined 14:06 MilkmanDan joined
timotimo melezhik: "upper block" instead of "outer block"? 14:06
melezhik yeah, outer is better name for this 14:08
14:08 Wiertek joined, rindolf left 14:10 tokomer joined 14:13 MilkmanDan left 14:14 rindolf joined, bobv joined 14:15 darutoko left, MilkmanDan joined 14:19 woolfy left 14:23 woolfy joined 14:26 Guest43351 is now known as ponbiki
gfldex m: enum Options(<Foo Bar>); sub f(+@a where @a.all ~~ Options){ dd @a }; f(Foo, Bar); 14:27
camelia rakudo-moar a45202: OUTPUT«[Options::Foo, Options::Bar]␤»
melezhik s/upper/outer/
lizmat melezhik: looks good to me, but I'm also a bit distracted :-) 14:30
14:32 itaipu left
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); sub f(+@a where @a.all ~~ (Options|Options2)){ dd @a }; f(Foo, Buzz); 14:33
camelia rakudo-moar a45202: OUTPUT«Constraint type check failed for parameter '@a'␤ in sub f at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); sub f(+@a where @a.all ~~ (Options,Options2).any){ dd @a }; f(Foo, Buzz);
camelia rakudo-moar a45202: OUTPUT«Constraint type check failed for parameter '@a'␤ in sub f at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
gfldex i did expect that to work
melezhik lizmat: that's ok, so do I ;-) , at my regular job ... 14:34
14:34 itaipu joined
gfldex i do not expect that to work anymore :) 14:36
m: enum Options(<Foo Bar>); enum Options2(<Buzz>); sub f(+@a where @a.any ~~ (Options,Options2).any){ dd @a }; f(Foo, Buzz);
camelia rakudo-moar a45202: OUTPUT«[Options::Foo, Options2::Buzz]␤»
gfldex that works but is wrong 14:37
how do I say "all members of LHS must be member of either of the members of RHS"? 14:38
14:41 khw joined
lizmat all(@lhs) (elem) any(@rhs) "? 14:44
14:45 rindolf left
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); sub f(+@a where @a.all (elem) (Options,Options2).any){ dd @a }; f(Foo, Buzz); 14:45
camelia rakudo-moar a45202: OUTPUT«Constraint type check failed for parameter '@a'␤ in sub f at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
14:46 AlexDaniel joined
lizmat gfldex: does it work outside of a where clause ? 14:46
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say (Foo, Buzz).all (elem) any(Options,Options2) 14:47
camelia rakudo-moar a45202: OUTPUT«all(any(False, False), any(False, False))␤»
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say (Foo, Buzz) (elem) any(Options,Options2)
camelia rakudo-moar a45202: OUTPUT«any(False, False)␤»
14:48 rindolf joined 14:51 zacts joined
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say all(Foo, Buzz) (elem) (Foo, Bar, Buzz) 14:52
camelia rakudo-moar a45202: OUTPUT«all(True, True)␤»
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say all(Foo, Buzz, 5) (elem) (Foo, Bar, Buzz)
camelia rakudo-moar a45202: OUTPUT«all(True, True, False)␤»
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say so all(Foo, Buzz, 5) (elem) (Foo, Bar, Buzz)
camelia rakudo-moar a45202: OUTPUT«False␤»
14:53 pmurias joined
pmurias nine: what's racoon? 14:53
lizmat pmurias: it's basically a module installer that can be included in the distribution itself 14:54
use case: install Inline::Perl5 without needing panda
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say Options (|) Options2; 14:55
camelia rakudo-moar a45202: OUTPUT«set((Options), (Options2))␤»
gfldex m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say Options::.keys (|) Options2::.keys;
camelia rakudo-moar a45202: OUTPUT«set(Foo, Bar, Buzz)␤»
gfldex i would expect (|) on enums to return a union of enum keys (objects, not Str) 14:56
m: enum Options(<Foo Bar>); enum Options2(<Buzz>); say Options::.values (|) Options2::.values; 15:00
camelia rakudo-moar a45202: OUTPUT«set(Foo, Buzz, Bar)␤»
gfldex .values actually
15:03 Actualeyes joined 15:07 pyrimidine left
[Coke] .seen supernovus 15:07
yoleaux I saw supernovus 22 Apr 2016 23:27Z in #perl6: <supernovus> Well, I'm going to have to run. Have a great day/night everyone. I hope to fix up some of my long neglected libraries at some point when I'm not completely overloaded with work! :-)
15:08 mempko joined 15:13 AlexDaniel left 15:15 darutoko joined
dalek c: 66b49f8 | MasterDuke17++ | doc/Language/terms.pod6:
Add :123abc form to Pair description
nine pmurias: a raccoon is like a panda but smaller :) It's meant as a bootstrapping and packaging tool. Cases where you don't need all the features that panda or zef provide. Most notably installation of dependencies. 15:19
b2gills It looks like the DSM in "Girls Who Code DSM" is short for Des Moines 15:22
15:26 khw left 15:31 fridim___ left 15:37 pyrimidine joined 15:38 tokomer left 15:39 mempko left
[Coke] is http::easy not async? 15:39
TimToady gfldex: please rakudobug that 15:40
15:41 lostinfog joined
TimToady m: enum Options <Foo Bar>; sub f(Foo $foo?){}; f(Foo); 15:43