»ö« 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.
timotimo just saw The Prestige 00:00
Xliff Is there a way to manually install File::Which without panda?
Xliff headdesks and installs zef 00:01
00:03 arc__ joined 00:04 arc__ is now known as arcetera, arcetera left, arcetera joined
Xliff ===> Installing: File::Which 00:05
===> Install [FAIL] for File::Which: ===SORRY!===
Could not find File::Which::Unix
*sigh*
Is there a circular reference error here? Why would installing File::Which fail because it can't find File::Which::Unix? 00:06
00:06 lizmat left 00:07 perlawhirl joined
timotimo good movie, btw 00:09
00:11 yqt left 00:13 spider-mario left, cognominal_ joined
Xliff timotimo, If it's the movie I am thinking of... then yes, it was. 00:14
I got Christian Bale right, but where was I getting Edward Norton, from? 00:15
ooo.... The Illusionist.
00:18 ggoebel16 joined
timotimo christian bale 100% replaced tom cruise for me 00:19
like, the tom cruise before he went insane
00:19 john51 joined
Xliff timotimo, LOL - I kinda get that. 00:20
00:21 BenGoldberg joined
timotimo another of those actors triggered 100% a "I KNOW THAT FACE!" reaction, but it turns out he's just a common background actor or something 00:23
he also looks like kevin spacey to me 00:24
but not to others
00:24 skids joined
timotimo www.imdb.com/name/nm0382503/?ref_=ttfc_fc_cl_t34 - edward hibbert 00:25
ugexe Xliff: that looks like an nqp error, almost like precompilation isnt finding it where it wants to 00:26
timotimo didn't i recently see in some module that a top level module used all inner modules, which also used that top level module, too? 00:27
i forgot what that was
ugexe using stock rakudobrew install locations im able to install File::Which anyway
00:29 jack_rabbit left, jack_rabbit joined 00:34 wamba left 00:44 perlawhirl left 00:50 perlawhirl joined 01:01 perlawhirl left 01:03 labster left 01:14 perlawhirl joined, lucasb joined 01:15 ZoffixWin left 01:17 Ben_Goldberg joined
lucasb m: sub f(| ($)) {}; f(Mu) 01:18
camelia rakudo-moar a87fb4: OUTPUT«cannot stringify this␤ in sub f at /tmp/WbwYLqgh1d line 1␤ in block <unit> at /tmp/WbwYLqgh1d line 1␤␤»
lucasb m: sub f($) {}; f(Mu)
camelia rakudo-moar a87fb4: OUTPUT«Type check failed in binding <anon>; expected Any but got Mu (Mu)␤ in sub f at /tmp/dVFlMt5HC1 line 1␤ in block <unit> at /tmp/dVFlMt5HC1 line 1␤␤»
lucasb I thought the error message could be the same for both cases, but somehow the interpreter wanted stringify something in the first case. 01:19
01:19 BenGoldberg left
geekosaur that "cannot stringify this" is certainly LTA 01:19
and makes me wonder if it blew up while trying to create the actual error or something 01:20
01:21 jolts left
lucasb geekosaur: ah, right. makes sense if it died trying to create a error message... 01:22
timotimo don't we actually have a handler for when creating the errro message fails?
lucasb might be inside some subsignature handling code. I dunno where those are.
01:23 Ben_Goldberg is now known as BenGoldberg 01:24 telex left 01:26 ZoffixWin joined, ZoffixWin left, ZoffixWin joined, labster joined 01:27 lucasb left, Ben_Goldberg joined 01:29 BenGoldberg left, telex joined 01:43 dvinciguerra joined 01:44 infina joined 01:48 telex left 01:49 infina left, dvinciguerra left 01:50 telex joined, leont left 01:51 znpy left 01:53 tphilipp left 01:55 infina joined 02:02 BenGoldberg_ joined 02:04 Ben_Goldberg left 02:07 BenGoldberg_ left 02:08 BenGoldberg_ joined 02:12 Ben_Goldberg joined 02:13 BenGoldberg_ left
Xliff ugexe, is there a way to install File::Which manually -- without panda or zef? 02:17
ugexe Xliff: it installs with zef for me. your error seems like it might be from rakudo itself, but im not sure 02:18
you were saying something earlier about installing into different locations?
Xliff Yeah. I need to install into a non /root location since gptrixie isn't working when logged in as root. 02:19
gptrixie runs fine if I run as a non-root user, which I find odd.
However, starting fresh with a new rakudo installation I have run into errors that seem similar to my first experiences. 02:20
ugexe from the looks of the output you posted i think the source was installed, the precompilation failed after
precompilation gets put into ~/.perl6
Xliff O shit 02:21
02:21 kid511 left
Xliff Sho 'nuff. 02:21
How can I make precompilation go to another world-readable dir?
Does this mean I have to compile rakudo with a non-root user? 02:22
ugexe precompilation has to be writable :(
Xliff How often does that need to happen? 02:23
I could make the rakudobrew/ directory group-writable for my non-root user. Wouldn't that work?
ugexe i'm not sure if you can change the precomp directory or not. but it should only happen once (unless something happens to invalidate it) 02:24
Xliff "rakudobrew build moar" completes successfully. It's only the module installations that fail.
Yeah, but that means that the user that compiles rakudo is the only one that can use it.
(generally speaking) 02:25
ugexe no, because precompilation will happen automatically if you use something and its not already done. so the source can be in such a global location
Xliff "can"? 02:26
If precompilation directory needs to be writable then can't each user have their own ~/.perl6?
ugexe yes, and they do 02:27
this is stuff still being worked on though
Xliff But the issue now is: "How can first-time users of perl6 get the nqp pre-compiles?" 02:28
I would say that if the rakudobrew directory is in a world-readable place, then a quiet copy of the existing precomputables should be done.
However you are saying that those only exist in the ~/.perl6 of the user that originally compiled rakudo. 02:29
Or am I missing something (which is likely)?
Don't get me wrong, I know things are in a state of flux. I am just trying to hack together a local soluition.
ugexe ~/.perl6 is not the rakudo's initial user, its every user
most of what you just said is what happens 02:30
Xliff uuuhhhh.... OK. But when you use the ~ that kinda implies the opposite. Depends on the meaining of ~.
To simplify: I only need perl6 for two users: root and my non-root user. 02:31
ugexe if you do `perl6 -e 'use File::Which;'` and you were not the user who installed rakudo, then it will precompile to ~/.perl6 if it finds the source installed. It also does this if you are the user that installed rakudo
teatime heh 02:32
Xliff The trick there is getting File::Which installed... which is where I am having problems.
perl6 -Ilib -e 'use File::Which' where the cwd is the File::Which source code? 02:33
ugexe zef -v --installed list # what does this say
dalek c: 0ec522f | (Wenzel P. P. Peppmeyer)++ | doc/Language/exceptions.pod:
indexfy try and CATCH, fixed for #435
02:35
Xliff rebuilding zef
ugexe no, where the cwd is anything but the source
Xliff ugexe, now I'm conf00sled. 0_o 02:36
ugexe try to reinstall File::Which before that command too
im trying to see if the source is actually installed and the failure is in precompilation or not
Xliff "zef install File::Which" -- b0rked. I will pastebin. One sec. 02:38
pastebin.com/QDdTWJuK 02:39
Note that JSON::Fast installed fine.
ugexe zef -v --installed list # does this list File::Which? 02:40
Xliff Yes
02:41 travis-ci joined
travis-ci Doc build errored. Wenzel P. P. Peppmeyer 'indexfy try and CATCH, fixed for #435' 02:41
travis-ci.org/perl6/doc/builds/120222730 github.com/perl6/doc/compare/f711a...c522f09b55
02:41 travis-ci left
ugexe does `perl6 -Ixxx -e "use File::Which;"` work? 02:42
use a literal xxx
Xliff Pastebin updated.
Nol. 02:43
*ggggggrrrrrrr*
02:43 noganex joined
Xliff No. 02:43
root@infinity:~# perl6 -Ixxx -e "use File::Which;"
===SORRY!===
Could not find File::Which::Unix in:
The files are never copied because the File::Which install process b0rks when it can't find File::Which::UNIX 02:44
So seems like the error might be in File::Which
ugexe no, the files get put into place before that happens 02:45
Xliff Please note, this HAS happened to me, before.
My first day on perl6, I got this error.
02:46 noganex_ left
ugexe its failing precompilation. zef crawls the directories and meta files to get that information 02:47
Xliff Yikes!
This calls for relaxment. 02:48
Xliff is now playing: METHOD ONE/SEBA - Dawn Patrol
ugexe but it almost certainly has to do with paths
Xliff Yeah. I am trying to install in /usr/local/rakudobrew
Because I need perl6 access for a non-root user which means I can't do this in /root. 02:49
Xliff headdesks.
So let's try the non-root user....
ugexe hell the errors 2nd "could not find" directory is exactly where zef found it
... i wonder if its trying to precompile to /root/.perl6 because its first 02:50
/home/nickl/.perl6/2016.02-106-g3ac34a4 # (mine) seems like its missing the compiler-id directory for some reason 02:52
Xliff I'm recompiling rakudo under my normal user's homedir.
I have so many copies of rakudo on this VM. 02:53
rakudo == Horny Bunny
ugexe remember, 56th time is the charm 02:54
Xliff heh
No.
666th time is the real charm.
I'm not there yet.... thank god.
s/g/G/
teatime rakudo pre-compiles to the first lib path, yes 02:55
someone told me this the other day when I was seeing something unexpected
perl6 -Ixxx will make it precompile to xxx 02:56
Xliff recompiling zef
non-root user now cannot find 'perl6' 03:02
Xliff pulls hair. 03:03
ugexe did you add rakudobrew/bin to PATH? 03:06
Xliff Yes 03:07
"rakudobrew build moar" installed panda./
Now "zef" doesn't work.
===> Install [FAIL] for zef:auth('github:ugexe'): zef:ver<*>:auth<github:ugexe>:api<> already installed 03:08
ugexe rakudobrew rehash ?
Xliff cbwood@infinity:~$ zef install File::Which 03:09
/usr/bin/env: ‘perl6’: No such file or directory
But I can do "perl6" and get the interpreter.
cbwood@infinity:~$ perl6 -v 03:10
This is Rakudo version 2016.03-72-ga87fb43 built on MoarVM version 2016.03-84-g4afd7b6
implementing Perl 6.c.
ugexe looks like it just build over the old modules, since it said zef was already installed
teatime /usr/bin/env: ‘perl6’: No such file or directory
Xliff www.google.com/search?q=scream+emo...Tcvxr7M%3A
teatime wth would this print w/ smartquotes
Xliff ugexe: How can I blow away zef without doing the same to ~/.rakudobrew 03:11
ugexe look at the output of --installed list from earlier. delete the path (ends with /site) it lists Zef under
Xliff O. 03:12
"rakudobrew rehash" worked.
ugexe that points the links to the updated locations
Xliff Ooh! Looks promising, now. 03:13
Yes, but now I must worship zef because panda and zef fight.
ugexe you can install panda with zef without having zef installed (but from its source directory) 03:14
Xliff The bee's knees!!! -> "zef install Gumbo DateTime::Math DateTime::Parse DateTime::Format"
Next will be Readline. 03:15
03:16 kaare_ joined
Xliff And we're done. Thanks ugexe! It's working now. 03:20
Now I can finally get on with what I WANTED to do! o_O
ugexe 56th time is always the charm
Xliff Dude, we are way beyond the 5 6th. 03:21
More like the 6 7th.
But I don't care as long as the end result is positive.
ugexe, thank you for that!!! 03:22
03:23 Ben_Goldberg is now known as BenGoldberg 03:33 geekosaur left 03:34 geekosaur joined
Xliff Aaand... gptrixie works!! 03:40
Now I have to figure out what to do with the output... :/
But this is an awesome stopping point. 03:41
*whew*
03:47 cpage_ joined 04:11 molaf joined 04:16 khw left 04:17 rindolf joined 04:22 BenGoldberg left 04:24 cognominal_ left, cognominal_ joined 04:32 mr-foobar left, mr-fooba_ joined 04:43 Cabanossi left 04:44 Cabanossi joined 04:52 perlawhirl left 05:02 perlawhirl joined 05:13 foo41 joined
kaare_ What does "Cannot invoke object with invocation handler in this context" mean? 05:14
pastebin.com/nZzJic6t
05:15 foo41 left
kaare_ Happens when I try to call he native sub. Is native and multi a bad pair? 05:15
05:17 perlawhirl left 05:20 sortiz joined
sortiz \o #perl6 05:21
jdv79 kaare_: perl6 seems asleep
Xliff \o sortix 05:22
jdv79 sortiz: sup?
Xliff s/x/z/
dalek Iish: 09835a3 | (Salvador Ortiz)++ | / (2 files):
Remove Data:Dump dependency
Xliff kaare_, I would try to remove the multi since one is native and the other is not. 05:23
Just to see if your hypothesis is correct.
Please note, this is a diagnostic suggestion and more of a Wild Assed Guess.
sortiz jdv79, ?? 05:25
jdv79 sortiz: you "said hi" no? that's all i really did in response. 05:26
sortiz :) 05:27
jdv79 is 1/2 alseep and 1/2 drinked
kaare_ Xliff: I tried that already, and it works. I just wonder if it's supposed to be like this, and perhaps to get an explanation
MadcapJake Never seen this error before: «Cannot find method 'mixin_attribute' in any mixin at gen/moar/m-Metamodel.nqp line 1286»
kaare_ jdv79: Well, it's early morning where most perl6'ers are located, I guess
Perl 6'ers? 6 Perl'ers? 05:28
MadcapJake that error popped up from an interpolation inside a regex
quite strange
I think we should go with Sixians or Sixites :) 05:29
jdv79 i guess EU-ish is where the majority are these days
kaare_ Sixians sounds like a sect og Alien believers ;-)
of
MadcapJake I hate it when errors seem to resolve after a restart :P makes you wonder if it'll pop up again someday
kaare_: excellent :) 05:30
sortiz latest panda is broken! /o\
MadcapJake oi, thank goodness I've avoided updating
kaare_ "I believe in the Gods from the Planet Perl Six!"
MadcapJake is trying to finish this darn issue submitter X_X
Perl 6 does kind of sound like "the sixth planet in the Perl system" :P 05:31
Xliff sortiz, that is Shell::Command missing a dependency on File::Which.
For now, use zef.
teatime MadcapJake: lol, I love it
Xliff MadcapJake, LOL! 6th planet from the sun Perl. 05:32
MadcapJake++
teatime Captain's log, stardate 27454.3. We are en route to Perl 6, where we will be picking up Randal Schwartz, federation ambassador to the Perl system …
Xliff tried to place it in a Star Trek context but remembers that Seti Alpha V was blown up.
sortiz Xliff, Yes, but most travis-ci testing depends on panda
Xliff teatime, ROFLMAO
MadcapJake "In the system that's captured the hearts of Astronomers everywhere, the sixth planet has been found to contain life-sustaining atmosphere and perhaps even flora and fauna. The team to discover it have dubbed it Camelia and who knows, maybe humanity will step foot there someday" :)
teatime: xD 05:33
Xliff sortiz....
¯_(ツ)_/¯
jdv79 aare_: perl6 seems asleep 05:34
MadcapJake If Perl 6 takes off, there totally needs to be a spoof on that ala those Java/Scala videos
jdv79 oops
teatime Xliff: the question is, did you hear Patrick Stewart in your head as you read that 05:35
jdv79 Perl6 better f'ing take off! i'm tired of p5.
MadcapJake www.youtube.com/watch?v=RnqAXuLZlaE
kaare_ I'm more tired of Javascript. So pmurias better do his job right!!
05:37 geekosaur left
kaare_ Btw, how come there's no .Frac method for Num or Rat? 05:37
05:37 geekosaur joined
MadcapJake kaare_: Frac? 05:37
kaare_ Just giving the fractional part as an Int
Xliff teatime, No comment (yes, of course I did... you idjiot!) 05:38
lucs m: "a 3 b 5 a 4 x 7" ~~ m:g/ a \s+ (.*?) <[a..z]> /; say "<$_>" for $/.list; # Why are 'b' and 'x' captured? 05:39
camelia rakudo-moar a87fb4: OUTPUT«<a 3 b>␤<a 4 x>␤»
jdv79 l6 better f'ing take off! i'm tired of p5. 05:40
sorry. sloppy on the keyboard. 05:41
kaare_ hates l6 05:42
jdv79 :)
lucs Meh, Why is the 'a' captured too, come to think of it (I'm totally misunderstanding this, and will promptly go to bed and think about it tomorrow). 05:44
kaare_ lucs: - and have bad dreams about it ... 05:45
lucs Nah, s'aright :)
sortiz kaare_, .Frac for Num and Rat is spelled .Int ;-) 05:50
lucs m: "a 3 b 5 a 4 x 7" ~~ m:g/ a \s+ <( .*? )> <[a..z]> /; say "<$_>" for $/.list; # What I want. Yes, I will sleep better :)
camelia rakudo-moar a87fb4: OUTPUT«<3 >␤<4 >␤»
kaare_ sortiz: I want the fractional part as well as the int part. 05:55
my $a = 1.2; my @b = $a.magic; (@b = 1, 2) 05:57
lucs kaare_: Seems to be missing something. What if you have 1.20, or 1.02? 05:59
sortiz m: $a = 1.2; ($a.truncate, $a-$a.Int).say; # Some like this kaare_? 06:01
camelia rakudo-moar a87fb4: OUTPUT«5===SORRY!5=== Error while compiling /tmp/q6WcMLXoT9␤Variable '$a' is not declared␤at /tmp/q6WcMLXoT9:1␤------> 3<BOL>7⏏5$a = 1.2; ($a.truncate, $a-$a.Int).say; ␤»
sortiz m: my $a = 1.2; ($a.truncate, $a-$a.Int).say; # Some like this kaare_?
camelia rakudo-moar a87fb4: OUTPUT«(1 0.2)␤»
kaare_ sortiz: , and then in one operation :-) 06:02
lucs: You're right. Can't get the fraction as an int.
sortiz the fraction isn't an Int by definition :-) 06:03
kaare_ No, I'm sorta referring to the common my $int = 1.2; my @a = split '.', $int; or sth like that 06:05
I just wonder why there's no .frac. I know it's easy to do $a-$a.Int, but there are droves of ways to get the int part in the way you like it. 06:07
06:09 domidumont joined
MadcapJake any RT/rakudobug-proficient folks on here tonight? 06:09
You include [perl #115726] in the subject of an email to make it a reply, right? 06:10
m: my Rat $i = 1.2; $i.nude.say # like this kaare_ ? 06:12
camelia rakudo-moar a87fb4: OUTPUT«(6 5)␤»
06:13 domidumont left
sortiz m: my $a = 3.0004 but role { method parts { ($.truncate, self - $.Int) }}; $a.parts.say 06:13
camelia rakudo-moar a87fb4: OUTPUT«(3 0.0004)␤»
06:13 domidumont joined
MadcapJake m: my $i = 1.2; say $i.Str.split('.')».Int 06:14
camelia rakudo-moar a87fb4: OUTPUT«(1 2)␤»
MadcapJake :P
super lazy way, right there! B) 06:15
sortiz m: my $i = 1.0002; say $i.Str.split('.')».Int
camelia rakudo-moar a87fb4: OUTPUT«(1 2)␤»
sortiz :P 06:16
MadcapJake yep therein lies the lazy :)
kaare_ MadcapJake: I wouldn't think I could use that result straight away :-) 06:17
lucs m: pi.Rat.nude.say 06:19
camelia rakudo-moar a87fb4: OUTPUT«(355 113)␤»
MadcapJake m: my $i = 1.002; $i.Str.split('.'); $i[1] = "0.$i[1]"; say $i; 06:20
camelia rakudo-moar a87fb4: OUTPUT«Index out of range. Is: 1, should be in 0..0␤ in block <unit> at /tmp/UZyk1hIlCp line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/UZyk1hIlCp line 1␤␤»
MadcapJake :(
forgot to assign there
m: my $i = 1.002; $i .= Str.split('.'); $i[1] = "0.$i[1]"; say $i;
camelia rakudo-moar a87fb4: OUTPUT«Index out of range. Is: 1, should be in 0..0␤ in block <unit> at /tmp/ODNscN3QqK line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/ODNscN3QqK line 1␤␤»
MadcapJake oh well, terribly improper use of strings anyways xD 06:21
sortiz MadcapJake, about RT, I'm not an expert (in fact I hate it), but I think yes, you only need to include the ticket number in the subject in that format. 06:22
MadcapJake ok, seems to be how I've gotten some replies (I've only got like two tickets that I'm watching) 06:23
MadcapJake is so very close to finishing this project!
cognominal_ Can someone can explaie this github.com/tokuhirom/p6-WebSocket/issues/7 ? Apparently it gets an object of class Code instead of Block, so no .phasers method
kaare_ MadcapJake: What project is that? 06:24
MadcapJake I'm writing a Perl 6 Issue Submitter webapp
kaare_ RT issues?
MadcapJake It gives you an online field that you can use to submit bugs/issues instead of having to use email (sent to [email@hidden.address]
kaare_ Well, obviously 06:25
MadcapJake and it also gives you fuzzy search over all the issues already on RT so that you can turn yours quickly into a reply
and when you submit it will redirect you right to the ticket :)
on top of that, there are extra fields like compiler version, language version, and optional templates if you want some helpful guide for how to write your report 06:26
kaare_ A friendly frontend for failure findings!
MadcapJake awesome alliteration amigo!
kaare_ :-) 06:27
MadcapJake I've still got the templates part to finish but I think it's a good Beta at least (needs some users to test it out) 06:28
kaare_ Do you use a module from the list for templates? 06:30
MadcapJake nope, server does a few libcurl requests for captcha verif., submitting tickets, and getting all tickets (then converting to json and sending back to front-end). Front-end is a regular html file with a jquery controller that communicates and builds out a few bits of html 06:31
kaare_: check it out: github.com/MadcapJake/sixbug 06:32
the Perl 6 is all inside app.p6sgi (it's how Crust wants it) 06:33
(I don't even need that ticket.json anymore)
kaare_ w/ captcha and all :-) 06:35
MadcapJake yep yep! lots of fear that this thing will cause spam but really I don't see how this is any worse than having an open email for sending bugs to. 06:37
teatime 6what did you use for capcha?
MadcapJake reCaptcha
teatime is it all in js in-page?
MadcapJake it's a div and a script src 06:38
kaare_ It looks nice pragmatism focused, real perlish :-) 06:40
MadcapJake thanks! It was recently a bunch of spaghetti and just did a transformation into some lite-OO
there's actually a lot of different Perl 6 features going on in there, the new regex syntax, race, hyper operator, nativecall, Instant/Duration stuff, multi methods, a subset, string and binary slurping, even a cached trait! 06:43
kaare_ steals the subset. Was looking for the exact syntax :-) 06:46
06:54 Woodi joined 06:59 wamba joined 07:05 sue joined 07:43 CIAvash joined 07:58 sue left
nine MadcapJake: we've made excellent experience with honeypot captchas. 0 hassle for users and 0 spam. 08:10
08:12 wamba left 08:13 RabidGravy joined, darutoko joined 08:14 sue joined, cpage_ left
masak read that as "kaare_ steals the sunset", and it felt very poetic 08:17
08:30 sue left
RabidGravy MARNING! 08:36
so my perennial question, what templating thingy are people actually using for HTMLish sort of applications? 09:02
09:04 sue joined, cpage_ joined 09:06 cpage_ left
RabidGravy I suppose it starts with "those that don't need fixing" 09:10
and quite happy to get some file from %?RESOURCES 09:12
RabidGravy decides to go with Template6 for the time being as it appears to fill both those criteria 09:19
09:21 cpage_ joined, cpage_ left 09:23 cpage_ joined 09:30 labster left 09:39 cpage_ left 09:41 salva left 09:47 ocbtec left
vendethiel- ZoffixWin: hey 09:50
cognominal_ m: say $++; say $++; say ++$; say ++$ 10:01
camelia rakudo-moar a87fb4: OUTPUT«0␤0␤1␤1␤»
10:02 buharin joined
cognominal_ not sure how that $ variable works. I have seen it in S17 10:02
timotimo each occurence of it is an anonymous state variable
moritz m: say $++ for ^5
camelia rakudo-moar a87fb4: OUTPUT«0␤1␤2␤3␤4␤»
RabidGravy doc.perl6.org/language/variables#Th...4_Variable 10:03
timotimo m: say %24 10:04
camelia rakudo-moar a87fb4: OUTPUT«␤»
cognominal_ But in my example, there are consecutive instructions and the state is not preserved. What do I miss ? 10:05
timotimo as we said 10:06
each occurence is an anonymous state variable
10:06 wamba joined
cognominal_ ho, "each occurence" 10:06
timotimo yeah
if you want to refer to a state variable, it obviously mustn't be anonymous :)
cognominal_ tricky
my $l := (while $++ < 4 { NEXT { sleep 1 }; Int(now - BEGIN now) }); # also I discover that the value obtained from a loop form a sequence. 10:09
RabidGravy Hmm I see a Template6::Provider::Resource in my immediate future 10:11
timotimo yup
10:12 perlawhirl joined
stmuk_ odd I get HTTP::Server::Async test fails whereas travis claims it works 10:13
RabidGravy I'm going with ordering of the tests problem
stmuk_ compile time errors 10:14
RabidGravy eugh 10:15
anyway just out to buy some trees while the sun shines
stmuk_ maybe it only works with the current rakudo and not 2016.01.1
RabidGravy toodles
stmuk_ s/trees/beers I bet 10:16
sue tsk tsk missing delimiter
10:19 spider-mario joined
sortiz I add a '2016.03' tag to DBIish for R*, removing the dependency of Data::Dump. 10:21
dalek osystem: 031c43b | (Steve Mynott)++ | META.list:
Another meta-package for modules (with tests), fatter than Task::Star and more test orientated. Gitlab hosted
10:27
moritz stmuk_++ # Task::Galaxy 10:43
stmuk_ Task::Universe is just "panda smoke" :) 10:45
moritz 10:47
timotimo what, just all modules? :)
can we get some analysis piece of code that'll figure out if any modules in the star modules list have dependencies outside of what's bundled? 10:48
stmuk_ that's hopefully just parsing the meta files 10:53
timotimo i suppose we could git submodule foreach "sh -c 'git log META*'"
sortiz timotimo, need in perl6 or can be p5? ;-) 10:54
10:55 azawawi joined
azawawi hi 10:55
timotimo: so has the dust settled after the file-which dependency fix? :) 10:56
timotimo i didn't dare look
but i guess people expect me to do 100% of the release :)
azawawi ugexe: ping 10:57
ugexe: zef update # does not work as expected
ugexe: sometimes i need to 'zef nuke SiteDir' for it to pick up latest on windows
timotimo what do you expect it to do, what does it do instead?
azawawi timotimo: panda update... aka zef update 10:58
timotimo ah, so just refresh the module list
azawawi timotimo: update projects or modules .json file that is
stmuk_ well "zef search" (needs exact string) doesn't work like "panda search" :)
azawawi timotimo: and git pull the latest that is
timotimo git pull?
azawawi timotimo: zef seems to cache a lot of meta data... so when i change META.info, it does not pick it up 10:59
timotimo oh, i see 11:01
stmuk_ zef doesn't seem to work with gitlab urls whereas panda does either 11:02
timotimo but it at least doesn't b0rk, right? 11:03
azawawi timotimo: relying on master for a release process does not make sense for the long term. Any plans for tags/release branches? 11:05
timotimo tags/release branches of what exactly?
azawawi for maintaining different versions
timotimo sorry, different versions of what?
azawawi timotimo: something like github.com/azawawi/atom-perl6-edit...s/releases 11:06
moritz in the long term, we should create tarballs from modules and upload them to CPAN
timotimo yes, quite.
azawawi moritz: makes sense given that github can go bankrupt, sold or simply offline 11:07
stmuk_ or alert in browsers as a malware site like sourceforge! 11:08
azawawi stmuk_: yup
timotimo: so what were you releasing btw? Task::Star? 11:09
timotimo no, Rakudo Star 11:10
azawawi i see... cool
timotimo Task::Star ought to be synchronized to what the latest rakudo star ships
stmuk_ timotimo: I can do an accouncement draft in a few hours if you don't want to 11:11
timotimo i think i can try to make it; it seems more annoying to make the modules/ folder clean tbh :)
stmuk_ ok I'll read it anyway :) 11:12
I need to fix the spelling of rakudo in the Mac DMG image as well :/
timotimo whoops :) 11:13
11:14 sue left
azawawi timotimo: you have a Mac? which os version? 11:14
timotimo i don't, no
not even an iphone or an ipod 11:15
azawawi i have an old iphone 5 :)
the only way i can test on Mac OS X so far is through Travis CI
11:16 kid51 joined
azawawi any plans for binary Travis CI ready rakudo binaries? That would increase the speed of testing considerably 11:17
on appveyor, one can ofcourse use rakudo star msi
or maybe update chocolatey.org/packages/rakudostar
choco install rakudostar 11:18
timotimo ah, that's our very own MadcapJake
sortiz Panda issue is now fixed, travis-ci is happy again, I'm rebuilding failed test attempts... 11:20
vendethiel- sortiz++
azawawi off to the Sunny Spring weather outside :)
dalek ar: e59b779 | timotimo++ | modules/DBIish:
grab latest DBIish
11:22
sortiz moritz++ # for panda's PR#304
nine++ # for merge it. 11:23
azawawi azawawi-- # for creating the problem :)
timotimo Linenoise requires Native::Resources, but it's not bundled in star 11:25
sortiz: feel free to build the dependency tool in perl5 so someone can later port it over to perl6 ... or do it in perl6 immediately :)
azawawi im always trying to make sure we have a working perl6 ecosystem on Windows and Mac OS X (if possible). If we can achieve that, we will get more users for sure. Staying with *inux alone will not get you into the enterprise 11:27
at least not in all regions. for example, the middle east is basically windows land 11:28
timotimo i'm glad you're on it :)
azawawi timotimo: not by choice btw :)
dalek ar: bd903c3 | timotimo++ | / (3 files):
Linenoise went from Librarymake to Native::Resources
11:29
ar: 522e1a4 | timotimo++ | modules/ (2 files):
grab latest panda and Shell::Command changes
ar: 1c3a719 | timotimo++ | modules/doc:
get another doc commit
timotimo sorry to hear it :S
there's a tool that lets you query json "documents", right? 11:30
sortiz timotimo, in fedora command line I use jq 11:32
timotimo that's probably what i meant 11:33
though now i'm half-way into a perl6 one-liner :)
nine timotimo: do you happen to have an idea for me on how to debug this? QAST -> MAST failed while compiling op callmethod: Serialization Error: missing static code ref (0x3e56318) for closure '<unit>' sf cuuid (1) from 'perl6' 11:34
azawawi curl? Net::Curl? :)
nine timotimo: <unit> is the mainline of an EVAL that's running while precompiling a module
azawawi moritz: 'is DEPRECATED' should work with all traits right?
nine Though not part of the module's code but during loading of a dependency 11:35
timotimo nine: oh lord :o
teatime timotimo: like XPath-ish things but for JSON and maybe also YAML? I htink there are a few. 11:36
nine I've been trying to fix this for weeks and starting to become somewhat desparate
timotimo wasn't there once a way to have :exists:v on a slice? 11:38
azawawi gist.github.com/azawawi/d16b47492a...082587e69a # "Cannot invoke this object" 11:41
11:43 leont joined 11:45 TEttinger left
timotimo Nativehelpers::Blob is missing from star 11:56
sortiz yep.
timotimo fortunately it recently got fixed :)
11:57 azawawi left
sortiz Need to add a 2016.03 tag to it? 11:57
timotimo, for easy reference? 11:58
11:59 wamba left
ZoffixWin vendethiel-, hey. What's up? 11:59
vendethiel- ZoffixWin: read your talk :D
timotimo nope
well, you can if you want to
you can leave your tags behind
'cus your tags don't check out and if they don't check out then they're not tags of mine 12:00
ZoffixWin cool cool
vendethiel- ZoffixWin: it's pretty nicely done (well, you got to love data-heavy stuff, and I do - even if it can look a bit overwhelming to newcomers) and I have but one advice: add a line before/after each piece of code, to space the code block
because it's really hard to read otherwise for me :P
dalek ar: 7822d78 | timotimo++ | tools/star/analyze_module_dependencies.p6:
add a little tool for analyzing modules/ for missing stuff
12:01
vendethiel- (the talk itself was very good)
teatime ZoffixWin: I've met more and more people who assumed the talk / features described was an april fools. 12:02
ZoffixWin doesn't care much for those trolls 12:03
teatime no, I do mean people who legitimately beleived it was not true.
such unfortunate timing :/
sortiz timotimo, that annotated tag I add to DBIish can be used for checkout. 12:04
ZoffixWin teatime, that'd be one elaborate joke.
12:04 salva joined
ZoffixWin Especially if you've seen the recording of the talk. 12:04
teatime probably they just paged through the slides. 12:05
ZoffixWin Yeah
vendethiel- ZoffixWin: you're such a prankster :P
ZoffixWin :)
dalek ar: c638e32 | timotimo++ | tools/star/analyze_module_dependencies.p6:
output revdeps, fix array assignment from set.
12:06
ar: 62fd366 | timotimo++ | / (3 files):
add NativeHelpers::Blob for DBIish
vendethiel- ZoffixWin: slides only might not work as an introduction to the languages, though. It looks like a good "tour", however. 12:07
"here, let me show you everything. you won't be able to process it; but hopefully some of it caught your interest and you'll come back to us" :P 12:08
teatime I think it was probably not the best intro/advocacy for non-perlers, but I think it was just random luck that it ended up high on HN.
ZoffixWin Yeah, which is why I wish the person who posted them on HN would've posted this blog post instead :) blogs.perl.org/users/zoffix_znet/20...tions.html 12:09
vendethiel- ZoffixWin++ #amazing :D
teatime people too easily confuse "This is a funny example of a neat feature" with "This is something I advocate you actually do in real code and reflects typical practice"
ZoffixWin Oh well. Too late now. We got some publicity, which is good.
vendethiel- "Do you want to die as an average Programmer ? 7 Mistakes You’re Making In Your Programming Career - Stackmojo" this is why I don't browse reddit/hackernews/whatever else. 12:10
ZoffixWin hah
timotimo which is the right apostrophe to use for I'm and such? is it ‘ or is it ’?
probably something else entirely 12:11
ZoffixWin timotimo, '
timotimo is that actually ' ?
ZoffixWin Yeah
timotimo damn
that's what markdown uses for formatting
ZoffixWin m: say q{'}.uniname
camelia rakudo-moar a87fb4: OUTPUT«APOSTROPHE␤»
teatime 10 years ago when I was starting projects in Perl5 I was constantly put in the position of defending that choice against Perl-specific and more-general misconceptions... I can already see (from mentioning elsewhere how much I've been enjoying Perl6 over the last couple of weeks) that the same would be true w/ Perl6.
ZoffixWin Does it?
timotimo at least vim marks it up 12:12
12:12 nowan joined
timotimo perl6.org/compilers/features - someone want to review this? 12:13
teatime now I'm curious; what context, timotimo.. POD? 12:14
timotimo markdown.
like, we can probably throw out the LoL row
12:14 salva left
timotimo KeySet and KeyBag aren't the right names any more 12:14
NFG as default is implemented by rakudo now, but StrPos and StrLen don't exist any more in the spec 12:15
there's no annotation that says why the Buf, buf and utf8 are +/-, same for "Native operators"
"compact arrays" are implemented, at least partially compared to what the spec speculates 12:16
and shaped arrays/hashes can also get a +/-, though a lot of that is missing from rakudo still
12:16 nowan_ left
timotimo we could claim "basic module versioning" is now in, too. 12:16
what is "still some bugs" supposed to mean for "precedence and associativity of new operators"? 12:17
and we should probably +/- basic macros (and perhaps also macro hygiene just because macros itself is +/- then)
"Synchronization" has a +/- for rakudo, but no comment and also no link to specs or code 12:18
any comments?
vendethiel- that last one should probably be green? 12:21
StrPos and StrLen should just be removed I guess
Buf/buf should be good, native operators should be good (taking int as params, and (my int $a)++ I guess) 12:22
dalek ar: 0569a67 | timotimo++ | docs/announce/2016.03.md:
draft release announcement
timotimo i'll build a tarball from the code so you people can test it out
12:23 niceperl joined 12:24 cdg joined, edjsu joined
timotimo t.h8.lv/rakudo-star-2016.03-rc2.tar.gz 12:25
sortiz timotimo, Buf is yellow, by spec is missing only Buf[bit], and for Compact arrays, 'array' is working.
timotimo please go ahead and test if it works
Woodi timotimo: '(production)' there is a bit to strong for me :) 12:28
timotimo Woodi: i'm not going to discuss that :)
Woodi ...but stable would be ok, IMO
12:28 Upasaka_ left 12:29 salva joined 12:30 Upasaka joined
timotimo we're throwing Bailador out, but we're not adding any new web app module? 12:35
sortiz "we" ??
timotimo someone suggested it, and bailador's maintainer ack'd the decision 12:36
Woodi rakudo-js is included in R* ? 12:39
timotimo rakudo-js doesn't exist yet
we're getting close to a nqp-js, though
Woodi ah, right :)
12:43 wamba joined 12:46 Skarsnik joined
timotimo oof. now how do i best go through the modules to see what's new? :\ 12:51
moritz: do you think SVG::Plot should stay in Star? i don't think anything's been done to it in the last years :P 12:53
though that's not really a good measure of includability
maybe we should just reconsider module choice in general, as the number of modules in the ecosystem pretty much asploded since we last did a big shake-up of included modules
sortiz timotimo, trying rc2, seems that 'make rakudo-test' needs 'make install' first, I thought was solved a few days ago. 12:54
timotimo yes, it's true
make modules-test also causes the installation to re-happen
12:56 sue joined
moritz timotimo: I'm fine with it going away 12:56
timotimo: it used to be in there as a dependency for Math::Model, but I've thrown that out of star a while ago
timotimo i don't mean to single out your module; it just stuck out to me because it was on screen when i looked over :P 12:57
dalek ar: fef6734 | (Steve Mynott)++ | docs/announce/2016.03.md:
reword Bailador removal and add ufo removal
12:58
12:59 CIAvash left
timotimo stmuk_: i could have done with a bit of warning that you're about to do stuff, because i'm editing there right now, too :) 12:59
stmuk_ sorry I'll leave it alone for a bit :)
moritz timotimo: no, it's a good idea to throw it out; we should just announce its upcoming removal now, and remove it for the next release after that
timotimo nah, keep going, but let me push my shtuff first
13:00 domidumont left
dalek ar: 20acafc | timotimo++ | docs/announce/2016.03.md:
a few lines of changes
13:02
timotimo stmuk_: go ahead :)
sortiz timotimo, at 'make install' I got another random "Internal error: zeroed target thread ID in work pass" 13:03
timotimo :o
sortiz And imo, 'make rakudo-test', when used, should pass *before* 'make install' 13:05
timotimo or require make install.
13:06 Upasaka left
sortiz I remember that lizmat fixed that a few days ago, something related to use PERL6LIB in harness. 13:07
timotimo fixed it in rakudo?
dalek ar: 8c4bc97 | (Steve Mynott)++ | docs/announce/2016.03.md:
add Native::Resources and full stops
13:08
sortiz yep, if I remember well :)
timotimo i'm not really feeling up to also building a rakudo point release for that
and i'm not sure i want to do anything about the internal error you got
it'd be great if you could reproduce it on an up-to-date moarvm 13:09
13:10 buharin left 13:11 buharin joined
sortiz I've seen that error twice (At panda install time), and never been able to reproduce. 13:11
timotimo right :\ 13:12
sortiz Another matter to consider: Linenoise is broken with unicode input, but Readline works well. 13:14
timotimo that's true
13:14 wamba left
timotimo but Readline isn't easy to ship because license 13:14
obviously we should write our own readline library. how hard can it be, right? 13:15
sortiz lol
timotimo it's probably a good idea to point it out in the docs
also, is there a way to disable linenoise via a flag or env var?
that could be a good idea ...
13:15 Upasaka joined
timotimo how does it behave when you rlwrap it when it loads linenoise? 13:15
sortiz What's the license problem with Readline? 13:16
timotimo *shrugs* 13:17
i don't know the details
perlawhirl Readline requires a specific version of libreadline, which many users might not have by default. so you'd need to ship libreadline5 13:18
with R*... i dunno it that's THE license problem... but it's A license problem :D
sortiz My Readline uses libreadline v6 ?! 13:24
13:24 sue left
perlawhirl huh?? i did a fresh install of rakudo on a Centos 6 box on friday, and stuggle to get readline to build on libreadline6 13:25
kept throwing some error about... umm... let me see if it's in my clipboard hist
was reporting this failure: Cannot locate symbol 'rl_free_keymap' in native library 'libreadline.so.6' 13:26
SmokeMachine____ m: my $a = (Int:U, Int:D).pick; $a.DEFINITE.say 13:27
camelia rakudo-moar a87fb4: OUTPUT«False␤»
13:27 ufobat joined
SmokeMachine____ how can I test if $a is :D or :U? 13:27
timotimo Definite helps there
.defined will allow The Thing to decide how it deals with "am i defined or not?" 13:28
geekosaur is that even meaningful?
timotimo hm?
perlawhirl sortis: what distro?
sortiz perlawhirl, see github.com/drforr/perl6-readline/b...ne.pm#L657
ufobat hi perl6 :)
timotimo hallo!
moritz \o 13:29
13:29 niceperl left
geekosaur so I understand :U and :D to be signature things, not things to hang off a value 13:30
`Int' being a type object is undefined
perlawhirl sortiz: hrm... i see. i'll take another run at it on monday
SmokeMachine____ m: (Int:D).DEFINITE.say 13:31
camelia rakudo-moar a87fb4: OUTPUT«False␤»
timotimo oh, now i get what you mean
geekosaur and would be rejected by a signature having `Int:D' but accepted by one having `Int:U' or `Int'
timotimo m: Int:D.perl.say
camelia rakudo-moar a87fb4: OUTPUT«Int:D␤»
timotimo m: Int:D.HOW.say
camelia rakudo-moar a87fb4: OUTPUT«Method 'say' not found for invocant of class 'Perl6::Metamodel::DefiniteHOW'␤ in block <unit> at /tmp/drscHlig47 line 1␤␤»
timotimo m: Int:D.HOW.^methods.say
camelia rakudo-moar a87fb4: OUTPUT«Method 'gist' not found for invocant of class 'NQPRoutine'␤ in block <unit> at /tmp/H9miX4zl_p line 1␤␤»
timotimo m: Int:D.HOW.^methods>>.name.say
camelia rakudo-moar a87fb4: OUTPUT«(archetypes new_type name base_type definite nominalize find_method type_check accepts_type WHY set_why CREATE bless BUILDALL new defined ACCEPTS isa)␤»
SmokeMachine____ timotimo: yes! That's it!
timotimo m: Int:D.^definite
camelia ( no output )
timotimo m: Int:D.^definite.say; Int:U.^definite.say; Int:_.^definite.say
camelia rakudo-moar a87fb4: OUTPUT«1␤0␤Method 'definite' not found for invocant of class 'Perl6::Metamodel::ClassHOW'␤ in block <unit> at /tmp/NAkgKNHm7F line 1␤␤» 13:32
timotimo m: Int:D.^definite.say; Int:_.^definite.say
camelia rakudo-moar a87fb4: OUTPUT«1␤Method 'definite' not found for invocant of class 'Perl6::Metamodel::ClassHOW'␤ in block <unit> at /tmp/cs1JP9xXvv line 1␤␤»
timotimo OK, so you only get it for Int:D apparently
the others don't become a DefiniteHOW
13:38 tphilipp joined
SmokeMachine____ m: Int:D.WHAT.can("definite").say 13:40
camelia rakudo-moar a87fb4: OUTPUT«Method 'can' not found for invocant of class 'Perl6::Metamodel::DefiniteHOW'␤ in block <unit> at /tmp/SBoCtWQcX9 line 1␤␤»
SmokeMachine____ m: Int:D.WHAT.^can("definite").say
camelia rakudo-moar a87fb4: OUTPUT«Method 'can' not found for invocant of class 'Perl6::Metamodel::DefiniteHOW'␤ in block <unit> at /tmp/NIcJiIAPJ9 line 1␤␤»
SmokeMachine____ m: (Int:D.WHAT ~~ Perl6::Metamodel::DefiniteHOW).say 13:42
camelia rakudo-moar a87fb4: OUTPUT«Could not find symbol '&DefiniteHOW'␤ in block <unit> at /tmp/FERJ6SYMo8 line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/FERJ6SYMo8 line 1␤␤»
13:44 buharin left
SmokeMachine____ m: Int:D.WHAT?.definite(Int:D).say 13:44
camelia rakudo-moar a87fb4: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OstxKdMSuZ␤Unsupported use of ? and : for the ternary conditional operator; in Perl 6 please use ?? and !!␤at /tmp/OstxKdMSuZ:1␤------> 3Int:D.WHAT?7⏏5.definite(Int:D).say␤»
timotimo hehe.
the ? goes after the . 13:45
SmokeMachine____ m: Int:D.WHAT.?definite(Int:D).say
camelia rakudo-moar a87fb4: OUTPUT«Nil␤»
SmokeMachine____ I can't get it... :(
timotimo you can use a try
SmokeMachine____ But in that case shouldn't return true? 13:46
timotimo m: say try Int:D.^definite
camelia rakudo-moar a87fb4: OUTPUT«1␤»
timotimo m: say try Int:U.^definite 13:47
camelia rakudo-moar a87fb4: OUTPUT«0␤»
timotimo m: say Int:U.^definite
camelia rakudo-moar a87fb4: OUTPUT«0␤»
timotimo oh?
why didn't that work up there when i tried it?
oh, it did!
SmokeMachine____ That's it!
timotimo i just missed the 0 before the error
SmokeMachine____ Maybe a typo?
timotimo no, just misread 13:48
it worked just fine
SmokeMachine____ timotimo: thank you very much!
timotimo YW
SmokeMachine____ Just the last question: why the return isn't Bool? 13:49
timotimo because it's deep inside the metamodel
and using native integers there pays off
SmokeMachine____ Ok! Thanks! 13:50
sortiz m: my Int $a; say $a ~~ Int:U; my $b = 10; say $b ~~ Int:D;
camelia rakudo-moar a87fb4: OUTPUT«True␤True␤»
SmokeMachine____ m: say ?Int:D.^definite 13:51
camelia rakudo-moar a87fb4: OUTPUT«True␤»
SmokeMachine____ m: say ?Int:U.^definite
camelia rakudo-moar a87fb4: OUTPUT«False␤»
sortiz m: my Int $a = 10; say $a ~~ Int:U; my $b = 10; say $b ~~ Int:U
camelia rakudo-moar a87fb4: OUTPUT«False␤False␤»
SmokeMachine____ That's it! Thanks!
13:52 buharin joined
timotimo stmuk_: are you looking through what changed in the modules since the last version we had in rakudo-star? 13:59
sortiz "Rakudo Star has been built and installed successfully." 14:00
14:07 edjsu left
sortiz a last comment: In R* p6-native-resources and Linenoise lacks tests. 14:13
timotimo Linenoise is probably difficult to test 14:14
though a "can the module be loaded" test wouldn't go amiss
er, a "can the native functions be resolved properly" one?
you know what i mean.
sortiz yep.
Testing R* now in 32 bits. 14:15
timotimo and native-resources seems kinda hard to test
14:19 edjsu joined
sortiz I see, native-resource is used to build Linenoise's libs. 14:23
hoelzro timotimo: re: your question if linenoise can be disabled, it won't be used if it can't be loaded. or are you talking about something else? 14:26
sortiz In fc23-32bits: "Rakudo Star has been built and installed successfully." 14:27
teatime question: what happens (wrt precompiles) when the user doesn't have write-access to the 1st module search location
it would seem like you should be able to install to something like /usr/local and provide precompiles; I'm assuming that's just WiP rather than a design-choice that precomps will always be per-user? 14:29
14:30 edjsu left
ugexe mostly, the problem before was precomps contained absolute file paths (for $?FILE) but this is (or is being) solved 14:31
teatime ugexe: you're referring to whatever you and MadcapJake I think it was were dealing with last nightish? 14:32
ugexe no. well, sort of 14:33
teatime Is there a design doc anywhere about the plan for module search and precomps? I'm interested from a sysadmin POV.
ugexe last night ended up being about him needing to `rakudobrew rehash`
not really 14:34
mostly because its all still changing
14:34 xinming left 14:35 xinming joined, edjsu joined 14:37 leont left 14:38 azawawi joined
azawawi hi 14:38
14:45 Actualeyes left
MadcapJake morning Sixians! 14:46
perlawhirl mornin; Jake 14:47
MadcapJake crazy blizzard today in Wisconsin, USA!
perlawhirl it's a bit too early in the morning for me... almost 2am
MadcapJake haha 14:48
You're 8 hours behind me then :P
perlawhirl yea... australian time... no blizzards here 14:49
aren't you coming onto summer now
14:49 Actualeyes joined
MadcapJake nine: just looked up honeypot captchas, that's amazing that it works! 14:49
perlawhirl oh :( my american geography is terrible. i imagined wisconsin to be somewhere around maybe the carolinas
but nop!
MadcapJake perlawhirl: well we're a few weeks into spring but Wisconsin has been getting some weird weather patterns as of late 14:50
perlawhirl you up there hanging out at the great lakes with Mitch and Minne
MadcapJake yep yep 14:51
azawawi MadcapJake: hi.. just came back from a sunny spring trip :)
MadcapJake lucky! we've had snow off-and-on all week
azawawi wanna trade? :) 14:52
MadcapJake yes please! 14:54
14:54 kurahaupo joined, kurahaupo left
azawawi :) 14:54
14:54 xinming_ joined 14:55 azawawi left
perlawhirl my philosophy is... in the cold, you can always add more layers. in the heat, things aren't so easy 14:55
timotimo hoelzro: well, if it can be loaded, can it be disabled still? like if you require something that can deal with unicode characters, you'd have to manually b0rk Linenoise or something
MadcapJake woah github has commit squashing now, that's epic
14:55 kurahaupo joined
ufobat allow me a few dump questions. whats the benefit of having sessions within the (psgi) framework or within the middleware? or in other words, why does pancer implement sessions and bailador not. And why are there no sessions in Crust directly but there is a Crust::Middleware::Session in github.com/lestrrat/p6-Crust-Middl...e-Session? dont you always need them if you want to have states inside your web application, 14:56
like if someone is logged in or not?
MadcapJake perlawhirl: I totally agree, in cold you can control the temp, in the summer you can only go as far as your birthday suit and even then, most people don't like the look ;)
perlawhirl MadcapJake: hah! also, i know i'm getting tired because i just went to look up squashing on google and typed 'cmomit squasking'
google still knew what i was talking about
timotimo ufobat: could do it by passing around a parameter in all URLs :) 14:57
14:57 xinming left
timotimo remembering headers like IP, user agent, size of browser window, installed extensions and their versions ... : 14:58
hoelzro timotimo: ahhh
timotimo :P
ufobat okay, so its missing :)
hoelzro I was thinking of adding a RAKUDO_LINE_EDITOR env var
timotimo i've not tried Crust yet
perlawhirl MadcapJake: ahh, sqashing is cool. saves you from piling up those mini-commits (spelling/grammar/typo corrections)
ufobat me neither, but i wanted to have authenticaten right from the start. and the easiest way seems to be crust with the http basic authentication... but actually i wanted to do it in my webapp myself 14:59
then in general, should sessions be in the middleware or in the framework? i am not familiar witih writing web thingies
14:59 perlawhirl left
timotimo http basic auth is sadly super annoying for the user 14:59
because the "enter your username and password" page cannot be styled 15:00
MadcapJake perlawhirl: yeah, I've submitted a few PRs before where the maintainer says "please squash your commits". It's about keeping a clean commit/feature philosophy
ufobat yeah!!
but i am the only user and no auth is even more anoying to me :D
timotimo if that wasn't a problem, it would be pretty cool, as it can do challenge-response, IIRC
15:00 kid51 left
ufobat i guess adding sessions to bailador is pretty easy, so i am wondering why its not already there.. because of design reasons? tadzik? 15:02
timotimo tadzik doesn't have so much time to work on p6 stuff
so if bailador will get sessions, it'll probably be contributed by a fan
ufobat sounds like a job for me :D i guess my p6 foo is so low that i'd better not do that already :D 15:03
timotimo ^- that's also a bit of the reason why we're throwing Bailador out of Star 15:04
ufobat that bailador fans have a low p6 skill? 15:05
;D
timotimo nah :)
tadzik oh no, there's quite a lot of valuable contributions coming in :) 15:10
timotimo oh, cool
so then why did we throw it out of Star? :P
and not put any replacement in
tadzik well, quite a few maybe
I'unno
not putting a replacement in is kind of icky, yeah
timotimo well, you supported the call to throw it out :D
tadzik it sends a message of "we're not putting webdev stuff into star"
yeah, now I'm having 2nd thoughts :)
15:11 k-man joined, raoulvdberge joined
raoulvdberge hey guys, finally decided that today is the day I try out perl 6. gonna make a Forth clone 15:12
tadzik awesome :)
MadcapJake raoulvdberge: sweet!
timotimo i don't have an idea what all the different web app modules have to offer
15:13 tphilipp left
raoulvdberge should be fun :) 15:13
15:13 tphilipp joined 15:14 cyberviking joined
MadcapJake Sixians: should the Issue Submitter have a WYSIWYG editor or just plain text? 15:15
i'm leaning towards WYSIWYG as RT supports email-style html
15:16 sortiz left
timotimo SGTM 15:17
15:18 Herby_ joined
Herby_ Morning, everyone! 15:18
\o
MadcapJake is in full-on throws of yak shaving xD
timotimo ohai herby
arnsholt MadcapJake: have you reached the inception yak shave yet? Where you find another yak to shave before you can finish shaving the first yak? =) 15:19
MadcapJake oh yes, i'm like three layers deep
timotimo isn't that how it usually goes? 15:20
15:21 cyberviking left
teatime MadcapJake: I vote against sending HTML mails. 15:21
timotimo it's less about mails and more about the RT web interface, IMO.
and as long as we just accept bold/italic/underline and preformatted text for pasted code and terminal output and such
15:22 cyberviking joined, cyberviking left
MadcapJake teatime: I would just allow the basics like timotimo said, nothing special 15:24
timotimo write a nice regex to validate that html :D :D
15:25 domidumont joined
MadcapJake oi! I would but I think that the editor I have in mind does that for you 15:25
15:25 rindolf left
timotimo nothing prevents the user from sending whatever they like with Inspect Element and other such tools 15:25
15:25 cyberviking joined
MadcapJake that's true! I should probably do some server-side validating then eh? 15:26
teatime always.
timotimo yes, always
MadcapJake great, another yak to shave ;) 15:27
15:27 cyberviking left 15:28 cyberviking joined 15:33 wamba joined 15:34 cyberviking left 15:52 Score_Under joined
stmuk_ timotimo: back and I can flesh out some module change doc 15:54
shortly
timotimo that'd be fantastic 15:55
don't forget the new cover sheets for those TPS reports
oh. my. god.
Timo's Perl Six Reports
stmuk_ riiiight
Skarsnik huhu 15:59
16:02 khw joined
TimToady timotimo: I believe the "precedence and associativity of new operators" bugs were fixed before Christmas, we even got thunking to propagate to new operators 16:03
16:05 skids left 16:08 salva left
TimToady maybe we should call ourselves '1337 S!x0rs' :) 16:10
ugexe stmuk_: there is an error in your META6 source-url. it has `gitlabs.com` instead of `gitlab.com` 16:11
16:12 DarthGandalf left 16:13 DarthGandalf joined 16:16 sue joined
Skarsnik can my blog post on gptrixie be on the next weekly? I fail the publish date when publishing it so it does not shows x) blogs.perl.org/users/sylvain_coline...-demo.html 16:17
16:21 iH2O joined
ZoffixWin So what do kids use for web apps these days? 16:21
tphilipp aspirin? 16:22
;)
MadcapJake ZoffixWin: Crust
stmuk_ ugexe: d'uh .. fixed and it looks like zef works now
RabidGravy I'm quite liking Crust and I don't really like webby stuff in general 16:23
MadcapJake timotimo: I think you need to make (TPS Reports) a real thing then :)
timotimo m: my $perline = 100; my $amount = 1; my $gb = 1_000_000_000; my $end = $amount * $gb / $perline; for 1..$end { }; say now - INIT now 16:24
camelia rakudo-moar a87fb4: OUTPUT«(timeout)»
timotimo m: my $perline = 100; my $amount = 1; my $mb = 1_000_000; my $end = $amount * $mb / $perline; for 1..$end { }; say now - INIT now
camelia rakudo-moar a87fb4: OUTPUT«0.2574027␤»
timotimo m: my $perline = 100; my $amount = 1; my $mb = 1_000_000; my $end = $amount * $mb div $perline; for 1..$end { }; say now - INIT now 16:25
camelia rakudo-moar a87fb4: OUTPUT«0.0146264␤»
timotimo ^- we should probably do something about this difference
m: my $perline = 100; my $amount = 50; my $mb = 1_000_000; my $end = $amount * $mb div $perline; for 1..$end { }; say now - INIT now
camelia rakudo-moar a87fb4: OUTPUT«0.6685669␤»
timotimo m: my $perline = 100; my $amount = 50; my $mb = 1_000_000; my $end = $amount * $mb / $perline; for 1..$end { }; say now - INIT now
camelia rakudo-moar a87fb4: OUTPUT«11.6012647␤»
MadcapJake div is faster than / ?
ugexe stmuk_: it might take till :30 past the hour till the actual install works (when its ecosystem source updates). it'll find it now because i manually forced it to add the project, but it'll take another 10 or so minutes to propogate your new change 16:26
timotimo yeah, Int vs Rat
iH2O I'm new to perl6. can someone suggest me code like "perl6 -e code f" to output the lines in f with invalid utf-8 characters
MadcapJake isn't that expected? It's creating a numerator and denominator right? 16:27
stmuk_ ugexe: ok that might explain the current "Can't extract non-existent path: False
" error
ugexe stmuk_: yeah. the error certainly needs to be improved 16:28
MadcapJake iH2O: what's an invalid character look like?
iH2O any invalid utf-8 character, such as e with acute accent 16:29
233 decimal
ZoffixWin m: say 'é'.uniname
camelia rakudo-moar a87fb4: OUTPUT«LATIN SMALL LETTER E WITH ACUTE␤»
ZoffixWin It's perfectly valid, mate
iH2O let's say it's valid. but some are invalid for sure, and that's the ones I want to detect :) 16:31
ZoffixWin Do you have an example of what you're trying to detect?
MadcapJake the only thing you could possibly check for is UTF16 codepoints U+D800 through U+DFFF otherwise all the other invalid possibilities are at the byte-level
mst but that would almost be a spec, and then we could answer the question
ZoffixWin Do you mean detecting Mojibake? (en.wikipedia.org/wiki/Mojibake)?
mst ZoffixWin: I mean, really, dude, it's the 2nd now, don't say things like that
mst hides
ZoffixWin throws an empty beer can at mst 16:32
TimToady ZoffixWin: btw, it doesn't matter where the CATCH goes, it still works
ZoffixWin TimToady, oh :(
m: { CATCH { say "caught" }; die "meow" }
camelia rakudo-moar a87fb4: OUTPUT«caught␤meow␤ in block <unit> at /tmp/cRc_CWdcko line 1␤␤»
TimToady other than that, great talk! :) 16:33
ZoffixWin Thanks.
TimToady I kinda liked the "It's Unicode, deal with it." approach 16:34
ZoffixWin :D
16:34 kid51 joined
MadcapJake if you put the CATCH at the end of a sub, it will interfere with last-line-return semantics 16:35
TimToady indeed, though I still consider that a bug of sorts
MadcapJake Glad to hear! That threw me when I first realized it and I still wish I could put my CATCH at the end, it looks proper to me :) 16:36
iH2O if I put the single character ^233 in a file (e acute accent) and I run iconv -f utf-8 -t utf-8 I get the message "conversion error: Illegal byte sequence"
MadcapJake 󠃩.u é 16:37
yoleaux doesn't appear to like it either xD 16:38
iH2O yoleaux? lol
ZoffixWin MadcapJake, you prefixed the command with some weird thing
MadcapJake oh hmm weird
16:38 BenGoldberg joined
ZoffixWin Some weird character that doesn't display for me 16:38
MadcapJake .u é 16:39
yoleaux U+00E9 LATIN SMALL LETTER E WITH ACUTE [Ll] (é)
TimToady yes, a Latin-1 é will not decode properly as a UTF-8 é
ZoffixWin iH2O, I don't get that error. Are you sure you're saving the file as UTF-8?
iH2O it's iconv on windows. do you want me to try it on linux too?
I didnt save the file as utf-8
ZoffixWin iH2O, how did you create that file?
iH2O I'm still in latin1 and making my transition to utf-8 16:40
I want some tools to help with utf-8
TimToady are you trying to deal with files that contain mixed latin-1 and utf-8?
ZoffixWin iH2O, well, that's probably why iconv doesn't like the file. You're telling it the input is in UTF8
iH2O TimToady: yes, that will happen during my transition 16:41
TimToady it would be better to prevent that, in general
rather than try to recover from mixed files
what would cause mixed files? 16:42
other than, say, a database that already contains mixed data?
iH2O I dont want mixed files, but until the whole world uses utf-8 that will happen once in a while
given I grab stuff here and there
TimToady well, usually things stay pretty granular to the file level, I suspect 16:43
16:43 Herby_ left
TimToady so I'm not entirely sure how useful a which-line detector would be 16:44
since you'd generally want to convert the entire file, not char-by-char
iH2O I'll convert the whole files of course, but I cant guaranteed occasional "corruption" later, as I said 16:45
16:45 buharin left
TimToady that being said, it would be possible to write such, but you'd have to pull in the data as buf data and do your own line-by-line decoding 16:45
might be more useful to have a mode on ordinary UTF-8 decoding that would be better at pointing out the location of the error 16:46
iH2O I didnt know the problem was next-to-undecidable :(
TimToady well, valid latin1 can look like valid utf8 without really being so, but generally you don't get a lot of inconsistency within a file 16:47
if you decode a file as utf8 and it errors, chances are you can decode the whole file as latin1 instead and go from there 16:48
unless you have a way to create mixed files
in which case it would be better to figure out how the mixed file arose than to try to patch it after losing information 16:49
iH2O who wants mixed files latin1-utf8?
but sometimes I detect nonvalid utf-i sequences only days later 16:50
TimToady nobody, but sometimes data locations (such as POSIX filenames) are encoding agnostic
iH2O so I prefer to fix the problem by hand that reget the stuff
s/that/than/
TimToady you can poke utf8 data into a latin1 database slot, and the latin1 has no way to tell that it's happened 16:51
but it's really your choice whether to try to fix things in one pass through the data, or whether you need to push purification upstream 16:53
because it'll keep giving you the same bad data
orbus_ not sure how helpful this is in your case but there are various libraries that use heuristics to examine a string and try to figure out how it's encoded 16:55
if it's really broken up by lines, you could feed each line into one of those
TimToady sometimes you can't fix the upstream, like when the Magellen radar was randomly flipping its binary orientation, and NASA just had to deal with data frames where 0 and 1 could change meaning halfway through the frame :)
orbus_ but agree, fixing upstream so the problem doesn't happen in the first place is the first thing that should be tackled 16:56
TimToady *Magellan
orbus_ perldoc.perl.org/Encode/Guess.html for example
and search.cpan.org/~jgmyers/Encode-Det.../Detect.pm 16:57
16:57 tphilipp left
TimToady one approach in p6 would be to read the file with a latin1 encoding, split lines, and then for each line try to re-encode it as latin1 -> buf8 -> utf8 to see if it works or dies 16:59
orbus_ I wonder if you might not get false positives though 17:00
where it's really already utf8
so trying to process it through latin1 -> buf8 -> utf8 gives you garbage
you'd have to manually inspect all the results 17:01
teatime string -> latin1 will not do what you what you want
you want to read the file in as bytes originally
orbus_ yeah 17:02
also true
teatime oh, reading the file as latin1 -> bytes -> utf should work
but why, since you can just read raw?
(honest question)
oh, because otherwise you can't split lines?
orbus_ well you *could*
you'd just have to do it the hard way
look for newlines as you read 17:03
(which isn't that hard - just more annoying)
17:04 orbus_ is now known as orbus
orbus has spent a lot of time lately dealing with misencoded text records 17:04
dalek ar: 16ac502 | (Steve Mynott)++ | docs/announce/2016.03.md:
more blurb
17:05
teatime Does anyone know the right incantation to make modern GTK stuff (but < Gnome 3.20 where this is apparently fixed for good) read custom ~/.XCompose ? `GTK_IM_MODULE=xim` no longer seems to do the trick here. 17:09
17:11 Roamer` left, Roamer` joined 17:18 iH2O left 17:28 Begi joined 17:30 Khisanth left
lucs Is using 「⋯.subst(…).subst(…)」 the best way to chain regex substitutions like Perl 5's 「… =~ s/…/…/r =~ s/…/…/r」? 17:34
Or, s/the best/a good enough/ 17:35
jnthn lucs: Yeah, though if your substitutions are simple enough then .trans can provide a neater way to do the mappings 17:36
In one pass
TimToady or: S/// andthen S/// andthen S///
lucs Oh, looking up .trans, thanks
And then andthen :) 17:37
jnthn TimToady: ooh, cute...I'd not thought of that one :)
Though I've found their bigger cousins, with/without, plenty useful. 17:39
17:41 _nadim joined 17:42 sue left 17:45 kid51 left 17:47 andrewalker_ left 17:48 jack_rabbit left, raoulvdberge left 17:51 BenGoldberg left
lucs Um, it looks like S/// doesn't do what I think it would, and I can't find any documentation on it :/ 17:54
TreyHarris Can I curry the second positional argument of a ≥2-ary function? I can't figure out the syntax for doing so
17:55 dvinciguerra joined
TreyHarris er, maybe the nomenclature I just used it wrong--I meant "bind the second argument so the new function becomes a one-less-ary function with the second argument already bound" 17:55
japhb What's the most idiomatic way of indicating that a class's attribute should be coerced? Saying 'has Int() $.foo' gets "Coercion Int(Any) is insufficiently type-like to qualify a variable" 17:56
17:56 BenGoldberg joined
TreyHarris japhb: I think that's a rakudo implementation missing detail, you should be able to do it eventually? 17:57
masak m: sub foo($x, $y, $z) { say "$x $y $z" }; my &bar = -> $x, $z { foo($x, "bound", $z) }; bar("x", "z")
camelia rakudo-moar a87fb4: OUTPUT«x bound z␤»
masak TreyHarris: ^^
japhb TreyHarris: Well, good that it will be there eventually, but then that begs the question of what I should use *now* ....
TreyHarris masak: oh, pointies, right. thanks 17:58
masak japhb: good question. I had simply assumed that would work, actually.
TreyHarris japhb: just use the more general type in the signature and coerce in your code?
masak japhb: maybe that's the time to write a Proxy? :/
japhb: feels a bit overkill, but at least that'd work.
17:59 Khisanth joined
RabidGravy TreyHarris, alternatively: 17:59
japhb masak: Yeah, I did too. :-/
TreyHarris I'm not sure where I saw it, but I definitely read that this is just a not-yet-implemented feature
RabidGravy m: sub foo(Str $i, Int $j) { say "$i - $j" }; my &bar = &foo.assuming(*,1); bar("zub");
camelia rakudo-moar a87fb4: OUTPUT«zub - 1␤»
japhb TreyHarris: Might have to. Or write a custom new or something
TreyHarris RabidGravy: boo, I swear I tried that. One moment
japhb masak: Yeah, that does feel a bit bazooka-ish
BenGoldberg m: sub foo($x, $y, $z) { say "$x $y $z" }; my &bar := sub { foo( $^x, "bound", $^z ) }; bar("x", "z"); 18:00
camelia rakudo-moar a87fb4: OUTPUT«x bound z␤»
mst japhb: stick some code in BUILD and wrap a method modifier around the accessor?
TreyHarris RabidGravy: oh, I forgot the .assuming + the whatever splat, I just tried it with one or the other 18:01
RabidGravy: thanks
japhb mst: Huh. Interesting thought.
mst japhb: it's a bit duct tape but if it works it would still be a relatively small amount of duct tape 18:02
TreyHarris like "my &bar = foo(*,1)", thinking it would work analagously to "my &bar = 1 + *"
masak do we have method modifiers in the ecosystem? I don't remember. 18:04
TreyHarris: no, whatevers don't thunk in argument lists.
TreyHarris: if they did, then things like .pick(*) wouldn't work
TreyHarris masak: yep, I see that now. makes sense. 18:05
TimToady lucs: it does appear that there's a bug with cascading S/// via andthen
mst masak: there's certainly something modifier-ish doable
TimToady m: say (S/Once/Twice/ given "Once upon a time")
camelia rakudo-moar a87fb4: OUTPUT«Twice upon a time␤»
mst RabidGravy's lazy thing wraps the accessor IIRC
TimToady m: say (S/Once/Twice/ andthen S/a/two/ given "Once upon a time")
camelia rakudo-moar a87fb4: OUTPUT«atwo␤»
TimToady a rather peculiar bug 18:06
El_Che
dalek ar: ae3bf37 | (Steve Mynott)++ | ports/darwin_dmg/installerbg.png:
fix RT #127716 typo
lucs TimToady: Ah, still, thanks for the example (I couldn't figure out how to use the S///). 18:07
masak TimToady: are you submitting it to RT?
TimToady m: say (S/Once/Twice/ andthen S/a/two/) given "Once upon a time"
camelia rakudo-moar a87fb4: OUTPUT«atwo␤»
18:07 jack_rabbit joined
mst here we go 18:07
japhb: github.com/jonathanstowe/Attribute...te/Lazy.pm
TimToady m: say (S/Once/Twice/ with S/a/two/) given "Once upon a time"
camelia rakudo-moar a87fb4: OUTPUT«Twice␤»
mst masak: the .wrap call is what I'm thinking of as 'method modifier'
lucs TimToady: Not finding S/// in the docs though. Where should I be looking?
masak mst: ah, yes.
mst since basically it's the primitive out of which before/after/around would be built as syntax
TimToady lucs: dunno offhand if it ever got documented :) 18:08
lucs TimToady: That would explain it :)
stmuk_ timotimo: I've stopped committing to star now
TimToady m: say (S/Once/Twice/ given S/a/two/) given "Once upon a time" 18:09
camelia rakudo-moar a87fb4: OUTPUT«Twice␤»
TimToady masak: you can RT it if you like :)
TimToady has plenty of other things to do that he's putting off... 18:10
mst TimToady: guess why I'm in here trying to answer questions ;)
TimToady If necessity is the mother of invention, and laziness the father, then creative procrastination is the favorite uncle. 18:11
timotimo stmuk_: and i'm back at the keyboard again
masak submits rakudobug 18:12
timotimo stmuk_: is "and much more" really accurate? :) 18:14
masak m: $_ = "Once upon a time"; say (S/Once/Twice/ andthen S/a/two/)
camelia rakudo-moar a87fb4: OUTPUT«atwo␤»
TreyHarris the cap-S variant just returns rather than mutates? 18:15
masak m: $_ = "Once upon a time"; say ($_ += ", kthx" andthen S/a/two/)
camelia rakudo-moar a87fb4: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5Once upon a time' (indicated by ⏏)␤ in block <unit> at /tmp/pJdcXWoK2K line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/pJdcXWoK2K line 1␤␤»
masak m: $_ = "Once upon a time"; say ($_ ~= ", kthx" andthen S/a/two/)
camelia rakudo-moar a87fb4: OUTPUT«Once upon two time, kthx␤»
masak ok, so both S/// are needed
but not the given 18:16
timotimo is "some bits of synopsis 9 and 11" still "missing"
stmuk_ timotimo: yes it's not just marketing hype :)
BenGoldberg m: say "abc".NFC 18:17
camelia rakudo-moar a87fb4: OUTPUT«NFC:0x<0061 0062 0063>␤»
BenGoldberg m: say "abc".NFC[0]
camelia rakudo-moar a87fb4: OUTPUT«97␤»
18:18 sue joined
masak m: $_ = "Once upon a time"; say (S/Once/Twice/ andthen S/a/two/); say $_ 18:19
camelia rakudo-moar a87fb4: OUTPUT«atwo␤Once upon a time␤»
masak oh, of course -- because S/// doesn't modify in-place 18:20
japhb mst: Thank you for the Attribute::Lazy pointer 18:21
mst japhb: I have no idea what I'm doing but my mental index of 'stuff written by people who do' is slowly starting to come together :D 18:22
18:23 Actualeyes left
japhb TimToady: S13-overloading refers to 'method postcircumfix:<( )>' and its shorthand 'method &.()'; however, Rakudo seems to implement 'method CALL-ME'; which is "correct"? Is the spec out of date, or NYI? 18:23
mst: *chuckle*
masak japhb: at some point, all those postcircumfixes turned into (multi) subs. this was mostly related to getting better static knowledge, IIRC. 18:26
japhb: but looking at the Rakudo source, I only see subs for the .[] and .{} postfixes. not .()
18:27 domidumont left
masak japhb: ...at this point I almost conjectured why that is, but I'll leave that to people who actually know. 18:27
also, maybe ask on #p6dev? :)
japhb masak: hmmm. Where are those multi subs for the postcircumfixes documented?
18:28 labster joined
masak no idea. 18:31
but you'll find them all defined in src/core/array_slice.pm and src/core/hash_slice.pm
japhb masak: thx 18:35
dalek c: ebc33e1 | (Tom Browder)++ | doc/Language/nativecall.pod:
correct some typos and spellings
18:48
c: 6dc34df | jnthn++ | doc/Language/nativecall.pod:
Merge pull request #436 from tbrowder/master

correct some typos and spellings
18:52 sue left
TimToady japhb: the speculation is out of date 18:59
19:06 yzzy joined 19:08 yzzy left 19:09 yqt joined
MadcapJake TimToady: any chance you saw the RFC on having a grep alternative named "where"? 19:09
19:10 sue joined
RabidGravy to save myself an awkward test, if I have %?RESOURCES in a role, will it get the resources of a module it is applied to in another distribution? 19:11
I'm wondering this because I'd like to make a provider for Template6 that looks in the resources, now clearly it wouldn't be too useful if it could only find the resources in its own distribution 19:16
moritz RabidGravy: I don't think so; but you can always pass %?RESOURCES to thhat method as an argument, no?
RabidGravy this is true 19:17
19:18 sue left, raoulvdberge joined
RabidGravy however the problem with Template6 for instance as the existing interface is you add a bunch of paths, and then when call "process" with the template name it requests each provider in turn to check if it can get the named template 19:20
there is no path to provide the %?RESOURCES
moritz does CALLER::<%?RESOURCES> work? 19:21
19:27 jsimonet left 19:28 jsimonet joined
masak m: sub foo(--> Str(Int)) { return 42 }; foo() 19:30
camelia rakudo-moar a87fb4: OUTPUT«Type check failed for return value; expected Str(Int) but got Int (42)␤ in sub foo at /tmp/tlkxkLyqgq line 1␤ in block <unit> at /tmp/tlkxkLyqgq line 1␤␤»
masak I might have misunderstood how coercien types work (and especially as return types)... should I expect the above to work, as in convert my 42 to "42" in-flight? 19:31
moritz masak: coercion types are only implemented in a select few places, like parameter type constraints. Return values aren't among them :/ 19:36
masak *nod*
mst ah, hence why they don't work in ... fffft
masak well... is my expectation sane, is what I guess I'm asking
19:36 zakharyas joined
moritz m: my Int() $x = '42'; say $x.^name 19:37
camelia rakudo-moar a87fb4: OUTPUT«5===SORRY!5=== Error while compiling /tmp/mTpj5i7g6M␤Coercion Int(Any) is insufficiently type-like to qualify a variable␤at /tmp/mTpj5i7g6M:1␤------> 3my Int() $x7⏏5 = '42'; say $x.^name␤ expecting any of:␤ constraint␤»
mst japhb: I wonder if this means that you could use a coercion type for the $:foo arg to BUILD, plus the wrapper around the accessor
masak do we expect to be able to coerce return types in-flight?
(does *any* other language do that? it's pretty cool.)
moritz I wish we would, and expect we will, eventually
mst certainly, Moose builders+etc. expect their return value to be coerced for them
masak nice! then we'll be as cool as Moose! :D 19:38
mst I forget what Moo does. probably "didn't originally bother because I didn't notice, but somebody made it compatible later"
masak :)
19:38 nowan left 19:40 Begi left, Begi joined 19:41 nowan joined
japhb m: class A { has Int $.base; submethod BUILD(Int() :$!base) { }; method CALL-ME($base) { self.new(:$base) } }; say A("5"); 19:42
camelia rakudo-moar a87fb4: OUTPUT«A.new(base => 5)␤»
japhb mst: ^^
19:42 dvinciguerra left
japhb At least no wrapper needed, and the attribute has the type I want it to. 19:44
mst japhb: right, the wrapper was for if you wanted people to do $a.base("foo") or whatever 19:45
japhb mst: Yeah, for the rw case. Hmmm, that might be a good point. 19:46
19:47 darutoko left
ufobat tadzik, i'll try to add sessions to bailador if you dont mind. 19:50
tadzik ufobat: yes please!
19:58 firstdayonthejob joined
RabidGravy Mmmm sessions 20:00
fancy making a generalised digest authentication module for both clients and servers after that? I keep putting it to the bottom of my list ;-) 20:02
ufobat, you could probably repurpose the Crust session middleware for that with little trouble TBH 20:05
ufobat RabidGravy, you're talking about that, right? github.com/lestrrat/p6-Crust-Middleware-Session 20:06
RabidGravy yeah 20:07
you can ignore the builder stuff, it just makes a wrapper for a psgi app
I am quite liking that part about making the class a Callable and implementing CALL-ME 20:10
TreyHarris This is very strange. This code works when input all at once to the REPL, but fails when entered line-by-line: 20:12
m: my %hd_prices = ( "4000 GB" => 100.38, "3000 GB" => 88.99 ); my %hash_alias = %hd_prices; undefine %hash_alias; %hash_alias := %hd_prices; .say for %hash_alias, %hd_prices
camelia rakudo-moar a87fb4: OUTPUT«3000 GB => 88.99, 4000 GB => 100.38␤3000 GB => 88.99, 4000 GB => 100.38␤»
TreyHarris see qpbpzfpcu72ns4omydxv.oasis.sandsto...rence.html for the REPL output
ufobat RabidGravy, yeah i did read a bit of the code, but i didn't notice nor understand the callable thing. i am going to read the docs. i just crawled through dancer and mojo a bit 20:16
RabidGravy yeah that won't help with the Callable part
ufobat no, but with the session part itself :) 20:17
RabidGravy there is no standard for sessions, make something better than those other things 20:18
TreyHarris It's definitely something to do with the REPL, as both ways (line-by-line or concatenated) work in an executable file.
20:19 sue joined
RabidGravy never use the REPL I'm afraid 20:20
mst Plack::Middleware::Session is a nice 'bare minimum session middleware' on which you could build $whatever 20:22
I would think that, plus Mojo's HMACed cookie thing, plus a perl6-ish OO API atop, would be great
(what exactly 'a perl6-ish OO API' looks like left as an exercise to !mst)
TreyHarris RabidGravy: is that the imperative ("never use the REPL!") or indicative ("I never use the REPL")? 20:23
RabidGravy *I* never use the REPL
mst TreyHarris: english english, "I'm afraid" means "I don't and apologise for that fact impeding you"
well, s/means/implies/
teatime eh? I would say it means ", unfortunately", and is still vaguely ambiguous. 20:24
mst a good start towards parsing RabidGravy might be "mst, but with less hair and more alcohol tolerance"
ufobat what does ::($something) mean?
TreyHarris mst: that wasn't the part I was asking for clarification about. "I'm afraid to tell you, you shouldn't use the REPL" vs "I'm afraid I can't help you, because I don't use the REPL"
RabidGravy the latter 20:25
mst TreyHarris: the former doesn't to my mind elide idiomatically to what he said
20:25 sue left
RabidGravy I don't use the REPL because the convenience doesn't compensate for the editor not being good enough 20:26
jdv79 some repl some dont
RabidGravy and "the editor not being good enough" is just personal taste
mst I tend to use repls very rarely, mostly for providing a demonstration of something that wouldn't fit into a single -e comfortably 20:27
dalek kudo-star-daily: b1f812f | coke++ | log/ (9 files):
today (automated commit)
rakudo-star-daily: 7a8d180 | coke++ | log/ (9 files):
rakudo-star-daily: today (automated commit)
20:27 dalek left
jdv79 [Coke]: what did you do 20:27
20:27 dalek joined, ChanServ sets mode: +v dalek
RabidGravy made cake 20:28
TreyHarris mst: *shrug* there were competing semiotic ambiguities there: standard English's ommission of the subject in imperatives (you never say, "you--never use that thing!" unless it's unclear who you're issuing the order to) and chatspeak's ommission of the subject in the indicative. In my dialect, you always leave the "you" out but you can't leave the "I" out. Doesn't matter, though, he's clarified now :) 20:29
20:29 lizmat joined
RabidGravy oh well, for reference I very rarely use the imperative and nearly always leave the first person out 20:30
maybe it's a south london thing 20:31
TreyHarris RabidGravy: or maybe you speak japanese in english? :)
mst TreyHarris: "I'm afraid" wouldn't to me make sense to follow a hard imperative - "avoid using the repl, I'm afraid" would seem more likely 20:32
20:33 sue joined
RabidGravy y'see I'd say "It's avoid using the repl, I'm afraid" ;-) 20:33
actually that's properly london dialect isn't it?
I'd definitely prefix the imperative with "It's" 20:34
teatime mst: I'm a native speaker, I interpreted it your way, however I have no problem seeing the alternate interpretation, and don't find it difficult to imagine myself using such a construction that way. dunno why you're still on about it :) 20:35
mst RabidGravy: ah, yeah, because then you're basically saying: It's "avoid using the repl", I'm afraid
not one I'd form but one I could definitely parse
TreyHarris mst: might be an AmE/BrE difference--"never went to London before" would not be an acceptable elision in my dialect, so the question was whether to accept a chat elision that wouldn't generally be allowable in spoken speech, or accept "I'm afraid" as shorthand for "I'm sorry to have to suggest". 20:36
teatime lol, you guys. 20:37
mst TreyHarris: right, hence my starting with that thought and mentioning that RabidGravy is also en_UK, albeit a corrupted southern variant
TreyHarris mst: yep, I think you're right. was just adding that the semantic tiebreaker for the syntactic ambiguity you suggested isn't as clear-cut in my dialect as it is in yours. 20:38
mst TreyHarris: right, I wouldn't've expected you to know to use it without knowing RabidGravy's en_UK and that our dialects both tend in that direction. Now I just need to try and remember the converse so I misunderstead colonial english less often 20:39
RabidGravy I think there is a strong possibility that the language I use has become a sort of euroglish 20:42
spent a lot of time conversing online with Dutch and French DJs over the last few years 20:43
teatime mst: does this sound really weird / unnatural to you? "How do you change those lightbulbs?" "Never do." 20:44
or also if it instead was "Dunno; never do that."
RabidGravy I'd parse them both the same
TreyHarris Is there a reason that rakudo precompile files don't include the name of the original? I ask because when something gets stuck, it makes it hard to tell what's going on when you do a ps and only see that the runtime is running ".../resources/{$LONG_HASH} build", rather than, say ".../resources/{$LONG_HASH}-panda build" 20:45
mst teatime: sounds fine to me, 'never do' meaning 'I never do', i.e. losing the preposition, seems quite reasonable
TreyHarris: because the initial directory structure was designed a little too theoretically
TreyHarris: this is one of the things that we've had discussions about changing to be a little more obvious via normal unix tools 20:46
so at this point I'd say the primary reason is "is didn't reach the top of anybody's yak stack yet"
TreyHarris mst: on one of the lists? I was just googling my list mail and didn't find it, but that could just be my search terms were bad. 20:47
RabidGravy I think there is code in there now to keep the original name but it doesn't report it in some places
mst there's been a discussion in here where I explained it to jnthn, who's spent too long in windows and didn't really see the point to begin with (the conversation was productive, the inferential gap was bridged)
and several discussions in the toolchain channel where this stuff actually gets thrashed out 20:48
TreyHarris nods 20:50
Okay, so if I've done a "panda look" into a module, how does panda decide how to build and test that module? "panda build" isn't legal... 20:51
20:53 sue left
TreyHarris I mean, I can do it with 'zef' or with 'ufo', but panda works even when both of those tools are removed from my system. So I'm just wondering how, if I can, do the equivalent of what panda does so I can test it incrementally. 20:55
RabidGravy panda-build, panda-test 20:59
just thing wrappers around those parts of what "panda install" does
thin, thin wrappers 21:00
they might be "thing" wrappers too but hey
I just use "panda-test" all the time when I'm making a module, unless of course I want to run just one test 21:02
TreyHarris RabidGravy: I was familiar with that one. But I've never had panda-build do anything except write out a ~/.perl6/*/precomp/.lock file and leave it behind when it exits :-/ 21:04
RabidGravy yeah, that's all it does if you don't do anything particular to build a module 21:05
TreyHarris have assumed it's a PEBKAC, but haven't found docs to tell me what to fix
21:06 kid51 joined
RabidGravy nah, it just doesn't need to do anything unless you have e.g. a Build.pm 21:07
largely because if all you have are a bunch of scripts and/or .pm files then when it comes to install it just tells rakudo, "here have a bunch of files for this distribution, be a love and install them for me" 21:10
21:11 brabo joined
TreyHarris RabidGravy: right, but that's making it hard for me to figure out how to tell panda, "given this change in ecosystem (github.com/perl6/ecosystem/pull/64/files), please use this new source for that dependency instead of the old one which doesn't work". if this were perl5 I'd look into the module, fiddle with the Makefile.pm, and then let the cpanm or whatever continue on its merry way 21:13
21:13 kid511 joined 21:14 kid51 left 21:17 aindilis left
RabidGravy I'm sorry I don't quite understand the problem 21:19
assuming the version has been upped in the interim then it's just "panda update", "panda install Whatever" 21:20
TreyHarris I didn't, either. Because there was a bug opened against the abandoned version of the module for the problem i'm seeing, I assumed incorrectly that panda was downloading that old version. But I see now it's using the correct new version, it just still has the bug.
RabidGravy eigh 21:21
fork the sucker, clone it, fix the bug "panda install ."
and at option PR the fix 21:22
TreyHarris yep. I just made the error of googling the error, finding it, finding the issue, and assuming that repo was the one I was using without verifying it in the META.info.
RabidGravy it's a young ecosystem, lots of breakage, I've fixed on average one module a week for the last year
21:25 firstdayonthejob left
stmuk_ hmmmm www.perl6.org/specification/ refers to 6.0.0 (and probably shouldn't) 21:26
21:27 firstdayonthejob joined
RabidGravy not being a user of other operating systems is the separator in %?RESOURCES<foo/bar> always a slash or is it platform dependent? 21:31
or at option I could actually look at the source 21:32
21:32 ishanyx is now known as ilbelkyr
orbus how do people generally feel about Travis CI? was thinking about setting it up for a module I wrote, but I'm kind of leery about handing a third party access to my github account 21:34
RabidGravy oh wait, it's *just a key* 21:35
awwaiid orbus: I think it has limited access, like read-only. Since my gh accounts are public anyway... 21:36
orbus well they must need more than simply looking at the source
because anybody can do that
on a public repo
hmmm
RabidGravy orbus, it's OAuth so you can boot it any time you want, but it has never done anything bad, it just installs a commit hook thingy and then checks out the code
21:36 TEttinger joined
orbus oh okay, so they need to setup a hook for whenever you commit 21:37
that makes sense
orbus will think about it
awwaiid orbus: on my setup they have "Read org and team membership, Access commit status, Access deployment status, Access user email addresses (read-only), Write repository hooks"
RabidGravy can't remember the github term for it
awwaiid so yeah, like you said, hooks
orbus well I'm looking at the oauth stuff now
wonder if they really need my email 21:38
awwaiid then for each hook you can inspect what it can do. let's see here...
they use your email as part of their auth, basically
iirc
RabidGravy and it sends you email
awwaiid anyway. They are a very widely trusted org
orbus okay, well that counts for something
RabidGravy but I use a tagged email for gh so I'd know if it leaked
orbus how's that? some service you're using? 21:39
or just the github mail addresses?
TreyHarris orbus: if you have gmail, you can add "+whatever" to your email address
orbus oh, I see
TreyHarris i.e., [email@hidden.address]
orbus prefers not to let google read his email
RabidGravy yeah
TreyHarris orbus: then you should configure whatever email you're using to also route plus-addressed mail correctly. it's usually a simple boolean configuration option in most MDA's. 21:40
RabidGravy it's a sort of traditional de-facto standard, most sensible servers support it
awwaiid orbus: also for hooks, they are notification of event services, not write. "Webhooks allow external services to be notified when certain events happen within your repository."
so you are really giving them read access, and the hooks are so they don't have to poll 21:41
orbus right, that makes sense - but it means they need a certain level of authorization in the account to create the hooks
TreyHarris RabidGravy: most _support_ it, but many don't support it _by default_.
orbus which explains why they want oauth setup
awwaiid orbus: right -- but hooks are only push notifications of things that they could infer from the read access
orbus yeah, that makes sense 21:42
awwaiid at least for public projects, besides the email address, I think this is extremely safe
TreyHarris at least one I'm familiar with looks to see if you have a mailbox with the same name as the +<whatever> -- if you do, it delivers the mail there instead of to INBOX, if you don't it bounces the mail. another, the same but instead of bouncing it puts such mail into spam quarantine
awwaiid now private projects... I can see some reservation there for sure
that would be yet-another-machine that you don't control that has all your assets 21:43
orbus yeah
RabidGravy well travis-ci.org can't see private projects
21:43 rindolf joined, espadrine joined
orbus it looks like they can if you use their paid services 21:43
awwaiid oh right. gotta pay for that
RabidGravy you have to use travis-ci.com and pay them money
orbus oh, I see what you're saying 21:44
awwaiid and at that point I think you're entering into a contract with them, and I betchya one of the things they promise to do under pain of law is keep your code secure
orbus right - although you'd probably want a lawyer to look at that 21:45
awwaiid and looks like they have an on-site version for those who need that extra level but all of the support/convenience of their tooling
(like GH themselves do)
orbus the devil's in the details on this cloud stuff
awwaiid mmmmm delicious clouds 21:46
orbus like I was looking at amazon aws terms of service the other day - reading about uptime promises and stuff
(and to be fair, they seem to have a pretty good record)
but it looks like if it does go down for whatever reason, all they'll do is refund some of your subscription money 21:47
nothing for loss of business or anything
orbus is not a lawyer though
awwaiid they kill our machines all the time. technically they give us notice but ... it is mixed in with a bunch of other noise (is my understanding)
orbus their notification system kind of sucks 21:48
not very surprising
RabidGravy I worked at a large financial organization which one or two other people here are familiar with which used a 3rd party managed VCS and it was screwed down really tight, I guess the lawyers had a lot of fun
21:50 espadrine left
orbus yeah, if I were running a company I'd be pretty leery about hosting code on a managed service 21:50
unless it were open source anyway
RabidGravy we were dealing with some of the most stringent regulatory authorities in the world, this was a pretty tight contract 21:51
orbus yeah, if you had to do it, getting lawyered up is for sure the way to go 21:52
but is that really cheaper than hosting it locally? lawyers are expensive
TreyHarris So what's the correct way to deal with something like github.com/softmoth/perl6-pod-to-m...acfb685eda -- it's a correction for Perl 6.c, but that means if you're using a rakudo-star release, the test fails. 21:53
BenGoldberg masak, C++ allows coercions in-flight... in fact, it does so by default, if you've got an appropriate type of constructor. 21:54
21:55 zakharyas left
RabidGravy when I said "large financial organization" I may have understated it somewhat, it was in part the largest foreign exchange dealer in the world, and is probably one of the top five banks overal 21:56
so "expensive lawyers" are "employees" 21:57
TreyHarris I guess this is just a case where you do "panda --notests install" and move on...
RabidGravy yes 21:58
orbus RabidGravy: well, their time still costs money - but so does an admin to run the VCS 21:59
in a large institution it's probably just down to management's whim
RabidGravy "outsource all the things" 22:00
orbus that's the current trend
after all, if you outsource to another party, you have someone to blame if things go south 22:01
RabidGravy it may cost more to have someone do it, but it's just an annual fee rather than capital expenditure on hardware, notional staff costs with cap ex implications etc etc 22:02
so it goes in a different column in the spreadsheet
orbus that too
mst it's interesting that JIRA licensing seems to work out as really it's a subscription but phrased in such a way it counts as capex 22:03
RabidGravy with a view to encouraging people to use a managed service? 22:07
anyway I'm whacked, I spent most of the day gardening for the first time this year and bits of me ache in un-natural ways 22:09
toodles
22:09 dustinm` left 22:10 jferrero left, jferrero joined 22:12 dustinm` joined
orbus later 22:12
22:18 RabidGravy left 22:38 Begi1 joined 22:39 Begi left, Begi1 is now known as Begi
Begi I've a little question : what does the X::AdHoc name means ? 22:39
22:46 kaare_ left 22:48 firstdayonthejob left
awwaiid Begi: I think these are exceptions where there isn't a specified exception class. So you get htem if you die with a string. They are mentioned doc.perl6.org/language/exceptions 22:49
Begi: basically they are generic exceptions, from what I can tell
22:50 cdg left
Begi awwaiid: yeah, in fact my question was : "from where come this name, what does it mean ?" 22:50
i'm just curious 22:51
awwaiid Begi: It is a built-in exception class that is used in a few internal ways, but I think the most standard user-facing ways is when someone does "die 'blah blah'" 22:53
oh the name
Begi yes, the name :) 22:54
awwaiid AdHoc is from latin, means "formed, arranged, or done for a particular purpose only." . It means it is a one-time thing, built "on the fly"
or you could say it is built as-needed
Begi Okey, intersting, thanks for your answer ! 22:56
22:58 kaare_ joined 23:04 kaare_ left
Begi m: my Int $x = 42; say $x--; # shouldn't be 41 ? 23:06
camelia rakudo-moar b3b24b: OUTPUT«42␤»
Begi m: my Int $x = 42; $x--; say $x--; # shouldn't be 40 ? 23:07
camelia rakudo-moar b3b24b: OUTPUT«41␤»
AlexDaniel m: my Int $x = 42; say --$x 23:08
camelia rakudo-moar b3b24b: OUTPUT«41␤»
AlexDaniel Begi: ↑
Begi Oh, ok
AlexDaniel Begi: that's a traditional difference between postfix and prefix -- 23:09
Begi but why the second $x-- works, not the first ?
geekosaur the second one did work
AlexDaniel Begi: $x-- returns the value and then decrements 23:10
geekosaur postfix -- decrements *after* producing the value
prefix decrements *before*
AlexDaniel Begi: --$x decrements and then returns the value
geekosaur that's why both forms exist
Begi Ok, thanks for the explanations ! I was wondering what was wrong :) 23:11
geekosaur m: my Int $x = 42; $x--; say $x--; say $x;
camelia rakudo-moar b3b24b: OUTPUT«41␤40␤»
AlexDaniel just tried this in python: x=42; print(++x); print(x) # yeah, good job, great. 23:12
m: say -+-+-+-+-+-42 # for those wondering 23:14
camelia rakudo-moar b3b24b: OUTPUT«42␤»
23:19 Begi left
AlexDaniel .tell RabidGravy just in case: if some website is not accepting your [email@hidden.address] email, then use my.n....a...me@gmail.com, because 100% websites accept dots in emails and gmail ignores them all. 23:21
yoleaux AlexDaniel: I'll pass your message to RabidGravy.
23:26 kurahaupo left, kurahaupo joined, kurahaupo left 23:27 cpage_ joined
BenGoldberg m: my int $x := 42; say ++$x; 23:28
camelia rakudo-moar b3b24b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kYvrFHGe1p␤Cannot bind to natively typed variable '$x'; use assignment instead␤at /tmp/kYvrFHGe1p:1␤------> 3my int $x := 427⏏5; say ++$x;␤»
BenGoldberg m: my int $x = 42; say ++$x;
camelia rakudo-moar b3b24b: OUTPUT«43␤»
BenGoldberg m: my int $x = 42; say ++$x for 1..3;
camelia rakudo-moar b3b24b: OUTPUT«43␤44␤45␤»
BenGoldberg m: my int $x = 42; say $x++ for 1..3;
camelia rakudo-moar b3b24b: OUTPUT«42␤43␤44␤»
23:31 kurahaupo joined 23:33 cpage_ left 23:34 BenGoldberg left 23:35 cpage_ joined, BenGoldberg joined 23:39 cpage_ left 23:45 wamba left, mohae joined
ugexe stmuk_: looks like you also have to s/git:/https:/, as `git clone git://gitlab.com/stmuk/p6-task-galaxy.git` does not work, but using https does 23:47
23:47 kurahaupo left, kurahaupo joined 23:48 kurahaupo left, kurahaupo joined 23:49 kurahaupo left, kurahaupo joined, kurahaupo left 23:50 kurahaupo joined 23:56 yqt left