Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-12-02

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:04 AlexDaniel hehe, well…
00:04 AlexDaniel we're down to 178 issues
00:05 AlexDaniel 175 :)
00:05 ZzZombo What is [LTA]? Later Than Anything? :P
00:05 Actualeyes joined #perl6
00:05 timotimo less than awesome
00:06 ZzZombo That makes a bug LTA?
00:06 timotimo there's "lta error" bugs when an error message is unhelpful, for example
00:13 AlexDaniel ZzZombo: for example, let's say you write 「say celling 2.5」 and it says “Undeclared routine: celling at line 25”. That error message is OK, but it would be more awesome if it said “Did you mean ‘ceiling’?”
00:13 BenGoldberg m: say celling 2.5;
00:13 camelia rakudo-moar 843a6b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared routine:␤    celling used at line 1. Did you mean 'ceiling'?␤␤»
00:16 dj_goku joined #perl6
00:16 dj_goku joined #perl6
00:16 AlexDaniel ZzZombo: if you want read more about this, you can probably wait for my advent post… :) https://github.com/perl6/mu/blob/mast​er/misc/perl6advent-2016/schedule#L24
00:16 tailgate first advent is today, right?
00:16 AlexDaniel yea
00:17 tailgate hooray!
00:17 AlexDaniel it's already there: https://perl6advent.wordpress.com/
00:26 japhb [Coke]++  # Advent #1
00:26 canopus joined #perl6
00:27 TimToady though, of course, using qqx is probably asking for an injection attack there, as certain folks are fond of pointing out :)
00:27 timotimo aye
00:28 seatek joined #perl6
00:30 AlexDaniel or more likely so bored pointing it out that they just don't anymore
00:30 AlexDaniel especially with rm -rf
00:31 AlexDaniel and especially when it has pointless "" quotes around
00:32 AlexDaniel u: palm So
00:32 unicodable6 AlexDaniel, U+10877 PALMYRENE LEFT-POINTING FLEURON [So] (𐡷)
00:32 unicodable6 AlexDaniel, U+10878 PALMYRENE RIGHT-POINTING FLEURON [So] (𐡸)
00:32 unicodable6 AlexDaniel, U+1D85B SIGNWRITING HAND-FLAT BETWEEN PALM FACINGS [So] (𝡛)
00:32 unicodable6 AlexDaniel, https://gist.github.com/295e​8506deb1cd70bc509d017307d0dd
00:32 AlexDaniel u: palm face
00:32 unicodable6 AlexDaniel, U+1F926 FACE PALM [So] (🤦)
00:34 AlexDaniel .tell [Coke] why not fix it, by the way? https://irclog.perlgeek.de/​perl6/2016-12-02#i_13664916
00:34 yoleaux AlexDaniel: I'll pass your message to [Coke].
00:42 pierre_ joined #perl6
00:46 aborazmeh joined #perl6
00:46 aborazmeh joined #perl6
00:48 gfldex Technaton: if you go functional you may want to look into https://docs.perl6.org/type/Signature​#Constraining_signatures_of_Callables
00:49 gfldex actually you should read Signature.pod6 first in any case :)
00:51 dalek doc: 7c866c4 | gfldex++ | doc/Type/Signature.pod6:
00:51 dalek doc: link to Block and Sub
00:51 dalek doc: review: https://github.com/perl6/doc/commit/7c866c40b3
00:51 synopsebot6 Link: http://doc.perl6.org/type/Signature
00:54 chris2 joined #perl6
00:57 travis-ci joined #perl6
00:57 travis-ci Doc build errored. Wenzel P. P. Peppmeyer 'link to Block and Sub'
00:57 travis-ci https://travis-ci.org/perl6/doc/builds/180580681 https://github.com/perl6/doc/com​pare/d82871b18153...7c866c40b3fb
00:57 travis-ci left #perl6
00:59 aborazmeh joined #perl6
00:59 aborazmeh joined #perl6
01:05 adrusi joined #perl6
01:15 pyrimidine joined #perl6
01:17 dj_goku joined #perl6
01:23 cpage_ joined #perl6
01:29 lizmat joined #perl6
01:31 lizmat_ joined #perl6
01:32 zakharyas joined #perl6
01:32 seatek getting travis build errors, on dependency HTTP::Server::Tiny when running tests 06-channel.t line 35 - expected a string of numbers, got (Failure). Installed HTTP::Server::Tiny locally and it passes all tests. Have no idea what to do or where to report this ;) soo.. just doing my duty as far as i can and leaving it here ;)
01:37 timotimo hmm
01:37 timotimo commit a bunch of diagnosis output, and see what's going on
01:38 seatek do the tests in HTTP::Server::Tiny?
01:38 yoleaux AlexDaniel: go through clog and see if there are any other < > cases that are obviously wrong
01:39 seatek /do/to/
01:39 timotimo i guess so?
01:40 * timotimo goes to bed
01:40 MasterDuke anyone know my camelia is about 10 commits behind HEAD?
01:40 MasterDuke *why
01:42 AlexDaniel MasterDuke: I guess you should ping nine
01:43 seatek oh it's relying on HTTP::Tinyish doing a network port connection on that failure line. (HTTP:Server::Tiny is). Maybe the wondrous docker environment on travis is having issues with that.
01:44 MasterDuke .ask nine any idea why camelia is stuck at a bunch of commits behind HEAD?
01:44 yoleaux MasterDuke: I'll pass your message to nine.
01:51 seatek can someone kick off a travis build test of p6-HTTP-Server-Tiny ?
02:11 samcv ugh still waiting for MadcapJake to wake up from hibernation and merge my PR for Atom's syntax highlighter
02:11 samcv if anybody knows his email
02:11 samcv well i guess i could use the GitHub one
02:12 samcv gonna do that now
02:16 obfusk joined #perl6
02:18 dj_goku joined #perl6
02:22 bjz joined #perl6
02:22 pyrimidine joined #perl6
02:28 cibs joined #perl6
02:47 ilbot3 joined #perl6
02:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
02:49 AlexDaniel .seen MadcapJake
02:49 yoleaux I saw MadcapJake 17 Jun 2016 21:56Z in #perl6: * MadcapJake is off to dinner
02:50 obfusk joined #perl6
02:50 AlexDaniel samcv: :/
02:51 dj_goku joined #perl6
02:51 dj_goku joined #perl6
02:52 AlexDaniel samcv: according to his linkedin page, he is alive!
02:55 samcv that's good :)
02:56 AlexDaniel but you never know!
02:57 samcv how recent does his linked in say?
03:00 AlexDaniel samcv: well, he disappeared in June, but his linkedin account says that he started working somewhere in July 2016
03:02 samcv ok so he's at least alive as of July
03:03 AlexDaniel maybe
03:04 AlexDaniel or perhaps he set it beforehand :)
03:04 AlexDaniel samcv: what about forking it?
03:04 ZzZombo joined #perl6
03:04 ZzZombo joined #perl6
03:04 samcv I could do that. well i already have a fork on my github
03:04 samcv that would be fine I guess...
03:05 AlexDaniel samcv: if there's no response from him, consider doing so
03:05 samcv okay
03:05 seatek i agree 100%
03:05 AlexDaniel samcv: by the way… why not support all quotes?
03:05 samcv which ones missing?
03:05 samcv i know some are. like, right double quote and then left double quote
03:06 AlexDaniel samcv: https://github.com/hinrik/perl6-mode/issues/12
03:06 AlexDaniel samcv: and what's going to happen if someone writes “foo “bar” baz” ?
03:06 samcv uh AlexDaniel you need to escape them
03:06 samcv and escaping them works fine
03:06 xtreak joined #perl6
03:06 samcv i checeked that
03:07 AlexDaniel m: say “foo “bar” baz”
03:07 camelia rakudo-moar 843a6b: OUTPUT«foo “bar” baz␤»
03:07 samcv unless it lets you do that?
03:07 samcv uhm
03:07 samcv don't do that? :P
03:07 samcv haha
03:07 AlexDaniel no
03:08 samcv i will try and work that out i guess. much better that they actually work right now though.
03:08 AlexDaniel samcv: same goes for #`{ }
03:08 samcv that works
03:08 samcv so does #`()
03:08 AlexDaniel samcv: you mean #`{ foo { bar } baz } works?
03:09 AlexDaniel what about #`〈 〉 ? :)
03:10 AlexDaniel to be honest I don't know how to do it properly
03:10 samcv wait. why did you do multiple { } though..
03:10 samcv m: #`{ {say "hi" } }
03:10 camelia rakudo-moar 843a6b: ( no output )
03:10 samcv hm
03:10 AlexDaniel because it should be balanced just like “ “ ” ”
03:10 samcv well that didn't work before either :P how does it decide?
03:10 samcv ahhh
03:11 AlexDaniel also, it accepts any brackety thing in any amounts
03:11 samcv now it all makes sense :)
03:11 AlexDaniel m: #`〈〈〈〈〈〈〈〈 say "hi" 〉〉〉〉〉〉〉〉
03:11 camelia rakudo-moar 843a6b: ( no output )
03:11 samcv yeah i know that. was just trying to get all the commonish ones and get it working nicely
03:11 samcv so i've just been doing #`(( or #`{{ which won't have that issue
03:11 AlexDaniel that's a good step, yes
03:12 samcv yeah. thanks for the info though, did not realize you could do those things, but makes sense that it 'matches' so if it sees another { then it knows to keep going and not end at the }
03:12 AlexDaniel yup
03:13 AlexDaniel samcv: you probably want to add 「」 though
03:13 samcv hmm?
03:13 AlexDaniel m: say 「hello world」
03:13 camelia rakudo-moar 843a6b: OUTPUT«hello world␤»
03:13 samcv i have that though?
03:13 samcv oh wait maybe i don't hold on
03:14 samcv ah yeah need to add that one too
03:15 samcv that's the same as Q
03:15 AlexDaniel samcv: and while you're at it, perhaps consider adding single and triple variants of the multiline comments
03:16 samcv already has single varients atm
03:16 samcv not triple but can add that too
03:16 AlexDaniel I guess triple and single is what most people use
03:16 AlexDaniel so yeah, that will cover most of it, I guess
03:19 bjz_ joined #perl6
03:23 noganex_ joined #perl6
03:25 James0r joined #perl6
03:29 samcv #`〈say 'test' 〉
03:29 samcv m: #`〈say 'test' 〉
03:29 camelia rakudo-moar 843a6b: ( no output )
03:33 itaipu joined #perl6
03:48 rurban joined #perl6
03:55 AlexDaniel samcv: any unicode quote/bracket is supported
04:10 seatek i may have to try out this atom editor
04:17 seatek the emacs perl6 mode is really, really good. but sometimes it gets confused by < or > with " nearby
04:18 seatek and it has troubles recognizing pod
04:19 cpage_ joined #perl6
04:20 solarbunny joined #perl6
04:21 baest joined #perl6
04:47 cpage_ joined #perl6
04:53 samcv nice he replied on github :)
04:53 samcv emailing him did the trick :P
04:53 samcv 👍
04:54 samcv working on getting qq[] to do interpolation as well. hopefully i can make 'all of the things' work
04:55 AlexDaniel samcv++
04:55 AlexDaniel MadcapJake++ :)
05:00 samcv nice merged :)
05:05 perlpilot joined #perl6
05:08 moritz good morning
05:08 moritz no advent post yet :(
05:09 moritz does anybody have a read-made post yet that we can swap in?
05:09 AlexDaniel wasn't it ready already?
05:09 AlexDaniel I thought it was scheduled
05:10 AlexDaniel moritz: https://irclog.perlgeek.de/​perl6/2016-12-01#i_13662981
05:12 moritz then I'll publish now
05:13 pierre_ joined #perl6
05:13 moritz done
05:20 James0r joined #perl6
05:22 Madcap^Jake^ joined #perl6
05:22 Actualeyes joined #perl6
05:24 MadcapJake howdy all!
05:26 moritz hey, ho, MadcapJake!
05:27 MadcapJake I'm back!
05:27 MadcapJake I was dealing with some crazy life changes and unfortunately had to put my programming time on the backburner
05:28 moritz I hope your life is better now, or at least not crazily changing anymore :-)
05:28 MadcapJake So I really wanted to apologize to everyone for leaving language-perl6fe stagnant, my rakudo PR that never reached the light of day, and my perl6 bug reporter that I never finished :(
05:29 MadcapJake moritz: it has definitely stabilized! I have an apartment, I finally have a laptop I can program on, and I have forcefully carved some time now to get back into the swing of things!
05:30 moritz MadcapJake: \o/
05:30 moritz MadcapJake: and no need to apologize; life always comes first :-)
05:30 samcv nice all the qq constructs work now :)
05:30 samcv though maybe TECHNICALLY not *all* of them. but all the ones that worked for q[] before
05:30 MadcapJake samcv: thanks for finally pushing me back into the fringe :) I needed that!
05:30 samcv haha
05:31 MadcapJake I want to take another look at the Qw regexes because there is either something fishy going on or there is something in there that isn't needed
05:32 pierre_ joined #perl6
05:33 samcv oh?
05:33 samcv it works now though
05:34 MadcapJake huh, I might've been looking at an earlier commit
05:34 samcv as of the 2nd PR the only thing I can think is that Q and q constructs both don't distinguish backslashes.
05:34 samcv ah
05:34 MadcapJake I saw a |Qw at the end that seemed weird
05:35 samcv |Q(?:x|w|ww|v|s|a|h|f|c|b|p)
05:35 samcv there's this, so the q[] and Q[] get highlighted the same.. and can't fix that until we teach q[] that q[\]] ends at the non escaped ]
05:36 samcv so basically all q[] highlight like Q[] should
05:36 samcv but that is how it was before I made any changes
05:37 MadcapJake Bummer I thought I did that right lol
05:37 samcv heh
05:38 samcv i think the "\"" was fine before as well, and i checked that the “ ” and all the other ones i added also work with escaping them+checked the output from rakudo
05:38 AlexDaniel MadcapJake: long time no see ;)
05:38 samcv should be able to do mostly the same thing for q() things as the other. but will have to copy them again :)
05:38 samcv and i just spent a long time copying all of them for the qq :P
05:38 samcv so anotherday will do that
05:39 MadcapJake AlexDaniel: yes! It definitely has! I have been completely away from programming for about 8 months! :O
05:39 MadcapJake I'm still feeling quite rusty
05:39 samcv i was right he was hibernating
05:39 MadcapJake hahaha
05:40 AlexDaniel MadcapJake: for a minute I thought that you were dead
05:40 samcv i did google your name + obituaries/death
05:40 samcv and nothing came up. so that was reassuring
05:40 MadcapJake Nope still alive! I just finally moved out of my poisonous relationship and had to get a lame non-programming job :(
05:41 AlexDaniel fuck poisonous relationships
05:41 MadcapJake amen to that!
05:42 moritz the market being what is is, I guess you'll be able to switch to a programming job soonish
05:42 MadcapJake you really think so? That'd be sweet!
05:44 moritz the day before yesterday I sat in the subway preparing some Perl 6 slides, and a random guy asked me if I was a programmer, they needed somebody to do Java/Spring stuff :-)
05:45 moritz there's a huge demand for developers everywhere, basically
05:45 MadcapJake haha now that is amazing!
05:45 moritz at every conference/meetup/workshop I go, people are hiring developers
05:46 samcv hmm would be nice to get a programming job but never actually been employed as a programmer
05:46 samcv my last job was Jr. Linux Admin
05:46 MadcapJake wow, I guess I need to get out to some of those!
05:47 MadcapJake I have been thinking about presenting or teaching some Perl 6 locally, it would help me brush up and I love teaching.
05:48 MadcapJake samcv: that sounds like a fun job too though! I'd take a job like that in a heartbeat!
05:48 samcv i need to get a new job
05:48 samcv not working atm
05:48 moritz samcv: there area lots of jobs inbetween, with boths ops and programing/automation components
05:48 moritz the whole devops stuff
05:48 samcv yeah
05:48 moritz anybody want to move to Germany? :-)
05:49 moritz we have about a dozen open positions, from straight operating, via devops stuff, to classical application development. Also DBA, data engineer (whatever that is), architects, ...
05:50 MadcapJake hah, that'd be awesome! I am stuck here for another 12 years.
05:51 moritz MadcapJake: where's "here"?
05:51 MadcapJake Eau Claire, Wisconsin, United States
05:52 MadcapJake so petty much the middle of nowhere :) though there is a decent tech community 1.5 hours west of me (Minneapolis/St. Paul)o
05:53 ZzZombo joined #perl6
05:55 samcv I'm half way between San Francisco and San Jose
05:55 samcv MadcapJake, 12 years?
05:56 MadcapJake :) When my son turns 18 (his mom and I share custody)
05:57 * MadcapJake is installing Fedora 25 on his new laptop!
05:57 MadcapJake Are there Perl 6 packages for Fedora?
05:57 AlexDaniel huggable: deb
05:57 huggable AlexDaniel, CentOS and Debian Rakudo packages: https://github.com/nxadm/rakudo-pkg/releases
05:58 MadcapJake Fedora doesn't use debs I though?
05:58 MadcapJake thought*
05:58 MadcapJake huggable: rpm
05:58 huggable MadcapJake, nothing found
05:58 AlexDaniel MadcapJake: go to the link :)
05:58 AlexDaniel I'm not sure if these rpms will work for fedora though
05:59 MadcapJake oh CentOS uses rpm?
06:00 xinming_ joined #perl6
06:00 MadcapJake I know nothing about rpm or Fedora :) but I wanted to try a first-class Gnome experience on this laptop
06:00 MadcapJake (So I guess I know one thing about fedora then :P )
06:01 Cabanossi joined #perl6
06:05 MadcapJake yikes this is super out-of-date: https://fedoraproject.org/​wiki/Features/Rakudo_Star
06:08 samcv nice i got “test “test”” nested quotes working :D
06:08 samcv i want to fix all the things
06:08 MadcapJake wow! How'd you go about that?
06:10 samcv MadcapJake, https://github.com/samcv/language-perl6fe/com​mit/47dbe72881e34ebc34c7c115fa8ba9d9afb22528
06:11 samcv gotta apply it for all the other ones too as well, at least the ones I previously got working. I know i had trouble with some of them
06:12 samcv couldn't get ”this“ working with right quote + left quote
06:12 samcv was having issues
06:12 MadcapJake samcv: I don't follow why you want that behavior, doesn't that not work in Perl 6?
06:13 samcv it does work
06:13 samcv m: say ”this“
06:13 MadcapJake p6: say "test "test"";
06:13 camelia rakudo-moar 843a6b: OUTPUT«this␤»
06:13 camelia rakudo-moar 843a6b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3say "test "7⏏5test"";␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statement modifier…»
06:13 samcv m: say “testing “testing” this”
06:13 camelia rakudo-moar 843a6b: OUTPUT«testing “testing” this␤»
06:13 MadcapJake are those special chars? I can't really tell I guess
06:14 samcv AlexDaniel reminded me that this does work in perl 6 :)
06:14 samcv like fancy double quotes
06:14 MadcapJake oh they're the tiniest bit slanted :P
06:14 samcv there's left double quote and right double quote
06:14 samcv need bigger font maybe?
06:14 samcv well my font is size 10 and i can see the diff. i guess some fonts may not show the diff that much
06:14 samcv actually proba'bly smaller than 10
06:15 MadcapJake i don't even know what this computer uses, but it is using a big super old lcd tv as a monitor lol
06:15 samcv i think it's size 9, idk it's bitmap
06:15 samcv ah
06:15 MadcapJake which is why I'm getting my new laptop up-to-snuff
06:15 samcv but yeah you can nest quotes if you use quotes that are different left/right
06:15 samcv even can do right double quote + left double quote, backwards :P
06:16 MadcapJake that seems bizarre and could prove difficult to capture all cases
06:16 MadcapJake re: language-perl6fe
06:16 samcv yes :P
06:17 samcv yeah that's why i only did left+right and right + right for now
06:21 ZzZombo joined #perl6
06:21 ZzZombo joined #perl6
06:21 MadcapJake good idea
06:23 MadcapJake well I'm gonna fiddle with this laptop some more and then hit the hay. Glad to be back! See you this weekend!
06:24 darutoko joined #perl6
06:25 domidumont joined #perl6
06:29 pyrimidine joined #perl6
06:33 pierre_ joined #perl6
06:35 ZzZombo joined #perl6
06:35 vendethiel joined #perl6
06:36 Wiertek joined #perl6
06:41 samcv AlexDaniel, 「」 works now to, also allows nesting as well
06:41 AlexDaniel nice
06:41 samcv in my branch
06:43 pierre_ joined #perl6
06:51 RabidGravy joined #perl6
06:56 domidumont joined #perl6
06:57 nadim joined #perl6
07:01 domidumont joined #perl6
07:19 ssm joined #perl6
07:42 ribasushi joined #perl6
07:45 ZzZombo joined #perl6
07:47 ZzZombo joined #perl6
07:47 wamba joined #perl6
07:47 ZzZombo joined #perl6
07:49 ZzZombo Should I feel bad for cracking mIRC with a fucking Cheat Engine?
07:50 samcv nice. my 2nd PR now fixes 5 bugs :) https://github.com/MadcapJa​ke/language-perl6fe/pull/43
07:50 samcv gotta start winding down for the day now
07:58 pierre_ joined #perl6
08:05 abraxxa joined #perl6
08:12 ufobat joined #perl6
08:13 vendethiel joined #perl6
08:13 domidumont joined #perl6
08:15 labster joined #perl6
08:26 gfldex i just linked to the advent blog in the noob help section of a forum for some online game
08:27 gfldex \o/ propaganda!
08:42 firstdayonthejob joined #perl6
08:51 samcv heh
08:52 g4 joined #perl6
08:55 Tonik joined #perl6
09:04 pyrimidine joined #perl6
09:04 abraxxa is there an equivalent for File::HomeDir already available in perl6?
09:05 abraxxa https://github.com/azawawi/perl6-file-homedir ;)
09:05 abraxxa so no core support?
09:06 brrt joined #perl6
09:06 gfldex abraxxa: yes
09:07 abraxxa ok
09:09 abraxxa its code is quite....slim: https://github.com/azawawi/perl6-file-home​dir/blob/master/lib/File/HomeDir/Unix.pm6
09:10 gfldex PR welcome I guess
09:10 Guest42590 joined #perl6
09:11 psch i suppose most of those just aren't standardized on *nix, are they?
09:13 lizmat joined #perl6
09:13 nine They aren't. So I'm not sure the interface makes much sense
09:13 yoleaux 01:44Z <MasterDuke> nine: any idea why camelia is stuck at a bunch of commits behind HEAD?
09:14 andrzejku joined #perl6
09:15 nine There are odd local changes in camelia's rakudo checkouts
09:15 abraxxa what is the preferred way of concatenating path? IO::Path?
09:15 abraxxa File::HomeDir returns Str
09:15 nine Because the file system is full...
09:15 nine abraxxa: certainly IO::Path. It's also most convenient.
09:17 abraxxa wow, coredump!
09:17 abraxxa my $hamster-db = IO::Path.new(File::HomeDir.my-data); say $hamster-db;
09:17 abraxxa 2016.11
09:18 abraxxa on this my $hamster-db = IO::Path.new(File::HomeDir.my-data);
09:19 abraxxa is this because of https://github.com/azawawi/perl6-file-homedi​r/blob/master/lib/File/HomeDir/Unix.pm6#L33
09:20 gfldex that should fire an exception
09:21 abraxxa segfaults instead on 2016.11
09:21 abraxxa can someone please confirm this on his system?
09:22 psch eval: role R { method m { !!! } }; class C { my $singleton; method new { $singleton = self.bless does R } }; C.new.m
09:22 evalable6 psch, rakudo-moar abc6439: OUTPUT«(exit code 1) Method 'm' must be implemented by C+{R} because it is required by a role␤  in an…»
09:22 evalable6 psch, Full output: https://gist.github.com/68a6​b4bea4786f4c08dfa5adf1a914c8
09:22 gfldex abraxxa: if you provide a gist with code that would be easy
09:22 pierre_ joined #perl6
09:22 psch well, apparently it's a bit more complicated than the degenerate case :)
09:23 abraxxa perl6 -e 'use v6; use File::HomeDir; say File::HomeDir.my-data;'
09:23 abraxxa this is on Ubuntu 16.10 x64
09:23 psch oh, you're not using .new first
09:23 camelia joined #perl6
09:23 psch ah, but it's not needed because the method does that
09:24 * psch apparently didn't look closely enough at the File::HomeDir source
09:24 abraxxa psch: the docs don't say that you need to: https://github.com/azawawi/perl6-file-homedir
09:24 psch eval: role R { method m { !!! } }; class C { my $singleton; method new { $singleton = self.bless does R }; method n { C.new.m }; C.n
09:24 evalable6 psch, rakudo-moar abc6439: OUTPUT«(exit code 1) ===SORRY!=== Error while compiling /tmp/1B2mScbQae␤Missing block␤at /tmp/1B2mScb…»
09:24 evalable6 psch, Full output: https://gist.github.com/fcbb​82ae4dc5967ef25f682bb2274b4c
09:24 psch eh
09:24 psch eval: role R { method m { !!! } }; class C { my $singleton; method new { $singleton = self.bless does R }; method n { C.new.m } }; C.n
09:24 evalable6 psch, rakudo-moar abc6439: OUTPUT«(exit code 1) Method 'm' must be implemented by C+{R} because it is required by a role␤  in an…»
09:24 evalable6 psch, Full output: https://gist.github.com/b548​149a04d4e2b8ef75c139c8e496cf
09:25 psch yeah, still as-expected...
09:25 psch star-m: role R { method m { !!! } }; class C { my $singleton; method new { $singleton = self.bless does R }; method n { C.new.m } }; C.n
09:25 camelia star-m 2016.10: OUTPUT«Method 'm' must be implemented by C+{R} because it is required by a role␤  in any compose_method_table at gen/moar/m-Metamodel.nqp line 2856␤  in any apply at gen/moar/m-Metamodel.nqp line 2866␤  in any compose at gen/moar/m-Metamodel.nqp line 3039␤  i…»
09:25 psch so it probably comes down to something about splitting stuff across files or maybe architecture?
09:27 gfldex abraxxa: segfault on my site with 2016.11-102-gabc6439
09:27 gfldex nine: please note ^^^
09:28 _28_ria joined #perl6
09:33 ugjka joined #perl6
09:36 cyphase joined #perl6
09:38 sjohnsen joined #perl6
09:39 Cabanossi joined #perl6
09:39 rindolf joined #perl6
09:40 smash joined #perl6
09:40 wamba joined #perl6
09:40 gensym joined #perl6
09:41 pierre_ joined #perl6
09:47 brillenfux joined #perl6
09:53 ZzZombo_ joined #perl6
09:54 ZzZombo joined #perl6
09:54 abraxxa the Date formatter is a simple sub that get's the Date object passed and returns a Str?
09:55 mrdside joined #perl6
09:58 abraxxa I'
09:58 abraxxa I'm trying to have a Date als cli param, my signature is this: sub MAIN( Date :$dt-start = Date.today.truncated-to('month') ) {
09:59 abraxxa but ./hamster-projexport.pl6 --dt-start=2016-11-01 isn't accepted
09:59 psch m: say "2016-11-01" ~~ Date
09:59 camelia rakudo-moar abc643: OUTPUT«False␤»
09:59 psch m: say "2016-11-01" ~~ Date(Str)
09:59 camelia rakudo-moar abc643: OUTPUT«False␤»
09:59 psch m: say "2016-11-01" ~~ { Date.new($_) }
09:59 camelia rakudo-moar abc643: OUTPUT«2016-11-01␤»
09:59 mrdside m: say "2016-11-01" ~~ { Date.new($_) }
09:59 camelia rakudo-moar abc643: OUTPUT«2016-11-01␤»
10:00 psch m: say ("2016-11-01" ~~ { Date.new($_) }).WHAT
10:00 camelia rakudo-moar abc643: OUTPUT«(Date)␤»
10:00 psch abraxxa: you only ever get {Int,Rat,Complex,Num,}Str as arguments to MAIN
10:00 abraxxa psch: then perl6 should die with an error if I specify something else
10:01 psch abraxxa: i don't know if it should, some coercions work just fine
10:02 arnsholt abraxxa: Make it a multi, and let the Str :dt-start candidate convert the string to Date and dispatch to MAIN again
10:02 arnsholt Is one approach
10:03 mrdside can i work with COM?
10:04 psch mrdside: that probably depends on which COM you're talking about
10:05 psch i'd have guessed either .com or COM:, fwiw
10:06 mrdside win32 application interface
10:06 psch so, like, kernel32.dll, user32.dll, those?
10:07 arnsholt abraxxa: Alternatively, you can make the coercion variant work. But since Str doesn't have a conversion method for date you'll have to monkey patch it:
10:07 arnsholt m: use MONKEY; augment class Str { method Date() { Date.new(self) } }; sub foo(Date(Str) $d) { say $d.WHAT; say $d }; foo "2016-12-01"
10:07 camelia rakudo-moar abc643: OUTPUT«(Date)␤2016-12-01␤»
10:08 abraxxa arnsholt: thanks!
10:08 arnsholt I haven't tested it with MAIN, mind, but can't see why it shouldn't work
10:09 psch m: use MONKEY; augment class Str { method Date() { Date.new(self) } }; BEGIN @*ARGS = '2016-11-01'; sub MAIN(Date(Str) $x) { say $x.perl }
10:09 camelia rakudo-moar abc643: OUTPUT«Date.new(2016,11,1)␤»
10:09 arnsholt Oh, nice trick that!
10:10 psch mrdside: considering the WinAPI is purely in C, you'll probably do fine with NativeCall, see https://docs.perl6.org/language/n​ativecall#index-entry-nativecall
10:12 dalek doc: 87f46f6 | gfldex++ | doc/Language/control.pod6:
10:12 dalek doc: show default arguments in pointy blocks
10:12 dalek doc: review: https://github.com/perl6/doc/commit/87f46f6076
10:12 dalek doc: e32aab2 | gfldex++ | doc/Language/control.pod6:
10:12 dalek doc: link to block
10:12 synopsebot6 Link: http://doc.perl6.org/language/control
10:12 synopsebot6 Link: http://doc.perl6.org/language/control
10:12 dalek doc: review: https://github.com/perl6/doc/commit/e32aab2441
10:12 dalek doc: 8b78b8f | gfldex++ | doc/Type/Block.pod6:
10:12 synopsebot6 Link: http://doc.perl6.org/type/Block
10:12 dalek doc: show default arguments in pointy block
10:12 dalek doc: review: https://github.com/perl6/doc/commit/8b78b8fa83
10:15 mrdside psch: i need only create an instance of class interactive and call his methods
10:16 jnthn NativeCall supports calling C++ things, and I *think* that'd be good enough for COM objects, which iirc are set up as C++ objects under the hood. It's been easily a decade since I touched COM though :)
10:18 samcv joined #perl6
10:19 gfldex jnthn: lucky you!
10:19 gfldex m: role ToDate { method Date() { Date.new(self) } }; my @a = '2016-12-24', '2016-12-25'; @a = @a».&infix:<but>(ToDate); say @a».Date;
10:19 camelia rakudo-moar abc643: OUTPUT«[2016-12-24 2016-12-25]␤»
10:20 gfldex abraxxa: you don't need to use MONKEY if you don't like to, see ^^^
10:20 travis-ci joined #perl6
10:20 travis-ci Doc build errored. Wenzel P. P. Peppmeyer 'show default arguments in pointy block'
10:20 travis-ci https://travis-ci.org/perl6/doc/builds/180659312 https://github.com/perl6/doc/com​pare/7c866c40b3fb...8b78b8fa8360
10:20 travis-ci left #perl6
10:20 abraxxa gfldex: which line exactly?
10:20 abraxxa gfldex: role ToDate?
10:20 gfldex yes
10:21 gfldex you can runtime mixin a role on all elements of an array
10:21 abraxxa I don't have an array, just one Date MAIN arg
10:21 gfldex in that care you might need to MONKEY
10:22 arnsholt You could probably use that approach to
10:22 arnsholt With something like "BEGIN @*ARGS>>.&infix:<but>(ToDate)"
10:22 arnsholt *too
10:22 arnsholt Just apply the role to all the arguments
10:23 gfldex if would be careful with that without extra type checks
10:23 psch well, everything in @*ARGS is guaranteed to be Stringy
10:23 arnsholt Yeah, @*ARGS will be Str or FooStr
10:23 psch (except for BEGIN hackery of course)
10:23 gfldex so you need to do a .map with .value ~~ Str ?? .&to-date !! .value
10:24 arnsholt Or would that work?
10:24 arnsholt I'm not sure when @*ARGS is bound...
10:24 arnsholt Probably not BEGIN-time, come to think of it
10:24 arnsholt INIT maybe?
10:24 psch it's bound in main.nqp afair
10:25 arnsholt Yeah, it actually works with BEGIN
10:25 arnsholt Just checked
10:25 gfldex m: role ToDate { method Date() { Date.new(self) } }; my @a = '2016-12-24', '2016-12-25', 'bad'; @a = @a».&infix:<but>(ToDate); say @a».Date;
10:25 camelia rakudo-moar abc643: OUTPUT«Invalid Date string 'bad'; use yyyy-mm-dd instead␤  in method Date at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
10:25 arnsholt Although INIT is probably safer if you're putting it in something module-like
10:26 psch thing is, it doesn't help with the type constraint without touching @*ARGS
10:26 psch which means that 'program.pl --date=not-a-date' dies confusingly
10:27 psch considering augment is lexical i'd probably prefer that as a solution
10:27 psch alternatively there's always "rethink coercers and implement the rethought solution" :P
10:34 simcop2387 joined #perl6
10:51 abraxxa I'd prefer a custom (sub)type of Date that supports the coersion
10:51 psch that's the thing, coercers are not attached to the target type, but to the original type
10:52 psch so, to have a subtype of Date that can be coerced to from Str you'd need to change that
10:52 psch or you teach Str how to coerce to Date
10:52 Wiertek joined #perl6
10:52 dalek doc: bc67dc3 | gfldex++ | doc/Type/Signature.pod6:
10:52 dalek doc: add MONKEY example to Coercion Type
10:52 dalek doc: review: https://github.com/perl6/doc/commit/bc67dc3404
10:52 synopsebot6 Link: http://doc.perl6.org/type/Signature
10:53 gfldex some soft of subset-rw would be nice in general
10:54 timotimo subset-rw?
10:54 gfldex instead of doing a type/value check, modify the value in place
10:54 jnthn That's exactly what coercion types are meant to be for...
10:55 timotimo right
10:55 gfldex MONEKYs are scary :(
10:55 timotimo no need for monkeys, i don't think
10:55 jnthn Not that it's also speculated in the design docs that Foo($bar) would call Foo.new($bar) if $bar.Foo doesn't exist
10:55 timotimo oh, because you would have to add the method to the thing
10:55 jnthn *Note
10:55 psch huh, that shouldn't be too hard to implement, actually
10:55 jnthn Indeed
10:56 jnthn And would probably resolve a lot of the issues
10:56 gfldex i can't wait to doc that :->
10:56 psch well, at least for r-m.  not sure about r-j right now
10:58 abraxxa got to go, thanks!
11:02 lucasb_ joined #perl6
11:03 lucasb_ so, the theme used in the perl6advent blog is a standard wordpress thing?
11:04 gfldex yes, and we can't really do much about it
11:04 lucasb_ wondering if there isn't a more "readable" theme available :)
11:04 lucasb_ gfldex: ah, ok
11:04 babydrop lucasb_: what's wrong with the current readability?
11:05 gfldex it's very scrolly
11:05 lucasb_ babydrop: I don't know, maybe it's just my eyes
11:05 lucasb_ maybe too narrow
11:05 chris2_ joined #perl6
11:05 gfldex it is very narrow and the text is quite large, what results in scrollyness
11:06 gfldex the font even
11:07 babydrop You people are too spoiled.
11:07 dalek ecosystem: af96224 | seatek++ | META.list:
11:07 dalek ecosystem: https://github.com/adaptiveoptics/HTML-Tag
11:07 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/af962245e4
11:08 gfldex lucasb_: next year we do the bloody thing ourselves :)
11:08 babydrop The designer obviously made the width just big enough to fit on a screen: http://i.imgur.com/o75tYnE.png
11:09 gfldex my screen is 4.5 times as big as the designers it seams
11:10 babydrop Well, there's your problem! :)
11:10 lucasb_ BTW... in the post: 'head -1 path:map04727.ko'. it was really intended to grep a file named "path:..." ?
11:10 lucasb_ s/to grep/to head(1)/
11:11 lucasb_ nevermind. I just learned that ':' is a valid filename character
11:11 ufobat did this happen to someone else too after panda install Task::Star? "resolve stage failed for Task::Star: Dependency Test::Mock is not present in the module ecosystem"
11:11 babydrop lucasb_: not on Windows
11:12 timotimo ufobat: may need a "panda update"?
11:12 itaipu joined #perl6
11:12 ufobat is a fresh rakudobrew build panda not sufficient?
11:13 travis-ci joined #perl6
11:13 ufobat but nope, panda update doesnt help
11:13 travis-ci Doc build passed. Wenzel P. P. Peppmeyer 'add MONKEY example to Coercion Type'
11:13 travis-ci https://travis-ci.org/perl6/doc/builds/180668356 https://github.com/perl6/doc/com​pare/8b78b8fa8360...bc67dc3404ef
11:13 travis-ci left #perl6
11:14 gfldex .tell kyclark please don't teach your students to use ‚:‘ in file names. That will end in tears.
11:14 yoleaux gfldex: I'll pass your message to kyclark.
11:15 babydrop huggable: advent
11:15 huggable babydrop, https://github.com/perl6/mu/blob/ma​ster/misc/perl6advent-2016/schedule
11:16 babydrop Still 9 spots available! Sign up to blog a post!
11:19 babydrop ufobat: just use zef instead of panda
11:19 babydrop rakudobrew build zef
11:23 tinitus joined #perl6
11:24 ufobat :D okay
11:25 tinitus_ joined #perl6
11:26 mrdside can i use win32::ole in 6th version? (i'm new in perl)
11:26 timotimo you can use Inline::Perl5 to use the perl5 module
11:28 tadzik yay, london
11:29 timotimo yay
11:29 _28_ria joined #perl6
11:32 lizmat joined #perl6
11:36 babydrop mrdside: it's more of a 1st version of Perl 6 :)
11:37 babydrop mrdside: with Perl 5 continuing its versioning... I think version 26 is in the making
11:38 ilmari yes, the current version is 24, 26 is coming out next spring
11:38 M_o_C joined #perl6
11:39 babydrop And I guess ours is not really 1st version, but 105th version, with version 106 coming out later this month
11:40 psch isn't it more like the 105th version of the implementation of the 1st version of Perl 6..?
11:40 psch *one implementation
11:40 babydrop Yeah, that'd be more correct.
11:41 babydrop I wonder if we should release on 25th this month :P You know, to keep the joke going.
11:45 psch 6.d isn't ready yet is it?
11:45 psch 'cause that'd be for christmas
11:45 timotimo nah, we still want to have non-blocking async for that
11:45 setty1_ joined #perl6
11:47 jnthn non-blocking async?
11:47 babydrop psch: no, it'd be for Diwali
11:47 jnthn Oh, non-blocking await :)
11:47 timotimo er, yes %)
11:48 arnsholt Next Diwali is 18th or 19th October 2017, according to Wikipedia =)
11:48 ufobat :-( https://nopaste.me/view/82a7091b babydrop zef isnt working either
11:49 babydrop :/
11:49 babydrop worked for me....
11:49 babydrop arnsholt: perfect!
11:50 ufobat it is my bad karma - i have to less time for perl6 and thats camelias revenge!
11:50 babydrop ufobat: well, there's an easy solution.
11:51 babydrop ufobat: don't install Task::Star!
11:51 babydrop ufobat: and report that issue on http://modules.perl6.org/dist/zef
11:51 babydrop 'cause it works fine on whatever version I got
11:52 babydrop This is Rakudo version 2016.11-58-g2efeda0
11:52 babydrop I installed it when ^ that was the latest Rakudo's commit
11:53 babydrop zef install Test::Mock that is is what works
11:55 ufobat No such method 'contains-spec' for invocant of type 'Candidate' <- is this because of Test::Mock?
11:57 babydrop "===> Install [OK] for Task::Star"
11:57 babydrop ufobat: don't think so
11:58 babydrop I don't know why panda thinks it ain't got a `provides` either, 'cause it does.
11:58 babydrop Since Apr 1, 2015
11:59 babydrop Oh wait, I confused the opened issue on that module and your issue :D
11:59 babydrop But still, it is in the ecosystem JSON file so I don't know why it thinks it ain't there.
12:01 ufobat zef install Test::Mock works..
12:11 lucasb_ I'm wondering how many times, you core dev people, build rakudo in a day?
12:11 lucasb_ I'm on 2016.11 and thinking about building the latest revision every so often
12:17 maybekoo2 joined #perl6
12:18 gfldex lucasb_: while true; do ./pull-and-build; sleep 3600s; date -Iseconds; done
12:20 gfldex https://gist.github.com/anonymous​/32067edad7f14b20e8469c115bf55353
12:21 lucasb_ gfldex: so, build every one hour (if there was a change) ?
12:21 gfldex yes
12:21 lucasb_ gfldex: interesting! thanks for sharing
12:22 babydrop lucasb_, several times per bug fixed.
12:23 babydrop lucasb_, I recommend using compiler releases, instead of building every few commits
12:23 pyrimidine joined #perl6
12:24 lucasb_ babydrop: yes, I run the monthly releases... but then, I miss the action happening in the middle of the month
12:24 lucasb_ for example, bugs already fixed
12:24 pmurias joined #perl6
12:25 babydrop lucasb_, but what about bugs introduced and works in progress? Latest commit currently won't let your MAIN accept string "False" or string "True", for example, because we are working on making enums work in MAIN
12:25 pierre_ joined #perl6
12:26 babydrop And then you'd come here and say that our stuff's broken and we're terrible :)
12:26 gfldex and we would give him a hug
12:26 babydrop heh
12:26 lucasb_ you are all terrible
12:26 babydrop :)
12:26 * gfldex hugs lucasb_
12:26 lucasb_ lol, just kidding
12:27 lucasb_ babydrop: I understand your point
12:27 lucasb_ the "earlier adopter" needs to decide for himself what kind of intimacy he wants to have
12:27 lucasb_ one way to look at the rakudo users is to separate them in 3:
12:27 lucasb_ * the star users
12:28 lucasb_ * the montly users
12:28 lucasb_ * the repo users
12:28 psch hasn't star been turned monthly by stmuk_ by now..?
12:28 lucasb_ maybe most users pick one and stick with it
12:28 canopus joined #perl6
12:28 lucasb_ psch: indeed, stmuk_++
12:36 M_o_C joined #perl6
12:55 vytas joined #perl6
13:07 babydrop m: my %hash{Any}; %hash{Mu} = 42;
13:08 camelia rakudo-moar abc643: OUTPUT«Cannot resolve caller postcircumfix:<{ }>((my Any %{Any} = ), Mu, 42); none of these signatures match:␤    (\SELF, \key)␤    (\SELF, \key, Mu \ASSIGN)␤    (\SELF, \key, Mu :$BIND! is raw)␤    (\SELF, \key, :$delete!, *%other)␤    (\SELF, \key, :$…»
13:08 user9 joined #perl6
13:10 babydrop Things would be easier if bdf would at least idle in the chat...
13:10 rindolf joined #perl6
13:11 babydrop PSA: in Advent UI <blah> is parsed as an HTML tag, you need to write angle brackets as &lt;blah&gt;
13:12 Coffeeframe joined #perl6
13:19 prammer joined #perl6
13:19 Coffeeframe Mornin' folks
13:22 babydrop \o
13:24 Coffeeframe How is babydrop
13:25 babydrop All systems optimal.
13:25 Coffeeframe Fair
13:36 prammer joined #perl6
13:39 wamba joined #perl6
13:44 perlpilot joined #perl6
13:46 toolforger joined #perl6
13:47 lucasb_ did you see the --ll-exception file path separator inconsistency RT ticket?
13:47 [Coke] .
13:47 yoleaux 00:34Z <AlexDaniel> [Coke]: why not fix it, by the way? https://irclog.perlgeek.de/​perl6/2016-12-02#i_13664916
13:49 lucasb_ I just wanted to make the important observation that if the user had installed rakudo in directory "C:\o"
13:49 lucasb_ he would have ended up with a happy path: C:\o/share/perl6/runtime/CORE.setting.moarvm
13:51 rindolf joined #perl6
13:51 toolforger lol
13:51 jnthn So...we close it as "feature"? :P
13:51 nine +1
14:01 [Coke] AlexDaniel, TimToady; Added a one liner at the end, leaving that as an exercise to the reader.
14:01 ZzZombo joined #perl6
14:01 ZzZombo joined #perl6
14:02 pyrimidine joined #perl6
14:04 [Coke] Day 2. 6 gaps in the calendar left. first gap in 8 days. zoffix doing 4 posts still, Coke 2. looks like day 3's post is queued up.
14:04 babydrop El_Che should be signing up for writing one too.
14:05 [Coke] (day 3) ah draft is there, but it's not scheduled.
14:06 babydrop And I've just finished with writing subset post, so Zoffix is doing only 3 posts still :}
14:06 [Coke] he's listed for 4.
14:07 babydrop Well, yeah, but one is done already :)
14:08 Coffeeframe left #perl6
14:10 pierre_ joined #perl6
14:12 dalek doc: 1ec05fb | francois@avalenn.eu++ | doc/Language/quoting.pod6:
14:12 dalek doc: multiple heredoc beginning in the same line
14:12 dalek doc:
14:12 dalek doc: This is to document the fact that, as in POSIX shell, you can use
14:12 dalek doc: multiple HEREDOC strings in the same line.
14:12 synopsebot6 Link: http://doc.perl6.org/language/quoting
14:12 dalek doc: review: https://github.com/perl6/doc/commit/1ec05fbe14
14:16 pyrimidine joined #perl6
14:16 El_Che babydrop: I had a blog planned about writing a small script, but due to time constraints at that moment I never published. (I asked for input here, but I haven't integrate the comments yet): http://claudio.ulyssis.be/​var/tmp/p6smallscript.html
14:17 [Coke] avalenn: Wait, you HAVE commit bits to the repo?
14:17 avalenn nope, at least I don't know about it, timotimo commited it
14:17 timotimo ah, you're that person
14:17 * [Coke] guesses he or zoffix should have claimed the chrs/ords ticket.
14:18 babydrop ?
14:18 [Coke] oh, dalek is lame and doesn't show committer vs. author.
14:18 [Coke] babydrop: since I gave basically the same reply and rejected the ticket.
14:18 timotimo ah, that's what got you confused
14:18 timotimo well, that's the good thing about git am. it keeps the committer
14:18 cdg joined #perl6
14:19 [Coke] I was going to say, if you had commit bits, sending the patch was even MORE confusing.
14:20 babydrop Oh heh
14:21 babydrop At least our responses agree :)
14:21 7GHAAUWOL joined #perl6
14:21 7GHAAUWOL Doc build errored. francois@avalenn.eu 'multiple heredoc beginning in the same line
14:21 7GHAAUWOL https://travis-ci.org/perl6/doc/builds/180713230 https://github.com/perl6/doc/com​pare/bc67dc3404ef...1ec05fbe14c2
14:21 7GHAAUWOL left #perl6
14:23 timotimo it was unable to find Pod::To::BigPage
14:23 timotimo did the ecosystem get b0rked by the addition of a b0rked url or something like that?
14:24 babydrop The ecosystem is fine. It's panda that broken.
14:25 babydrop Same issue as ufobat had this morning with Test::Mock, I presume.
14:25 babydrop Works fine with zef
14:27 timotimo potentially
14:28 ufobat well for me zef cant install Task::Star as well, but a different reason, maybe?
14:30 ufobat currently i am installing module by module, till i find whats the problem ;)
14:31 ufobat one seems to be Terminal.:ANSIColor
14:31 ufobat https://nopaste.me/view/b175459a
14:31 babydrop Have you tried using --debug switch instead?
14:31 timotimo i'm running ecosystem-api's update.sh now
14:31 timotimo what's taking it so long? o_O
14:32 babydrop ufobat: hm. That was removed from that module's meta 5 days ago :/
14:33 babydrop the problem I mean
14:34 timotimo seems like the update script could really enjoy some fasting-up-attention
14:34 ufobat does the update.sh take more then 5 days or what ;)
14:35 timotimo i guess i'll find out once it finishes
14:35 ufobat hehe :D
14:35 babydrop timotimo: doesn't it do ~770 HTTP requests to download meta files of each module?
14:35 timotimo yeah
14:36 timotimo it's stopping at 0% cpu usage
14:36 timotimo maybe it's trying to be nice to the githubusercontent server by not flooding it with requests?
14:36 babydrop Nope.
14:36 toolforger I do not think that 770 requests are any strain on githubusercontent
14:36 toolforger Unless that's done from a gazillion machines, anyway
14:37 timotimo um ... the update script is written in perl5
14:37 babydrop Yeah
14:37 babydrop Why "um"? :)
14:38 timotimo i can't make that faster by improving rakudo
14:38 timotimo it has a suspicious $ua->timeout(10)
14:38 babydrop Why suspicious?
14:39 timotimo well, could it be timing out?
14:39 timotimo i do see some 500 messages
14:39 babydrop Not at the same time, and any timeouts would end up being printed at the end
14:39 timotimo OK.
14:39 rurban joined #perl6
14:39 babydrop Here: https://github.com/perl6/ecosystem/blo​b/master/server/updatelist.pl#L58-L60
14:39 itaipu joined #perl6
14:40 yeahnoob joined #perl6
14:40 timotimo OK
14:40 timotimo what's the url to get at that .json file via our http server?
14:40 babydrop There's one of seatek's modules crapping out: http://ecosystem-api.p6c.org/errors.json
14:41 timotimo nyup
14:41 timotimo an extra , before }
14:41 timotimo in the provides ssection
14:41 timotimo i'll pullrequest it
14:42 babydrop toolate :)
14:42 timotimo dangit
14:43 timotimo i think instead of re-making the log file for each update we should just concat and logrotate
14:44 dalek ecosystem: fc22aae | (Zoffix Znet)++ | README.md:
14:44 dalek ecosystem: List errors.json location too
14:44 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/fc22aae853
14:44 timotimo cool
14:46 timotimo babydrop: maybe we want buggable to learn about "module blah not found in the ecosystem" errors in travis?
14:46 babydrop Just in case our doc build fails due to that? Pass
14:46 timotimo OK
14:47 babydrop I mean even that error is bogus. That module *is* in ecosystem
14:48 babydrop You can see it in http://ecosystem-api.p6c.org/projects.json
14:48 timotimo indeed
14:49 babydrop star: use LWP::Simple; use JSON::Fast; say (from-json LWP::Simple.get: 'http://ecosystem-api.p6c.org/projects.json').elems
14:49 camelia star-m 2016.10: OUTPUT«734␤»
14:49 pyrimidine joined #perl6
14:49 babydrop star: use LWP::Simple; use JSON::Fast; say (from-json LWP::Simple.get: 'http://ecosystem-api.p6c.org/projects.json').grep: *.<name> eq 'Pod::To::BigPage'
14:49 camelia star-m 2016.10: OUTPUT«({author => Wenzel P. P. Peppmeyer, depends => [IO::Socket::SSL LWP::Simple], description => Render many pod6-files into one (big) html-file., license => https://opensource.org/licenses/Artistic-2.0, name => Pod::To::BigPage, provides => {Pod::To::BigPage => l…»
14:49 * babydrop shrugs
14:49 babydrop No commits to panda since Oct 22 and it's using JSON fast that has no issues reading teh projects.json
14:50 cdg_ joined #perl6
14:53 toolforger I've been looking into the Java classloader stuff
14:54 toolforger Turned out that depending on how you set your classloaders up and what kinds of stuff they can load, you either get class incompatibility problems or not
14:55 toolforger The way NQP on Java is doing it was fine, so my worries turned out to be unfounded
14:55 toolforger On that route, I learned more than I ever wanted to learn about classloading ;-)
14:56 toolforger one of the thing I did not want to learn: You cannot assume that subclassing ClassLoader will work in every environment
14:56 toolforger Applets forbid it
14:57 toolforger I have no idea how relevant that would be
14:57 toolforger Application containers *may* forbid it, and that's really relevant because that's where 90% of Java code lives
14:58 timotimo oof
14:58 telex joined #perl6
14:58 toolforger sorry for TMIing everybody :-D
14:58 timotimo no problem
14:59 toolforger real question for me is where to take all that info
15:05 pmurias are we concerned with supporting Applets?
15:05 brillenfux joined #perl6
15:05 toolforger In the Java world, they are mostly considered a security problem
15:06 toolforger Still, a lot of these are being used in corporate intranets
15:06 [Coke] pmurias: no, I dont' think we'd care if we didn't run in an applet.
15:06 toolforger OTOH most of that is legacy, so no real playground for Perl6
15:06 toolforger OT3H, you never know how big an ecological niche will be unless you try it
15:07 [Coke] we can't support it as is. I wouldn't put in cycles to support applets.
15:07 [Coke] let's get it working and fully featured in one setting first. :)
15:07 toolforger Yeah, probably not worth it
15:07 toolforger App containers are really important
15:07 bstamour joined #perl6
15:08 timotimo it seems like the ecosystem updater stops as soon as it finds a single broken json
15:08 toolforger I don't know whether a typical setup allows your own classloaders though
15:08 bstamour Has anyone successfully built HTTP::Server::Async on Windows 10?
15:08 wamba joined #perl6
15:08 timotimo oh, wrong
15:08 timotimo it's just that that line that errors is the very last line in the file
15:10 timotimo babydrop: could URLs that give something other than success be factored into the errors list, too?
15:10 timotimo rather than silently being dropped?
15:12 cibs joined #perl6
15:16 telex joined #perl6
15:19 cibs joined #perl6
15:20 dalek ecosystem: 1042dcf | (Zoffix Znet)++ | server/updatelist.pl:
15:20 dalek ecosystem: Log failed HTTP requests in errors.json
15:20 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/1042dcf921
15:20 babydrop #Untested
15:20 timotimo TYVM
15:22 ugexe zef was failing to install Task::Star for ufobat because 1) Terminal::ANSIColor listed `nqp` as a depends until a few days ago 2) ufobat likely had a stale copy of the ecosystem package list which still listed `nqp` as a dependency 3) zef no longer tries to guess pragmas, and puts the onus of a correct `depends` listing on the module authors 4) Terminal::ANSIColor is still versioned at '*', so even if the
15:22 ugexe package list alone was updated zef has no way to know its cached copy is stale
15:22 timotimo damn
15:22 timotimo that's a good explanation
15:23 timotimo it looks like two ecosystem updates are running in parallel right now
15:24 kurahaupo__ joined #perl6
15:25 ugexe sounds like it might not be using flock? (flock -n ~/.cron/.lock -c '$command')
15:25 cibs joined #perl6
15:25 geraud joined #perl6
15:26 timotimo i expect someone was naughty like i was and ran the script manually
15:27 prammer joined #perl6
15:28 timotimo well, it just started anew
15:28 timotimo so there's that
15:31 skids joined #perl6
15:32 cibs joined #perl6
15:33 timotimo i wonder why the update log only updates in big batches, rather than line-by-line
15:33 khw joined #perl6
15:33 geraud joined #perl6
15:33 toolforger usually that's because the output is blocked
15:33 timotimo it goes directly into a file, why would it block?
15:33 timotimo i'd rather assume it gets buffered a whole lot
15:34 toolforger I meant buffered
15:34 timotimo oh
15:34 timotimo how do you tell perl5 to flush on newline?
15:34 toolforger don't ask me, my Perl expertise is pretty limited
15:35 timotimo mine doesn't exist :)
15:35 * babydrop poikes dalek
15:35 toolforger Issue with "flush on newline" is that you get a whole lot of blocking IO calls, so do not really want to do that
15:35 toolforger Usually you want to flush every second or so
15:35 toolforger for logs, anyway
15:35 babydrop timotimo: I commited a fix for that
15:35 babydrop https://github.com/perl6/ecosystem/commit​/cabfdbe2588b51787b65617322f308866aa3c0cc
15:35 timotimo cool!
15:36 timotimo https://raw.githubusercontent.'"' expected, at character offset 537 (before "},\n    "depends" : ...") at server/updatelist.pl line 29, <$_[...]> line 749.
15:36 timotimo it still does that >:(
15:36 timotimo maybe it's because of stdout vs stderr?
15:36 timotimo that'd be pretty crappy :)
15:36 babydrop Does what?
15:36 babydrop I'm not following
15:36 timotimo https://raw.githubusercontent.'"' expected, at character offset 537 (before "},\n    "depends" : ...") at server/updatelist.pl line 29, <$_[...]> line 749.
15:36 timotimo com/slobo/Perl6-X11-Xlib-Raw/master/META6.json 200
15:36 dalek ecosystem: cabfdbe | (Zoffix Znet)++ | server/updatelist.pl:
15:36 dalek ecosystem: Turn off buffering
15:36 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/cabfdbe258
15:36 timotimo ^- this, in the log
15:37 toolforger stdout vs stderr is just a question of default settings if my Posix memory serves me well
15:37 babydrop timotimo: It's this line: https://github.com/perl6/ecosystem/b​lob/master/server/updatelist.pl#L47
15:37 babydrop timotimo: but what's wrong with it?
15:37 timotimo well, yeah. what i mean is that it outputs the urls to stdout, but the warns and stuff go to stdout
15:37 timotimo babydrop: it splits the url in half
15:37 AlexDaniel joined #perl6
15:37 babydrop oh
15:37 pyrimidine joined #perl6
15:37 timotimo New run at
15:37 timotimo Fri Dec  2 15:28:01 UTC 2016
15:37 timotimo thubusercontent.com/MadcapJa​ke/rabble/master/META6.json 200
15:38 timotimo ^- also fantastic
15:38 AlexDaniel babydrop, [Coke]: I have actually confused .chars with .chrs /o\
15:38 babydrop :)
15:39 babydrop AlexDaniel: the two responses is just 'cause we responded at the same time... We weren't ganging up :)
15:39 geekosaur something above the level of that script is redirecting stderr to stdout. this combines weirdly with block buffering on non-terminals
15:39 cibs joined #perl6
15:39 timotimo when you use a shell's redirect feature, it'll usually give you the same file descriptor for stdout and stderr inside the program
15:40 geraud joined #perl6
15:40 timotimo so you get the same semantics as using "say" for all things
15:40 toolforger Not so weirdly - output on nonterminals is buffered at some arbitrary block size, 1k or something
15:40 timotimo except the perl5-level file objects may differ and they might not have the same "after i wrote something, i'll flush" setting or something similar
15:40 timotimo so it's only the same thing on the posix level
15:40 toolforger stderr is typically line buffered
15:41 geekosaur not exactly, no. they remain different file descriptors, they are dup()d together and only linked at kernel level. in particular, fd 2 and fd 3 will be buffered independently
15:41 geekosaur er, f 1 and fd 2
15:41 toolforger so stdout stopped outputting at some multiple of block size, then stderr is interspersed
15:41 geekosaur the shell cannot tell it "use fd 1 as your error output"; it always uses fd 2
15:41 toolforger what geekosaur says
15:41 dalek Inline-Perl6: 0b671df | niner++ | / (2 files):
15:41 dalek Inline-Perl6: Allow for other threads to steal our GC work while we're running Perl 5 code
15:41 dalek Inline-Perl6:
15:41 dalek Inline-Perl6: The very latest moarvm exposes MVM_gc_mark_thread_blocked which we can
15:41 dalek Inline-Perl6: use to tell the VM that it's safe for other threads to steal our GC work.
15:41 dalek Inline-Perl6: review: https://github.com/niner/Inl​ine-Perl6/commit/0b671df151
15:41 geekosaur stderr may well be line buffered by default, though
15:42 babydrop timotimo: you can try changing this `warn` to `print` (though then all the stuff will go to STDOUT): https://github.com/perl6/ecosystem/b​lob/master/server/updatelist.pl#L47
15:43 * babydrop returns to doing work stuff
15:43 geekosaur nor is there any good way to ask whether fd 1 and fd 2 are the same kernel-side handle, aside from evil /proc hackery that is nonportable
15:43 dalek Inline-Perl6: d9816ba | niner++ | Changes:
15:43 dalek Inline-Perl6: Version 0.08
15:43 dalek Inline-Perl6: review: https://github.com/niner/Inl​ine-Perl6/commit/d9816ba4c4
15:45 cibs joined #perl6
15:45 geraud joined #perl6
15:50 moritz so, two day Perl 6 training is over
15:50 moritz now on my way back, waiting 4 hours at the airport
15:50 nine moritz: did you learn a lot? ;)
15:50 moritz nine: I hope the students did :-)
15:51 moritz nine: I did learn some things; for example that many Perl 5 programmers are far from fully using Perl 5's potential
15:51 moritz there were 3 perl 5 programmers and one very experienced DBA who occasionally also writes code
15:52 moritz none of them used unit tests, or any automated testing, for that matter
15:52 moritz Test.pm seemed to really surprised them
15:52 moritz never heard of Moose
15:52 lucasb_ "Perl 5 programmer who is far from fully using Perl 5's potential" <-- I found a description for myself
15:52 moritz no use of map, grep or other functional concepts
15:53 moritz they liked Perl 6, but I thought I would provided them more value with a p5 craftsmanship course
15:53 moritz (oh, and CGI.pm for web programming)
15:53 nine that's kinda sad :/
15:53 moritz aye
15:53 moritz on the other hand they were bright folks, and open to new ideas
15:54 geraud joined #perl6
15:54 moritz so I do see hope
15:54 nine Ha! Now that I'm on my way to London, I stumble of the TripAdvisor page for the surprisingly cheap hotel I booked and...the reviews remind me of the disaster I booked the last time I went to LPW :D
15:55 moritz :/
15:55 moritz oh, and they LOVED sub MAIN
15:55 moritz i asked them to do small exercises, and the second one included MAIN
15:55 babydrop heh, hilarious... one of my coworkers is apparently infected with ransomware... My share I use to transfer large files to them has all the files encrypted with an HTML file saying I need to follow a process to decrypt them :)
15:56 moritz and even knowing it's not necessary, and tough I don't mentioned it from there on, most of them used MAIN for nearly all subsequent excercises
15:56 nine :) I'm not surprised. Threading and MOPs are cool but at the end of the day, the things that help me most are builtin IO::Path and MAIN.
15:56 nine Holy cow I almost missed my boading
15:56 jnthn o.O
15:57 jnthn Please no disaster this time :P
15:57 moritz now I feel bad for distracting you. Almost.
15:57 moritz :-)
15:57 jnthn Have a good flight, nine!
15:57 moritz I didn't get into the MOP at all
15:57 moritz and had only 5ish slides on promises/channels, a short mention of supplies, and a single excercise
15:58 moritz which, on a Friday afternoon, already strained their capacity :-)
16:01 nine This was cloooose
16:02 moritz glad you made it after all!
16:02 timotimo say, if i want to get an impression of how out of tune this piano is, what sequence of keys should i press and record to show to someone with good ears?
16:02 nine And why? Becausebthis time I was at the airport so early that I got very comfortable andvrelaxed
16:03 moritz nine: I'm very early too; I've set an alarm for when I think check-in will open :-)
16:04 moritz timotimo: my music fu is very weak, but I'd say a selection of harmonic chords, like octave and quart
16:04 timotimo octave sounds easy. it's just the same key one spot over, right?
16:05 timotimo i remember for some intervals you have to do some fancy math (or rather: learn it by heart) to get the right keys to press
16:05 babydrop same key 12 spots higher. It'll be in the same position if you compare where it's in regard to the black keys
16:05 lucs timotimo: just play a chromatic scale (consecutive notes including black and white) up a few octaves.
16:06 timotimo yeah, i call that a spot
16:06 timotimo yeah i can do that, that sounds doable
16:06 babydrop If you have a mic, you can download a software tuner that'll tell you all   you wanna know :)
16:06 timotimo probably
16:06 timotimo piano tuner people probably cost a shit-ton of money, right?
16:06 babydrop v0v
16:07 timotimo can't i do it myself with an android app? :P
16:07 toolforger nope
16:07 timotimo anyway, i'll head to the device and record something
16:07 toolforger not for piano
16:07 telex joined #perl6
16:07 [Coke] perhaps find someone from a local music school who needs the practice?
16:07 toolforger You strengthen one string, and all neighbouring strings will slack off a bit
16:07 [Coke] (trying to get my son, a music major to find such a person locally for me. :)
16:07 lucs timotimo: Well, piano tuning is a complicated skill, eh. And it's quite hard for an amateur to do.
16:07 toolforger Pay a piano tuner
16:08 lucs What toolforger said.
16:08 toolforger it's expensive but you don't want somebody with no skill to mess it up
16:08 toolforger because if he does, the professional tuner will need more time
16:08 toolforger which will cost even more
16:09 timotimo tfw you don't even have a sound recording app on your smart phone %)
16:09 toolforger lucs: I know just enough about piano tuning to leave it to experts :-)
16:09 lucs toolforger: Me too :)
16:09 timotimo this piano hardly ever gets used, though
16:09 timotimo like, every 10 years perhaps?
16:09 toolforger get an electric one then
16:09 timotimo nobody in this house plays it, and i'm not over for visits often enough to make it worth it
16:09 timotimo (and also: not skilled enough at all)
16:09 moritz (leaving to the experts) same with me and building nuclear reactors :-)
16:10 lucs toolforger: I actually went to the trouble to try to a piano once: very instructive :)
16:10 acrussell joined #perl6
16:10 TimToady it's also good to have an electronic piano if you have neighbors that will be bothered
16:10 lucs *try to tune
16:10 timotimo hehehe.
16:11 * TimToady has tuned pianos, having been taught to listen for the beat patterns in the overtones
16:11 toolforger Ah, I didn't try piano tuning
16:11 toolforger never had an opportunity
16:11 toolforger didn't go out of my way to get one, either, so there's that
16:11 * TimToady even owns a tuning hammer and rubber wedges
16:11 TimToady but yeah, it's still a lot of work
16:11 pyrimidine joined #perl6
16:12 bstamour left #perl6
16:12 TimToady so I usually pay a tuner, unless it's just one or two notes bothering me
16:13 TimToady beware of any piano tuner that comes in with a chip on his shoulder about old-fashioned tempering, which will make your piano sound a little brighter in some keys and terrible in other keys
16:13 lucs Equal temperament for all!
16:14 TimToady Some temperings are more equal than others... :)
16:14 lucs :)
16:14 ilmari https://www.amazon.com/Equal-Temperame​nt-Ruined-Harmony-Should/dp/0393334201 # my wife owns a copy of this
16:15 user9 joined #perl6
16:15 toolforger Real pros have their piano re-tuned for each key, I guess
16:15 toolforger they also use Grand Pianos
16:16 lucs ilmari: I hope all serious musicians are aware of the shortcomings of equal temperament, and of its advantages.
16:17 TimToady violinists cheat on equal temperament all the time, sometimes on purpose, but usually subconsciously :)
16:17 timotimo i have an audio file
16:17 TimToady accidentally, I almost said
16:17 toolforger yes, serious musicians know everything about temperings
16:18 toolforger it's party of the standard theory
16:18 babydrop .oO( wtf is a tempering... )
16:18 toolforger or temperament, not sure what the right term is in English
16:18 TimToady either is correct
16:19 lucs babydrop: https://en.wikipedia.org/wiki/Equal_temperament
16:19 TimToady English has multiple ways to noun verbs :)
16:19 timotimo http://hack.p6c.org/~timo/piano_tuning.ogg
16:19 toolforger babydrop: Issue is that there is one "correct" way to construct a scale such as C-major
16:19 timotimo oh no, what have i started ;)
16:20 TimToady a temper tantrum?
16:20 toolforger You start with the base tone, the fifth tone above that is a 3/2 of that frequency, then you fill in the third, and other tones
16:21 toolforger This makes a "perfect" temperament for C, which sounds even nicer than what you usually get, harmonies are "more pure"
16:21 timotimo is it normal that the hammer strikes are hella loud in the last two-three octaves?
16:21 lucs timotimo: Doesn't sound too catastrophic, and probably playable.
16:21 timotimo i don't think this one has been tuned since it was bought
16:21 toolforger Problem is that the frequencies don't quite align if you switch to F major
16:22 toolforger The fifth tone will be off
16:22 toolforger the others, too
16:22 toolforger some harmonies will sounds pretty weird
16:22 toolforger E major will be pure catastrophe
16:23 toolforger Equal tempers means that all scales sound pretty well but none sounds perfect
16:23 TimToady I once kicked a piano tuner out of my house; he was almost shouting at me about the evils of equal temperament :)
16:23 Ulti timotimo: FYI the env vars weren't mentioned in the current --help message but are on here https://github.com/rakudo/rakudo/wiki/dev-env-vars
16:24 timotimo Ulti: moar's --help, not rakudo's --help
16:24 Ulti ohhhh
16:24 Ulti who runs moar direct >:3
16:25 toolforger Using a "natural temperament" means that different scales will get different character, so you gain musical expressivity as a composer, so yes equal temperament can be considered evil
16:25 lucs Good temperament difference illustrations here: https://www.youtube.com/watch?v=TBt6APk21tU
16:27 TimToady I'm fine with pianos being equal tempered—it makes the rest of us musicians sound better.  :)
16:27 Ulti timotimo: http://mattoates.co.uk/files/perl6/*.log.gz
16:29 timotimo thank you
16:30 geraud joined #perl6
16:30 cibs joined #perl6
16:30 TimToady wildest thing I've heard in that vein is when Mahler goes into seven flats; C♭ sound very different from B when an orchestra is playing it
16:30 TimToady well, okay, we were really playing in A♭ minor...
16:32 TimToady and I well remember Eric Kuntzel telling us to play the same note flatter when the key changes around that note in the middle of Romeo and Juliet
16:34 timotimo i saw a youtube video about microtonal music that also featured a piano-like instrument where you could adjust the tuning of each of the keys while playing
16:34 TimToady now the funny thing about the Mahler is that it was the 1st movement of the 10th, which Mahler never got to hear an orchestra play; he only ever heard it on his piano, but I suspect he knew what it would sound like anyway
16:35 TimToady sorry for yanking you back and forth between Mahler and Tschaikovsky :)
16:35 lucs Reminds me of the different ways tritones can be resolved, and how composers (up to Wagner, Mahler, and the late tonal composers) used it to modulate farther and farther off.
16:36 TimToady similar things with resolving an augmented triad
16:36 lucs Same principle I guess.
16:40 babydrop Do we have "Option types"?
16:40 timotimo well, our types all have the "nothing" thing in their type object
16:40 timotimo so basically yes
16:41 timotimo but most people associate "having option types" with "the compiler forces you to always provide code to handle both cases"
16:41 timotimo at least i do
16:41 babydrop Ah
16:41 babydrop Just saw that mentioned here: https://www.reddit.com/r/perl/commen​ts/5g25ak/why_should_i_learn_perl_6/
16:41 geraud1 joined #perl6
16:42 babydrop I kinda notice a surge of Perl 6 users. New faces here. More stuff in r/perl from blogs.perl.org, etc.
16:43 cibs joined #perl6
16:43 babydrop hehehe... Backers: 404   https://www.kickstarter.com/proj​ects/1422827986/learning-perl-6
16:43 TimToady learning to play well in F♯ major (Mahler's 10th) is also quite a challenge, and late Mahler is so tonally complex that it really just slips in and out of atonality half the time to my ear
16:43 * TimToady wonders where the atonal bits of Perl 6 are...
16:43 TimToady as opposed to the tin-ear bits...
16:44 timotimo "tin ears"? %)
16:44 TimToady Eh, speak up sonny!
16:44 pmurias what we call "gradual typing" will be sort of a disapointment to someone who comes from Haskell ;/
16:45 toolforger OTOH that guy had fun in C and Haskell, so Perl6 might be just the right stuff for him
16:45 TimToady Everything will be a disappointment to someone who comes from Haskell. :)
16:45 toolforger of maybe just the worst possible thing ever to happen to him...
16:45 * geekosaur has already heard several complaints that "gradual typing" isn't "really" typing
16:46 TimToady well, strong typing is really only the 3rd most important reason for typing in Perl 6
16:46 pmurias hopefully real gradual typing will be implemented as a module
16:46 TimToady optimization is 2nd, and multiple dispatch is the 1st
16:46 geekosaur (of course, the flip side of that is that a haskeller who also works with agda will usually not consider haskell's type system very strong either >.> )
16:47 * toolforger dislikes multiple dispatch anyway
16:47 babydrop :o
16:47 babydrop heathen!
16:47 toolforger nope
16:47 toolforger been there, tried that, found it to be nice but inherently incompatible with modularity
16:48 TimToady then perhaps it was done poorly :)
16:48 toolforger "inherently incompatible" means "cannot be done well"
16:48 TimToady we find it aids modularity in general here
16:49 toolforger Well, okay: "modularity, extensibility, multiple dispatch - pick any two"
16:49 toolforger as long as you are working out a fixed set of types, MD can be helpful
16:49 TimToady perhaps you mean something different by the term
16:49 TimToady we're not talking about MD at all
16:50 toolforger The OO idea of multiple dispatch
16:50 toolforger not sure how the Perl idea differs
16:50 pyrimidine babydrop: re: the kickstarter, wasn't bdfoy trying to reach 2000 backers?
16:50 TimToady we use it more heavily in function space than in method space
16:50 * pyrimidine has backed it
16:50 TimToady sorry, read MD as MI, never mind about the terminology quibble
16:51 TimToady yes, by MD we generally don't mean MMD (multi-method dispatch)
16:51 toolforger Is the MD tied to subtyping?
16:51 TimToady MMD is much less useful than general MD
16:52 toolforger Perl's MD, I mean
16:52 thowe joined #perl6
16:53 toolforger let me rephrase
16:53 TimToady m: multi describe (Str $s) { say "$s is a string." }; multi describe (Int $i) { say "$i is an integer." }; describe 1; describe "1"
16:53 camelia rakudo-moar abc643: OUTPUT«1 is an integer.␤1 is a string.␤»
16:53 babydrop pyrimidine: yes
16:53 TimToady no methods there
16:53 toolforger Is Perl's MD using subtyping to select a fallback if there is no explicit definition for the type combination?
16:54 TimToady it finds the narrowest unambiguous binding, yes
16:54 pyrimidine babydrop: interesting that there are fewer backers who are willing to pledge more
16:54 TimToady so you basically end up with an extensible switch structure spread across modules
16:54 toolforger Then it is not extensible in a modular fashion
16:54 TimToady it is if you do it right
16:55 babydrop pyrimidine: um, a third of the current sum was pledged by a single entity.
16:55 toolforger Depends on what you mean with "do it right"
16:55 toolforger I seriously doubt that it can be done right; you'd have to redefine the problem in some pretty nonobvious way to evade the logical problems
16:56 babydrop m: say 22846÷403
16:56 camelia rakudo-moar abc643: OUTPUT«56.689826␤»
16:56 pyrimidine babydrop: ah! missed that.  I'm just running off the basic stats in my head
16:56 TimToady most existing MD systems associate the candidates in some global space, and that's the wrong way
16:56 babydrop m: say 37000÷2000
16:56 camelia rakudo-moar abc643: OUTPUT«18.5␤»
16:56 timotimo toolforger: you'll find that arguing with TimToady is like talking to a Wall :P
16:57 toolforger TimToady: Not sure what you mean exactly, but it does have the ring of one of the ways to deal with it
16:57 TimToady everything in our functional MD is strictly lexically scoped to the location of a prototype candidate that exists somewhere in lexical space
16:57 babydrop pyrimidine: though your premise still holds. Instead of 2000 backers of $20/pop, we have 403 backers giving $56 on average, plus one extremely generous donour
16:57 toolforger Okay, let me be a bit more specific
16:58 TimToady and our setting is just lexically scoped to the outside of your code, so in fact almost all of Perl 6 is extensibly defined as MD functions
16:58 babydrop timotimo: lol :D
16:58 pyrimidine babydrop: yes, still a pretty decent average donation
16:58 toolforger Assume you have f(a, b), with possible types A1 and A2 for A and B1 and B2 for b
16:58 TimToady which is why we call it a "setting", not a "prelude"
16:58 toolforger Does that kind of setup make sense in the context of Perl6's MD?
16:59 timotimo i bet TT hasn't heard that joke before, babydrop
16:59 TimToady if you have an ambiguous dispatch, it will fail
16:59 babydrop timotimo: oh: Multi-Dispatch. You were asking for a topic to write about
16:59 toolforger Ah, then it's unmodular
17:00 toolforger because you can add a module that adds a dispatch for A3, and one that adds a dispatch for B3, but if you combine the two modules, you will get an ambiguity error
17:00 TimToady okay, you're defining modular as doing magic instead of getting a useful error :)
17:00 TimToady this is a feature, just as composing two roles with ambiguous methods requires disambiguation in the class
17:01 toolforger "Module" = "you can add modules independently of each other unless they have a direct dependency"
17:01 TimToady as opposed to the way mixins work, which just magically does the wrong thing half the time
17:01 suman joined #perl6
17:01 toolforger Sure the error message is a feature
17:01 suman Perl 6 is awesome.
17:02 babydrop toolforger: but what's the better altearntive then? Each module adds a uniquely-named function? Oh, hold on, what if you add two modules that export the same-named function... the import will fail. This stuff's not modular then.
17:02 babydrop suman: indeed it is!
17:02 toolforger It's just that the whole MD thing is not modular - somebody who creates A3 may be unaware of B3 and vice versa, but their combined work will cause failures
17:02 toolforger No really good solution to MD
17:02 toolforger that's why I said I have a dislike for it ;-P
17:02 toolforger Essentially, you pick the least evil
17:03 babydrop toolforger: but same issue exists if your module has subroutine named the same as mine, or any other name clashes.
17:03 timotimo only if it exports those directly, though
17:03 toolforger Name clashes can be fought using proper namespace rules
17:03 toolforger that's essentially a solved problem
17:03 suman However we need to improve documentation (possibly with Sphinx) and need a lot of tutorials for beginners. Something like "Introduction to computer science with Perl 6: in coursera or edX. We need some tech guy to make such course. Hope to see one soon.
17:03 toolforger Java is a good example for a simplistic but complete solution
17:03 babydrop toolforger: but same applies to MD subs
17:03 toolforger Nah
17:04 timotimo suman: we're getting a "think like a computer scientist" book for perl6
17:04 babydrop toolforger: don't export them to the same namespace and you don't get ambioguioty
17:04 toolforger Er
17:04 babydrop toolforger: in fact, you can also fight ambiguity with subsets
17:04 timotimo babydrop: he's talking about implementing new subclasses, not implementing new candidates
17:04 toolforger A3 and B3 objects follow data flow, which tends to cross namespaces
17:05 toolforger Not necessarily subclasses, just classes that are acceptable as parameter types
17:05 babydrop timotimo: err, then what's the winge about? The subclass wins multi resolution
17:06 babydrop Fuck it. Don't care.
17:06 toolforger Issue is how to deal with ambiguous cases
17:06 timotimo yeah, but what if you have candidates (A1, B1), (A2, B1), and (A1, B2), and someone comes along and builds A3 and B3 in separate
17:06 timotimo and then someone calls (A3, B3), and it'll complain
17:06 toolforger what timotimo says
17:06 timotimo well, you already can't call (A2, B2)
17:06 suman timotimo Good to hear. One such course in MOOC platforms like coursera would be simply awesome. It would be helpful to people like me who are learning programming. The hot topic nowadays is data science. May be we need some data analysis and graphics modules too like in R and Python. Otherwise its hard to compete in today's market.
17:07 timotimo so the problem starts before extension/modules even enter the picture
17:07 toolforger except assuming that (A2, B2) is explicitly covered, but nvm, it's the same problem
17:07 timotimo huh?
17:07 * babydrop sees no problem
17:07 timotimo but if (A2, B2) already has a candidate, that will just be called for (A3, B3)
17:08 toolforger I assuming that the initial module would cover all four combinations of A1, A2, B1, and B2
17:08 timotimo okay. but then there's no problem at all
17:08 toolforger Then dev X would work on A3, and dev Y would work on B3
17:08 toolforger and then dev Z combines the original module, the A3 one, and the B3 one
17:09 toolforger and the fallback policy from (A3, B3) is totally ambiguous
17:09 toolforger it could be (A2, B2), or (A3, B2), or (A2, B3)
17:10 babydrop What are A1 A2 A3?
17:10 timotimo just one lineage of classes
17:10 timotimo A2 is A1; A3 is A2
17:10 timotimo ah, you were assuming they also implement those
17:11 babydrop But so is A2 and B2
17:11 babydrop The ambiguity exists even before dev z done anything
17:12 babydrop But my actual point is what alternative do you propose for having this feature??
17:12 babydrop I can extend what infix + does, thanks to MMD
17:12 toolforger babydrop: no alternative, it's a matter of picking the least evil
17:12 babydrop And I can even fight the ambiguity
17:12 babydrop toolforger: so what's the leaster evil to MD?
17:12 toolforger depends on your judgement
17:13 babydrop m: multi infix:<+> (Int $x, Int $y) { say $x - $y }; say 2 + 2
17:13 camelia rakudo-moar abc643: OUTPUT«Ambiguous call to 'infix:<+>'; these signatures all match:␤:(Int:D \a, Int:D \b --> Int:D)␤:(Int $x, Int $y)␤  in block <unit> at <tmp> line 1␤␤»
17:13 babydrop m: multi infix:<+> (Int $x where {True}, Int $y where {True}) { say $x - $y }; say 2 + 2
17:13 camelia rakudo-moar abc643: OUTPUT«0␤True␤»
17:13 babydrop boom
17:13 toolforger You can reasonably disagree about what's the least evil
17:13 domidumont joined #perl6
17:13 toolforger For infix arithmetic, I'd use a "convert to the common base type, then do a single dispatch" strategy
17:14 babydrop 0.o
17:14 TimToady these sorts of collisions tend to arise only when people are choosing stupid names for their functions, or when they use functions when they should be using methods (assuming there is even an OO escape in the language), or when they've designed an overly complicated inheritance hierarchy
17:14 TimToady or when people overload '+' to mean concatenation :P
17:14 TimToady but that falls under "choosing stupid names"
17:14 babydrop heh
17:14 toolforger TimToady assuming that a problem is "just to people doing stupid things" has led to the worst language design disasters that I have seen
17:14 toolforger Including Eiffel's type hole
17:15 * TimToady never assumes anything, except when he does
17:15 TimToady but all computer languages eventually blame the programmer for something :)
17:16 TimToady the trick is to push such antisocial behavior into the corners where you seldom run into it
17:16 toolforger Don't blame programmers for deficits in the language
17:16 * babydrop wonders where such corners in Perl 6 are.
17:16 TimToady sure, that's one of our 50 or 60 design principles
17:17 thowe there's always a snake in the garden.
17:17 toolforger Well, in this case, it's not necessary to blame programmers
17:17 toolforger MD simply does not have an elegant, one-size-fits-all solution
17:17 toolforger Perl's is a reasonable compromise
17:17 TimToady nothing has an elegant, one-size-fits-all solution
17:17 toolforger Oh yes, some things do
17:18 toolforger Stacks were an elegant, one-size-fits-all solution to subroutine calls
17:18 TimToady it's precisely the approach of trying to enforce a one-size-fits-all solution that languages end up blaming the programmer too often instead of giving them additional tools
17:18 toolforger Take a look at the alternatives
17:18 firstdayonthejob joined #perl6
17:18 toolforger E.g. the BALR = "branch and link register" instruction on the /360 architecture
17:19 labster joined #perl6
17:19 TimToady stacks don't work well with continuations :P
17:19 toolforger Algol's type system was an elegant, one-size-fits-all solution to the question how to compose arrays and generally set up structured data
17:20 toolforger Yeah, you go back to the BALR approach for continuations, I'll give you that :-D
17:20 toolforger "fits-all" is usually meant to mean "fits all the common use cases"
17:21 toolforger for some definition of "common"
17:21 TimToady yes, and our MD seems to do that so far
17:21 toolforger which is pretty different for LISPers than for others :-D
17:21 toolforger Your MD has been used mostly for system design, not for library design
17:22 toolforger and Perl6's MD isn't going to fit well for extending libraries
17:22 TimToady but then we encourage people to use OO namespaces as well as FP spaces when they make sense, and to not abuse overloading
17:22 toolforger Just saying - people will work around that
17:22 geekosaur BAL/BALR worked fine until Algol ruined everything! :p
17:23 toolforger question is whether the workarounds are more or less elegant than they could have been with a different approach
17:23 toolforger That's pretty hard to tell
17:23 TimToady sure, which is why we want a malleable language into the future
17:24 toolforger Is a redesign for the MD mechanism a serious option?
17:25 TimToady you can pick a different functional or method dispatcher in any given lexical scope, in the design, even if it's currently harder than strictly necessary
17:25 TimToady the "current language" defines that, and we regard the current language as strictly lexically scoped
17:25 toolforger Is the dispatch mechanism lexically bound to the called function?
17:25 pyrimidine joined #perl6
17:26 TimToady no, that would be changing someone else's language out from under tham; it's bound to the callsite, if I understand your question properly
17:27 TimToady and, in fact, the candidate list for any given MD is generated as of the lexical scope at the call site
17:27 TimToady so it's entirely up to the current language how that works
17:27 babydrop :o
17:28 TimToady we really do take it seriously that you could say 'use COBOL; IDENTIFICATION DIVISION...'
17:29 TimToady and do it all with one-pass parsing, btw
17:29 toolforger I don't have that seriously ;-P
17:30 toolforger s/have/take/
17:31 toolforger Still... dispatch rules should be associated with called function; otherwise the called function's semantics depends on the call site, and that makes it horribly difficult to decide what a piece of code does if its semantics depends on call site
17:31 TimToady the p6 parser takes it seriously, insofar as it drops into various extensible sublanguages for parsing things like quotes, regex, etc
17:31 toolforger but what do I know :-D
17:32 timotimo the called function is still allowed to enforce some constraints
17:32 TimToady no function in Perl 6 really cares how it was dispatched to, which is why methods are really just functions that have been poked where a different dispatcher can get to them
17:32 timotimo like, you can't just call a function that expects 10 arguments with no arguments and expect it to not throw an exception
17:33 toolforger Hmm... well, maybe the scope of a function's semantics is different then... the dispatch mechanism plays a big role in what preconditions a function can expect to be met
17:34 toolforger In a strictly-OO language, that's some pretty strong guarantees and this eases coding the functions significantly; Perl is setting different goals here, so the usual dos and don'ts apply
17:34 toolforger s/apply/do not apply/
17:35 TimToady Render unto OO the things that are OO's, and unto FP the things that are FP's.  :)
17:35 toolforger Yeah, many OO issues seem to be nonexistent in the FP world
17:36 TimToady they sweep their dirt under different carpets :)
17:36 toolforger Don't know enough about FP in practice to really talk about the deal there
17:37 * toolforger would really like to code in Haskell for real for a year or so
17:38 TimToady ah yes, wandering around in the monadic lifestyle :)
17:38 toolforger Nah
17:38 TimToady Well, Haskell is easy to learn—I've done it six times already...
17:38 toolforger Haskell isn't about monads
17:38 toolforger just as arithmetic isn't about associativity
17:39 toolforger :-)
17:39 pyrimidine joined #perl6
17:39 TimToady the apostle Paul warns us not to quibble about words :)
17:41 toolforger Paulism is commonly overrated :-D:-D:-D
17:41 TimToady I wasn't claiming identity of X and Y, but just "you can't do X without knowing about Y"
17:41 TimToady which is true of both monads and associativity
17:41 toolforger Sure
17:41 toolforger it's just that Haskell isn't a monadic lifestyle
17:42 TimToady if you say so :)
17:42 toolforger I'd consider getting practice with Haskell a failure if all I learned was grokking monads
17:43 toolforger there's also Arrows :P
17:43 TimToady my main quibble with Haskell is that it uses up words much too quickly :)
17:43 toolforger and actually a whole different way to structuring your code
17:44 TimToady and that's because points-free code is so difficult for mere mortals to grok
17:44 toolforger In my dreams, it's as easy to add a new category to Haskell 2.0 as it is to add a module to current-day Haskell - and people wouldn't even notice that category theory is involved
17:44 TimToady yes, well, Haskell could be thought of as kind of a proof that abstractions have an opportunity cost :P
17:45 toolforger Such as monads?
17:46 perlpilot I learned monads at one point, then promptly forgot about them because I didn't relate them to Perl ;)
17:46 TimToady well, one of the other issues is that if you aren't as smart as the type inferencer, you're not smart enough
17:51 dalek ecosystem: f2080ca | timo++ | server/updatelist.pl:
17:51 dalek ecosystem: pretty-print errors output
17:51 dalek ecosystem:
17:51 dalek ecosystem: as it's meant to be seen by humans, mostly
17:51 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/f2080ca768
17:51 toolforger Decoding type inferencer error messages is one of the thing that would be interesting to learn
17:52 toolforger I'd want to compare how well this works in other languages with a nontrivial type system
17:52 toolforger so I guess I'd have to add a year of Clean or something
17:52 toolforger Scala, maybe - not sure whether its inferencer is worth anything
17:53 girafe joined #perl6
17:54 babydrop samcv++ # Fixing Perl 6 syntax highlighter
17:54 nicq20 joined #perl6
17:54 timotimo oh? tell me more about that!
17:55 [Coke] babydrop, samcv: on... github?
17:55 * [Coke] says some very rude things to a telemarketer, and only regrets it a little.
17:57 * toolforger approves
17:58 babydrop Yes, it is the highlighter used by GitHub too
17:58 babydrop https://github.com/MadcapJa​ke/language-perl6fe/pull/43
17:58 [Coke] samcv++ excellent.
17:58 baest joined #perl6
18:00 toolforger left #perl6
18:00 TimToady unfortunately, the leaves on the telemarketer tree are usually just poor people trying to eke out a living; it's the higher nodes in the tree that really need to be said rude things to
18:01 * babydrop enjoys the Do Not Call list
18:01 babydrop No rude things need ever be said :)
18:01 TimToady the Do Not Call list is completely broken in the US
18:01 babydrop too bad :(
18:02 buggable joined #perl6
18:02 lukaramu joined #perl6
18:02 babydrop Well, reddit once again, successfully raised my blood pressure.
18:03 babydrop I'm starting to think I just hate people in general, and should just crawl into a hole and code all day.
18:03 AlexDaniel oooooooooooohh it is a highlighter used by github
18:03 AlexDaniel I didn't think about it this way…
18:04 AlexDaniel how often do they update it?
18:05 AlexDaniel samcv: thank you very much!
18:05 labster joined #perl6
18:06 AlexDaniel I have never thought that one day whateverable sources will start rendering correctly on github… :)
18:07 [Coke] m: require 6.c
18:07 camelia rakudo-moar abc643: OUTPUT«===SORRY!===␤No such method 'c' for invocant of type 'Any'␤»
18:07 [Coke] babydrop: the rudeness was about their response to my politely asking them to put me on their do not call list.
18:07 [Coke] m: require v6.c
18:07 camelia rakudo-moar abc643: OUTPUT«===SORRY!===␤No such method 'c' for invocant of type 'Any'␤»
18:08 AlexDaniel LTA
18:08 nicq20 left #perl6
18:09 [Coke] does perl 6 have an equivalent of p5's "require VERSION" ?
18:09 TimToady well, I suppose that since the global Do Not Call apparatus has broken down, some telemarketers feel they don't have to follow the local rules either, so in that case I might've been rude too :)
18:10 pmurias babydrop: besides a few very niche places (like the perlish subreddit) people on reddit tend be really despicable
18:10 [Coke] This guy was actually trying to logic me out of it, since he works in a call center, and HE didn't call me, but some other system connected the call...
18:11 TimToady may well be under explicit directions from his boss to ignore the law
18:11 pyrimidine joined #perl6
18:11 TimToady since it's pretty much never enforced
18:12 TimToady and sewage tends to flow downhill to fill out the business plan
18:13 timotimo m: use v6.c
18:13 camelia rakudo-moar abc643: ( no output )
18:13 timotimo right. definitely LTA error
18:14 AlexDaniel .tell MadcapJake is it resolved now? https://github.com/github/linguist/issues/2909
18:14 yoleaux AlexDaniel: I'll pass your message to MadcapJake.
18:14 dalek doc: 0d6d172 | coke++ | doc/ (5 files):
18:14 dalek doc: Remove some seemingly wishy-washy statements.
18:14 dalek doc:
18:14 dalek doc: Closes #619
18:14 dalek doc: review: https://github.com/perl6/doc/commit/0d6d1724fb
18:15 AlexDaniel [Coke]++
18:17 babydrop m: 'use v6.c'.EVAL;
18:17 camelia rakudo-moar abc643: ( no output )
18:17 babydrop m: say "wooo"; 'use v6.d'.EVAL;
18:17 camelia rakudo-moar abc643: OUTPUT«wooo␤5===SORRY!5=== Error while compiling /home/camelia/EVAL_0␤No compiler available for Perl v6.d␤at /home/camelia/EVAL_0:1␤------> 3use v6.d7⏏5<EOL>␤»
18:18 moritz btw https://github.com/moritz/perl6-training-de has the materials I used for the Perl 6 course
18:18 moritz it's all German, you've been warned :-)
18:18 babydrop no sprehen ze deuch
18:18 moritz the .odp and .pdf files contain the slides, the rest is mostly example scripts I either used in the slides, or developed on-screen while explaining what I did
18:20 babydrop m: sub require (Version $v) { so try "use $v".EVAL }; say require v6.c; say require v6.d;
18:20 camelia rakudo-moar abc643: OUTPUT«False␤False␤»
18:20 babydrop m: sub require (Version $v) { so try "use $v; 1".EVAL }; say require v6.c; say require v6.d;
18:20 camelia rakudo-moar abc643: OUTPUT«False␤False␤»
18:20 babydrop :(
18:21 babydrop m: sub require (Version $v) { so try "use $v.gist(); 1".EVAL }; say require v6.c; say require v6.d;
18:21 camelia rakudo-moar abc643: OUTPUT«True␤False␤»
18:21 babydrop \o/
18:21 dalek doc: a5ca28f | coke++ | STYLEGUIDE.md:
18:21 dalek doc: Add a note about documenting spec vs. un-spec'ed.
18:21 dalek doc:
18:21 dalek doc: Closes #835
18:21 dalek doc: review: https://github.com/perl6/doc/commit/a5ca28f7da
18:24 babydrop huggable: speed
18:24 huggable babydrop, nothing found
18:26 FROGGS joined #perl6
18:26 babydrop What's the URL to Tux' speed charts?
18:26 babydrop http://tux.nl/Talks/CSV6/speed4.html
18:26 babydrop huggable: speed :is: http://tux.nl/Talks/CSV6/speed4.html
18:26 huggable babydrop, Added speed as http://tux.nl/Talks/CSV6/speed4.html
18:27 moritz http://tux.nl/Talks/CSV6/speed5.html has also been found in the logs
18:27 timotimo maybe we should also put the little piece of code in that renders the speed results as a little unicode block graph thingie
18:28 moritz it's getting to a point where we should ask [Tux]++ to scale the y axis logarithmically
18:28 moritz timotimo: http://irclog.perlgeek.de/per​l6-dev/2016-11-10#i_13546696
18:29 babydrop huggable: speed chart :is: star: use LWP::Simple; my @recent = LWP::Simple.get('http://tux.nl/Talks/CSV6/speed.log').lines[(*-30)..Inf].map(*.words[*-1]); my ($min, $max) = @recent.min, @recent.max; my $range = max($max - $min, .1 * $min, .25); my @bar = (^8 + 0x2581)>>.chr; my $spark = @recent.map({ @bar[(($_ - $min) / $range * (@bar - 1)).round] }).join; print $spark ~ " $min .. {$min + $range}";
18:29 huggable babydrop, Added speed chart as star: use LWP::Simple; my @recent = LWP::Simple.get('http://tux.nl/Talks/CSV6/speed.log').lines[(*-30)..Inf].map(*.words[*-1]); my ($min, $max) = @recent.min, @recent.max; my $range = max($max - $min, .1 * $min, .25); my @bar = (^8 + 0x2581)>>.chr; my $spark = @recent.map({ @bar[(($_ - $min) / $range * (@bar - 1)).round] }).join; print $spark ~ " $min .. {$min + $range}";
18:29 babydrop star: use LWP::Simple; my @recent = LWP::Simple.get('http://tux.nl/Talks/CSV6/speed.log').lines[(*-30)..Inf].map(*.words[*-1]); my ($min, $max) = @recent.min, @recent.max; my $range = max($max - $min, .1 * $min, .25); my @bar = (^8 + 0x2581)>>.chr; my $spark = @recent.map({ @bar[(($_ - $min) / $range * (@bar - 1)).round] }).join; print $spark ~ " $min .. {$min + $range}";
18:29 camelia star-m 2016.10: OUTPUT«▅▃▄▂▁▆▃▂▅▂▄▃█▃▄▄▆▄▅▃▄▃▄▄▃▄▃▃▃▃ 6.238 .. 7.175»
18:30 [Coke] AlexDaniel: since you closed all the NOTSPECCED tickets, can we remove that label?
18:30 AlexDaniel NO
18:30 timotimo that one
18:30 timotimo does it fit together with a :is: piece?
18:30 timotimo cool.
18:30 AlexDaniel [Coke]: that was my point, basically
18:31 timotimo now if it could immediately m: it instead of telling it to you ...
18:31 AlexDaniel [Coke]: we still want to have a list of things that might need documentation
18:31 [Coke] that's what [doc] is for.
18:32 AlexDaniel I mean notspecced things
18:32 [Coke] if they are not spec'd, they shouldn't be doc'd.
18:32 AlexDaniel that's why the issues are closed
18:32 [Coke] (at least when we're talking about things like types and methods and subs)
18:32 [Coke] so if we agree on that, why keep the label?
18:33 [Coke] s/[doc]/[docs]/
18:33 AlexDaniel so that you can have a list for things that some people wanted to be documented, but they were not specced at the time
18:33 AlexDaniel of things*
18:33 AlexDaniel it's a label for closed tickets, as I see it
18:34 AlexDaniel … is it a bad idea?
18:34 psch aren't labels orthogonal to the closedness of a ticket?
18:34 AlexDaniel … rename it to "reopen when specced"?
18:35 [Coke] that seems like a bad idea. then we have to keep going through closed tickets and re-opening them. I'd rather a workflow that didn't go through the closed state.
18:35 AlexDaniel you don't have to do that if you don't want to :)
18:35 bstamour joined #perl6
18:36 travis-ci joined #perl6
18:36 travis-ci Doc build passed. Will "Coke" Coleda 'Remove some seemingly wishy-washy statements.
18:36 travis-ci https://travis-ci.org/perl6/doc/builds/180783729 https://github.com/perl6/doc/com​pare/1ec05fbe14c2...0d6d1724fb66
18:36 travis-ci left #perl6
18:36 [Coke] if a request for docs comes in for something that isn't spec'd, the decision tree is: "should this be spec'd" or "should it not be". - the workflow from that point should be:
18:36 AlexDaniel as I see it, people come and open tickets that more or less make sense. And we go “No, it's not specced, GTFO, issue closed”. The label at least gives some hope…
18:37 [Coke] if yes, it should, feel free to document it immediately, but also open a roast ticket that it's missing tests.
18:37 buggable joined #perl6
18:37 [Coke] if no, then reject the ticket, and open a rakudo ticket that something is exposed that shouldn't be.
18:37 AlexDaniel [Coke]: that's something new
18:38 babydrop there's a ton of such stuff
18:38 babydrop (the exposed)
18:38 babydrop buggable: speed
18:38 buggable babydrop, ▅▃▄▂▁▆▃▂▅▂▄▃█▃▄▄▆▄▅▃▄▃▄▄▃▄▃▃▃▃ range: 6.238 .. 7.175
18:38 babydrop timotimo: ^
18:38 [Coke] nine: could write up a paragraph on "what is precompilation" for the docs?
18:38 AlexDaniel as far as I remember, the consensus was that we don't document things if they are not in roast. Even if there is a ticket.
18:38 samcv or there's things that are just, not defined in the specs… like they should be, or not clear enough. and somebody has to decide what they do
18:38 timotimo cool!
18:38 timotimo how did you do that? :)
18:39 [Coke] AlexDaniel: my workflow doesn't change that, it just includes the compiler authors and spec writers in the process.
18:39 samcv before adding tests, idk that would prolly be open, not closed. but
18:39 babydrop Magic ;)
18:39 samcv i'm sure it really depends
18:39 AlexDaniel [Coke]: is this workflow documented somewhere?
18:40 timotimo i like magic
18:41 [Coke] AlexDaniel: I just committed something very similar in STYLEGUID.md based on a ticket asking about this that has dragged on for a while.
18:41 AlexDaniel [Coke]: “We should not document everything. It's not up to the docs team to decide what's in the specification, that's up to the development team”
18:41 travis-ci joined #perl6
18:41 travis-ci Doc build passed. Will "Coke" Coleda 'Add a note about documenting spec vs. un-spec'ed.
18:41 travis-ci https://travis-ci.org/perl6/doc/builds/180785588 https://github.com/perl6/doc/com​pare/0d6d1724fb66...a5ca28f7da45
18:41 travis-ci left #perl6
18:41 [Coke] (#835)
18:42 [Coke] Feel free to clean it up or offer alternative suggestions. (we can even reopen the ticket if we need to)
18:42 AlexDaniel so yea, I'm completely lost…
18:42 psch m: say Rakudo::Internals::.keys
18:42 camelia rakudo-moar abc643: OUTPUT«(ShapeLeafIterator CompilerServices BlobbyIterator DwimIterator ShapedArrayCommon WhateverIterator MappyIterator SupplySequencer JSON ShapeBranchIterator WeightedRoll SprintfHandler VMBackedDecoder MappyIterator-values)␤»
18:42 psch ^^^ those probably shouldn't be documented :)
18:43 dalek doc: cea2e21 | coke++ | STYLEGUIDE.md:
18:43 dalek doc: fix typo
18:43 dalek doc: review: https://github.com/perl6/doc/commit/cea2e211a8
18:43 psch and, similarly, aren't in roast
18:43 babydrop there's a ton of ALLCAPS stuff that just needs to be moved to R::I
18:44 psch right, that too
18:44 babydrop m: say UNBASE 'FF'
18:44 camelia rakudo-moar abc643: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Calling UNBASE(Str) will never work with any of these multi signatures:␤    (Int:D $base, Any:D $num) ␤    (Int:D $base, Str:D $str)␤at <tmp>:1␤------> 3say 7⏏5UNBASE 'FF'␤»
18:44 psch m: say &SEQUENCE
18:44 camelia rakudo-moar abc643: OUTPUT«sub SEQUENCE (\left, Mu \right, :$exclude_end) { #`(Sub|75643256) ... }␤»
18:44 [Coke] Right. those would probably fall under the "hide, don't document" path.
18:45 [Coke] and maybe we document R::I only to say "compiler guts. do not even."
18:45 chanel joined #perl6
18:45 [Coke] AlexDaniel: so how can we get us back on the same page? Which part needs a better explanation by me?
18:48 AlexDaniel [Coke]: if somebody created a doc ticket for something that is not tested in roast, what should I do?
18:48 [Coke] (or, assuming I explained it and it's just wrong, what needs changing?)
18:48 buggable joined #perl6
18:48 babydrop buggable: speed
18:48 buggable babydrop, ▆▇██▇█▅▅▆▇▅▇▆▃▃▅▂▂▂▂▅▃▄▂▁▆▃▂▅▂▄▃█▃▄▄▆▄▅▃▄▃▄▄▃▄▃▃▃▃ data for 2016-10-28–2016-12-02; variance: 6.238s–7.181s
18:48 AlexDaniel [Coke]: my idea was: close the ticket, mark as NOTSPECCED, create a roast issue if makes sense
18:48 [Coke] AlexDaniel: ask the spec/compiler authors if its omission from roast is deliberate or not.
18:48 AlexDaniel and reopen once it is in roast
18:48 [Coke] ok. once you close the ticket, how do you know whether to ever open it again?
18:49 [Coke] I would suggest leaving it open with a link to the roast issue. then when that issue is closed, you have a clear action.
18:49 [Coke] otherwise you still have to track when the roast issue is closed, but now you have no easy way to do it.
18:50 AlexDaniel well, github shows backlinks quite nicely
18:50 AlexDaniel so anyone closing the roast issue should probably see that something needs to be reopened, I guess
18:51 AlexDaniel but if not, due to NOTSPECCED label we will probably notice it later
18:51 * psch doesn't understand why the doc ticket has to be closed inbetween
18:51 [Coke] Then we're relying on whoever closed the roast ticket (who may have done so via a commit message) to poke around in the doc queue.
18:51 babydrop Yeah
18:51 [Coke] yah, let's back up: what's the point of closing the ticket?
18:51 babydrop And the roast issue can be closed via a commit, by someone who first saw the issue via email notification
18:51 AlexDaniel well, initially I was saying that we should doc obvious things even if not specced
18:52 AlexDaniel gfldex has a strong opposition to this, and in the end I agreed
18:52 babydrop Sure. makes sense.
18:52 AlexDaniel then a bunch of NOTSPECCED issues were created
18:52 AlexDaniel so much that it floods the queue more than it would be acceptable, IMO
18:53 AlexDaniel so [Coke] marked them all as NOTSPECCED so that it's easier to navigate through this mess
18:53 [Coke] yup. with the tag, I can easily ignore them while working on other things.
18:53 edghto joined #perl6
18:53 AlexDaniel then I said “ok, well, if there's nothing we can do, let's close them all, but keep them marked just in case”
18:53 [Coke] so I'm fine if they stay open that way.
18:54 babydrop AlexDaniel: what do you mean by nothing you can do?
18:54 [Coke] esp since now there is a plan.
18:54 AlexDaniel babydrop: well, what can we do with MONKEY-WRENCH not being specced?
18:54 AlexDaniel from the standpoint of the doc team
18:54 babydrop m: use MONKEY-WRENCH;
18:54 camelia rakudo-moar abc643: ( no output )
18:55 moritz m: use MONKEY-ANYTHING;
18:55 camelia rakudo-moar abc643: OUTPUT«===SORRY!===␤Could not find MONKEY-ANYTHING at line 1 in:␤    /home/camelia/.perl6␤    /home/camelia/rakudo-m-inst-1/share/perl6/site␤    /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤    /home/camelia/rakudo-m-inst-1/share/perl6␤    CompUni…»
18:55 AlexDaniel m: use MONKEY-SHINE;
18:55 camelia rakudo-moar abc643: ( no output )
18:55 AlexDaniel wtf?
18:55 AlexDaniel bisect: use MONKEY-SHINE;
18:55 bisectable6 AlexDaniel, On both starting points (old=2015.12 new=abc6439) the exit code is 0 and the output is identical as well
18:55 bisectable6 AlexDaniel, Output on both points:
18:55 AlexDaniel I thought it printed a NYI warning
18:55 AlexDaniel bisect: use MONKEY-BARS;
18:55 bisectable6 AlexDaniel, Bisecting by exit code (old=2015.12 new=abc6439). Old exit code: 1
18:56 bisectable6 AlexDaniel, bisect log: https://gist.github.com/d9e7​378cb3acb66be62626d2a0943957
18:56 bisectable6 AlexDaniel, (2016-06-06) https://github.com/rakudo/rakudo/commit/​3156a9a9f3243b292dda349096da801bd89aed6c
18:56 [Coke] Ask the dev/spec team why it's reserved and presents that way.
18:56 AlexDaniel [Coke]: ok, so in other words, you want to reopen all these tickets?
18:56 babydrop AlexDaniel: interesting. Well, in this particular case it's a pragma reserved for future use. So IMO it's fine to documented as that, even tho it's not specced.
18:57 labster joined #perl6
18:57 psch it could be added to roast as a simple "doesn't die" test
18:57 [Coke] AlexDaniel: until we know if it's something that needs to eventually be doc'd or not, yes.
18:57 babydrop psch++ that's a good idea
18:57 psch which also already adds a point for the future feature
18:57 [Coke] babydrop: I would argue that it still needs a test in roast to show it's reserved.
18:57 psch s/$/ and test/
18:57 [Coke] ... psch++ (coke too slow)
18:58 babydrop [Coke]: fair enough. I just couldn't think of what the test would be, but I like psch++'s idea
18:58 AlexDaniel [Coke]: well, I was kinda influenced by babydrop complaints that having lots of open tickets is shitty, but if we say it's not, then…
18:58 babydrop :(
18:58 AlexDaniel what?
18:58 psch having open tickets is kind of shitty, yes, but closing them without actually resolving the underlying issue doesn't really add anything there
18:59 babydrop AlexDaniel: just making a mental note to self to complain less :)
18:59 psch it just muddles the open/closed distinction
18:59 TimToady .oO(We shouldn't resolve to be more resolute till New Year's Day...)
18:59 babydrop m: package MONKEY-WRENCH { sub foo is export { 42; } }; import MONKEY-WRENCH; foo
18:59 camelia rakudo-moar abc643: ( no output )
18:59 babydrop m: package MONKEY-WRENCH { sub foo is export { 42; } }; import MONKEY-WRENCH; say foo
18:59 camelia rakudo-moar abc643: OUTPUT«42␤»
18:59 babydrop v0v
19:00 babydrop I guess I'm not `use`ing anything
19:00 psch right, that's different code paths
19:01 TimToady m: use MONKEY-WRENCH;
19:01 camelia rakudo-moar abc643: ( no output )
19:01 TimToady m: use MONKEY-DOODOO;
19:01 camelia rakudo-moar abc643: OUTPUT«===SORRY!===␤Could not find MONKEY-DOODOO at line 1 in:␤    /home/camelia/.perl6␤    /home/camelia/rakudo-m-inst-1/share/perl6/site␤    /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤    /home/camelia/rakudo-m-inst-1/share/perl6␤    CompUnit:…»
19:01 [Coke] I mean, those particular ones are all TimToady++s fault, I think. :)
19:01 babydrop :D
19:02 AlexDaniel [Coke]: done.
19:02 vike joined #perl6
19:02 xinming joined #perl6
19:03 [Coke] AlexDaniel: yes, my phone just vibrated for 40s straight. :)
19:03 AlexDaniel ♥ Github mass actions
19:06 AlexDaniel .oO( lesson learned: when discussions take too long, go and do something stupid. Proper resolution of the issue will follow shortly )
19:07 dwarring joined #perl6
19:08 [Coke] mmhehehe
19:09 timotimo i think i missed something ...
19:09 moritz turns out Berlin Tegel airport has 1h of free wifi -- per MAC address and browser session :-)
19:09 timotimo hehehe
19:14 RabidGravy BOOM!
19:15 AlexDaniel ?
19:16 TimToady Q: Why is the boom called a boom?  A: Just stand right there next time we tack into the wind.
19:17 RabidGravy It's Friday, I'm sat on my sofa with a beer and I just got paid for breaking someones software for a month
19:17 TimToady you shouldn've broken it longer
19:17 TimToady *should've
19:18 RabidGravy oh there's so much more to break ;-)
19:18 dalek doc: 57355ef | coke++ | doc/Type/Promise.pod6:
19:18 dalek doc: remove reference to sub start.
19:18 dalek doc:
19:18 dalek doc: Closes #874
19:18 dalek doc: review: https://github.com/perl6/doc/commit/57355ef49a
19:18 synopsebot6 Link: http://doc.perl6.org/type/Promise
19:19 bstamour` joined #perl6
19:19 geekosaur ...so are you suggesting I should just do the Callable thing and damn v6.c compat? (somehow I suspect not... it's tempting though, I really would like the better compile time errors)
19:20 RabidGravy damn the 6.c compat, if there are downstream users send them patches ;-)
19:21 geekosaur yeh. I'm not sure it changes anything in practice aside from turning some runtime errors into compile time like they really ought to be
19:21 timotimo i'm almost tempted to dogfood our projects.json updater ...
19:22 RabidGravy when I start getting bug reports from people who aren't on this channel, then I'll start worrying about things like that ;-)
19:22 geekosaur (for those playing along from home, I want to turn CALL-ME into an internal thing that is only exposed as a method of Callable, and then stick Callable constraints on all the current uses in nqp-land)
19:23 geekosaur (because while something like 5() is fairly obvious, it's possible to get some rather non-obvious runtime failures that could easily be caught at compile time with a more Awesome error message)
19:24 RabidGravy so ... CALL-ME() will only work for Callables?  Not a problem for me, I'm pretty certain that's the only place I've used it
19:25 RabidGravy however I have seen it used as a poor persons coercion thingy somewhere
19:25 RabidGravy though that was a while ago
19:25 timotimo https://aturon.github.io/blog/2016/08/11/futures/ - rust's futures and streams are quite like our promises and supplies, but they don't have a "supply/whenever" equiv yet (at that point anyway)
19:26 geekosaur I recall discussion of that, and it's (a) the thing that worries me about the change and (b) what first got me thinking about why such a thing is not properly documented or anything
19:27 RabidGravy I had to explain to someone how Scala's futures worked to someone yesterday
19:27 RabidGravy er
19:27 geekosaur (note the current docs have it --- but they're based on my musings about this, and do not reflect the actual implementation!)
19:28 geekosaur ...which, if anything, I like even less...
19:28 RabidGravy well if someone is actually using that trick and they aren't making their thingy a Callable it's a fairly trivial change
19:28 RabidGravy and frankly I don't think it's documented as working, it just *does* work atm
19:29 nadim_ joined #perl6
19:29 geekosaur it wasn't documented at all until the incorrect docs citing it as part of Callable were added
19:29 RabidGravy is it actually tested as working?
19:29 psch it's in roast
19:30 nadim_ joined #perl6
19:30 psch S13-overloading/operators.t for example defines a method CALL-ME
19:30 RabidGravy m: class Foo is Int { method CALL-ME($foo) { return 98 } }; say Foo("bar");
19:30 camelia rakudo-moar abc643: OUTPUT«98␤»
19:30 psch and typecasting-long.t in the same directory too
19:30 RabidGravy that one is what we are talking about right?
19:34 dalek mu: 90d29c0 | (Nadim Khemir)++ | misc/perl6advent-2016/schedule:
19:34 dalek mu: Take a slot in 2016 advent calender
19:34 dalek mu: review: https://github.com/perl6/mu/commit/90d29c01a1
19:34 dalek mu: efc7c4b | moritz++ | misc/perl6advent-2016/schedule:
19:34 dalek mu: Merge pull request #20 from nkh/master
19:34 dalek mu:
19:34 dalek mu: Take a slot in 2016 advent calender
19:34 dalek mu: review: https://github.com/perl6/mu/commit/efc7c4b6f1
19:34 nadim_ joined #perl6
19:35 babydrop \o/
19:35 AlexDaniel “More months have passed.”
19:35 AlexDaniel time flies
19:35 timotimo hah :D
19:35 nadim_ joined #perl6
19:35 timotimo now all i have to do is find otu what day i'll manage to get my post written for
19:36 AlexDaniel timotimo: 10 looks just about right :P
19:36 timotimo what about the posts above it?
19:37 timotimo i might be able to do 9, or if i get lucky 8 or if things absolutely go my way, the 7th
19:37 geekosaur RabidGravy, yes
19:37 timotimo when this ps3 is updated and i can use it as a media center to play some loud music loudly, i'll see about starting the hacking process
19:38 geekosaur so I'd also have to revise roast... which again gets back to "this impacts 6.c"
19:38 timotimo oh, i haven't even read today's advent post yet!
19:38 nadim_ joined #perl6
19:39 RabidGravy right, I didn't realise it was tested for
19:39 RabidGravy my instinct would be to can it though, maybe after a quick grep of the ecosystem
19:40 [Coke] `
19:40 babydrop Right, take 7-9 spots first. Those are "emergency fillers" in case we don't get volunteers to add a post per day
19:40 babydrop And move the fillers further down
19:40 timotimo does somebody want to try to add syntax highlighting to kyclark's post from today?
19:41 babydrop (or remove them if there's no more space for them)
19:42 nadim_ joined #perl6
19:42 labster joined #perl6
19:42 babydrop RabidGravy: if it's in 6.c, we're not canning it. The change would be a proposal for 6.d.
19:43 babydrop Which we currently have this file to put them into: https://github.com/perl6/specs/blob/master/v6d.pod
19:44 babydrop huggable: v6.d :is: Proposed changes for Perl 6 v6.d: https://github.com/perl6/specs/blob/master/v6d.pod
19:44 huggable babydrop, Added v6.d as Proposed changes for Perl 6 v6.d: https://github.com/perl6/specs/blob/master/v6d.pod
19:44 SmokeMachine____ joined #perl6
19:44 nadim_ joined #perl6
19:45 Madcap^Jake^ joined #perl6
19:48 RabidGravy but I don't have a proposal
19:48 nadim_ joined #perl6
19:49 geekosaur I'm the one who had the proposal...
19:49 mithaldu_ joined #perl6
19:50 nicq20 joined #perl6
19:52 babydrop The point is 6.c is our promise to users the features can be relied upon and will work as tested. It's not a promise to ecosystem authors that we can quickly-grep-and-can stuff :)
19:52 nadim_ joined #perl6
19:53 RabidGravy right, then I'll put it like this, I think that geekosaur's proposall is a good one, in that allowing CALL-ME to work on something that isn't a Callable is a design flaw
19:54 psch which means we need a new coercer proposal
19:54 BuildTheRobots joined #perl6
19:54 psch oh, and Junction has to does Callable too
19:55 psch the latter is probably fine-ish, the former... well, it's come up :)
19:55 geekosaur see, this kind of stuff is why I sent my proposal to the mailing list a couple weeks back (and got back confusion and who-cares?...)
19:55 babydrop RabidGravy: um, what about allowing AT-POS on something that isn't an Iterable or AT-KEY on something that isn't an Associative?
19:55 babydrop m: class Foo { method AT-POS ($) { say "meow" } }; Foo.new[42]
19:55 camelia rakudo-moar abc643: OUTPUT«meow␤»
19:56 babydrop m: class Foo { method AT-KEY ($) { say "meow" } }; Foo.new{42}
19:56 camelia rakudo-moar abc643: OUTPUT«meow␤»
19:56 geekosaur that said, to me a coercer looks like a method call, so I don't see why it shouldn't be considered a Callable
19:56 psch geekosaur: a coercer isn't a method call
19:56 psch m: say (Int("42")).WHAT
19:56 camelia rakudo-moar abc643: OUTPUT«(Int)␤»
19:56 geekosaur ok, or sub call
19:57 psch so all types are automatically Callable, because they could implement coercers
19:57 nadim_ joined #perl6
19:57 avalokite joined #perl6
19:58 avalokite joined #perl6
19:58 geekosaur hm, so where are coercers documented?
19:59 psch https://docs.perl6.org/syntax/Coercion%20Type
19:59 psch which is a bit slim
19:59 geekosaur because "could implement" suggests to me that wants to be a Role (which in turn would `does Callable`)
20:00 kipd joined #perl6
20:00 geekosaur ...which again could usefully turn a run time error into a compile time error
20:00 psch mind, i actually like the idea of narrowing CALL-ME towards Callable
20:00 psch exactly because it does force us to rework coercers
20:01 psch maybe that's just a COERCE method that gets called similarly to how CALL-ME gets called now, maybe it's a plan about how to shift coercion to the target type instead of the original type, maybe even something else that works even better
20:01 nadim_ joined #perl6
20:02 dalek doc: 97780f3 | Altai-man++ | doc/Language/classtut.pod6:
20:02 synopsebot6 Link: http://doc.perl6.org/language/classtut
20:02 dalek doc: Add a search anchor for "OOP" (closes #724)
20:02 dalek doc:
20:02 dalek doc: See https://github.com/perl6/doc/is​sues/724#issuecomment-264547682
20:02 dalek doc: review: https://github.com/perl6/doc/commit/97780f38dc
20:03 psch as of now, i'm resign to "if $val.Target doesn't work, try Target.new($val)", which goes pretty much where we have the CALL-ME fallback right now
20:03 psch in BOOTSTRAP.nqp that
20:03 psch s/resign/resigned/
20:03 [Coke] (mailing list) no design discussions for Perl 6 happen on mailing lists at this opint.
20:03 psch but that still seems unsufficiently awesome, intuitively vOv
20:04 nadim_ joined #perl6
20:04 [Coke] raise it in #perl6-dev until someone says boo.
20:06 nadim_ joined #perl6
20:07 olinkl joined #perl6
20:07 AlexDaniel [Coke]: what is Hacktoberfest, by the way?
20:08 AlexDaniel like, why would we have a label like this? What does it mean?
20:10 samcv AlexDaniel, these are all the things I fixed in the last PR to atom syntax highlight https://github.com/MadcapJa​ke/language-perl6fe/pull/43
20:10 * geekosaur also remembering now a discussion from a month or so back involving confusion about coercers; need to dig that out of logs
20:10 timotimo AlexDaniel: i think it was "these issues are good for outsiders who just want to get a pull request in"
20:10 samcv if anybody uses atom can check out my branch and test it out, or any suggestions for things I may have missed that are not listed there or here https://github.com/MadcapJa​ke/language-perl6fe/pull/42
20:10 AlexDaniel timotimo: how is that different from LHF?
20:11 timotimo it isn't, but it might give discoverability
20:11 AlexDaniel :-/
20:11 timotimo i.e. you could perhaps stumble upon us if you just search for "hacktoberfest"
20:11 timotimo i'm not saying we want to keep it
20:11 babydrop AlexDaniel: yearly event organized by Digital Ocean: submit any 3 (?) PR on GitHub and receive a free shirt. To make it easier for contributors to find repos participating in the event, the organizers suggest the use of label Hacktoberfest
20:11 timotimo re-name it LHF if possible?
20:11 nadim_ joined #perl6
20:11 AlexDaniel ok so I mark them all as LHF and remove the label?
20:11 babydrop AlexDaniel: it's over for this year, tho, and won't start again auntil October 1st, 2017
20:11 AlexDaniel or what do we want?
20:12 babydrop AlexDaniel: just leave them until next year?
20:12 AlexDaniel O_o
20:12 babydrop What?
20:12 samcv what shirt do you get though?
20:12 babydrop I mean the issue will either be closer or be still good enough next Hacktober
20:12 babydrop Why remove it just to re-add it next year
20:13 timotimo samcv: probably a shirt some random developer no longer wants to wear because it's torn or has started to smell or something :P
20:13 babydrop samcv: this one was last years: https://www.digitalocean.com/company/blog​/hacktoberfest-is-back/hero-5ab728de.png
20:13 babydrop This year the design is different
20:13 nadim_ joined #perl6
20:13 babydrop Oh, it's 4 PRs and get a shirt
20:14 timotimo you know, raw.githubusercontent.com probably supports an "If-Modified-Since" header
20:14 AlexDaniel so why are they doing it? :)
20:14 babydrop AlexDaniel: to promote their company.
20:14 timotimo because they want to be known by people
20:14 AlexDaniel so why do we participate in promoting their company?
20:14 babydrop AlexDaniel: we get unpaid labour fixing stuff
20:15 AlexDaniel how much unpaid labour did we get this year?
20:15 notbenh_ joined #perl6
20:15 babydrop There were a few users
20:15 geekosaur same question could be asked about GSoC...
20:15 nicq20 AlexDaniel: I made a could edits to the traps section of the docs because of it.
20:15 babydrop \o/
20:15 nicq20 s/could/couple/
20:15 AlexDaniel oh well
20:16 babydrop timotimo: it's actually a decent shirt. They sent me two last year. I still wear them to work sometimes :)
20:16 babydrop ...and I'm glad this year's design is much more subtle...
20:16 nicq20 AlexDaniel: It's basically a nice incentive to give people an extra push to actually do something.
20:16 nicq20 Everyone loves a free shirt! :D
20:17 AlexDaniel so why can't we just slap Hacktoberfest on all LHF issues each year?
20:18 AlexDaniel … yea?
20:18 babydrop I didn't equate LHF to Hacktoberfest when I labeled Issues this year.
20:18 babydrop Some of them aren't LHF and require work, but can be done by a relative outsider still.
20:18 AlexDaniel :/
20:19 babydrop Are we talking about just /doc repo or all of them?
20:19 AlexDaniel you did that to other repos as well? :O
20:19 babydrop Of course
20:20 AlexDaniel hmm…
20:20 babydrop huggable: hacktoberfest
20:20 huggable babydrop, nothing found
20:20 * babydrop tries to remember GitHub's search stuff to show all of hacktoberfest issues for perl6 org
20:21 babydrop Ah https://github.com/issues?utf8=%E2​%9C%93&amp;q=is%3Aopen+is%3Aissue+​user%3Aperl6+label%3AHacktoberfest
20:22 samcv does anybody here use Atom?
20:22 babydrop AlexDaniel: well, if the labels are that much of an issue, I'd say removing them is better than changing them to LHF
20:22 babydrop samcv: yo
20:23 nicq20 samcv: Yerp.
20:23 samcv want to get somebody to test my large number of changes to the Atom FE perl 6 syntax highlighter
20:23 samcv nice
20:23 samcv ok
20:23 samcv if you can try out https://github.com/samcv/la​nguage-perl6fe/tree/testing
20:23 AlexDaniel babydrop: nah, I guess I'm the only one who is disgusted by this thing, we can leave it
20:23 samcv https://github.com/MadcapJa​ke/language-perl6fe/pull/42 and https://github.com/MadcapJa​ke/language-perl6fe/pull/43 list the changes nicq20 babydrop
20:24 babydrop samcv: oh, I'm too stupid to try stuff out.
20:24 samcv but would like people to test them out since MadCapJake is thinking of doing a 1.9 release tonight. so
20:24 samcv lol
20:24 babydrop All I do is click "update" on perl6fe .
20:24 pecastro joined #perl6
20:25 samcv babydrop,
20:25 babydrop sup
20:25 samcv cd ~/.atom/packages
20:25 samcv mv language-perl6fe language-perl6fe-bak
20:25 samcv git clone https://github.com/samcv/language-perl6fe.git
20:26 samcv cd language-perl6fe
20:26 samcv git checkout testing
20:26 babydrop ok, what's next?
20:27 samcv i think that should work
20:27 babydrop Right, but what am I testing?
20:27 samcv uh any perl 6 syntax highlighting i guess
20:28 babydrop Heh, well, ok, the 「stuff」 is still not highlighted as a string.
20:28 cognominal joined #perl6
20:28 samcv you sure? it's working for me
20:28 samcv you did checkout testing right?
20:28 babydrop And neither does using ✎ as a HEREDOC separator
20:28 babydrop Yeah, I did
20:28 samcv hahaha
20:29 nicq20 samcv: ditto
20:29 samcv hmm this works for me 「testing」 this
20:29 samcv can you send me a pic?
20:29 AlexDaniel samcv: by the way
20:30 AlexDaniel samcv: what happens if you write something like this: “hello {say “test”} world” ?
20:30 samcv that works fine AlexDaniel
20:30 babydrop samcv: hm... it's also showing me to perl6fe plugins in packages
20:30 AlexDaniel samcv: the whole thing is highlighted as a string?
20:30 babydrop samcv: http://i.imgur.com/GQohsnf.png
20:31 samcv AlexDaniel, well the stuff in brackets are highlighted as normal code should be
20:31 samcv but the rest is highlighted fine as a string
20:31 AlexDaniel hmm
20:31 babydrop samcv: oh, ok. I moved the .bak package out of packages/ dir... and now the string gets highlighted
20:31 babydrop But not the heredoc
20:31 samcv yeah the heredoc isn't working right now
20:32 babydrop ok :)
20:32 samcv will note that down
20:32 samcv should be a way that can be done
20:32 [Coke] samcv: I use atom very occasionally.
20:33 babydrop samcv: hmm, were you fixing the ‘ quotes too? Fancy pants Unicode single quot4es?
20:33 samcv yes
20:33 samcv did you see both tho PR i linked to?
20:33 samcv https://github.com/MadcapJa​ke/language-perl6fe/pull/42 and https://github.com/MadcapJa​ke/language-perl6fe/pull/43
20:33 babydrop samcv: Perl 6 actually accepts them in reverse order too, or just 2 closing/2 opening quotes
20:33 samcv both those combined list all the changes
20:34 babydrop samcv: so ‘hello {say “test”}world’ gets highlightyed as a string for me, but not ’hello {say “test”}world‘
20:34 samcv yeah reverse order isn't in yet. but two closing works, and opening/closing works
20:34 babydrop m: say ’hello {say “test”}world‘
20:34 camelia rakudo-moar abc643: OUTPUT«hello {say “test”}world␤»
20:34 babydrop Well, I'm glad at least one way works :)
20:35 babydrop 'cause I'm using them in my article and I hope GitHub will update fast enough for me to grab their markup
20:35 samcv heh
20:35 samcv but yeah see the list i made there. and then like. try some things
20:35 * [Coke] is now using that version of samcv's plugin. seems fine?
20:35 samcv and maybe try putting things that are variables that SHOULDN't be highlighted in double quoted strings in
20:36 samcv "$<variable>" didn't hihlight before, but it may have been too eager
20:36 [Coke] btw: qqx// highlights correctly, but qqx"" doesn't. I realize this is probably very far away from what you're working on.:)
20:36 japhb babydrop++  # Taking my CSV sparkline as a starting point and doing exactly what I'd been hoping someone would do.  :-)
20:36 [Coke] ... or maybe just too much green
20:36 samcv if people know things that are variables that can't be used inside double quoted strings. i've tested methods
20:37 samcv i will add that to my list [Coke]
20:37 samcv :)
20:38 babydrop samcv: qw|meow| doesn't work, but qw/meow/ and qw[meow] does
20:38 samcv hmm should be easier to add a bunch of q'something' forms. as long as the opening and closing match
20:38 samcv then i can combine them *i think* into one thing
20:38 samcv instead of having duplicated rules
20:38 babydrop m: say q:w✎meow✎;
20:38 camelia rakudo-moar abc643: OUTPUT«meow␤»
20:38 samcv maybe
20:38 babydrop m: say q:w    ✎meow✎;
20:38 camelia rakudo-moar abc643: OUTPUT«meow␤»
20:39 babydrop m: q:w᚜meow᚛
20:39 camelia rakudo-moar abc643: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Use of a closing delimiter for an opener is reserved␤at <tmp>:1␤------> 3q:w7⏏5᚜meow᚛␤»
20:39 samcv heh
20:39 babydrop m: q:w᚛meow᚜
20:39 camelia rakudo-moar abc643: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant string "meow" in sink context (line 1)␤»
20:40 babydrop m: say q:w᚛meow᚜
20:40 camelia rakudo-moar abc643: OUTPUT«meow␤»
20:41 babydrop samcv: this one isn't fixed for me: https://github.com/MadcapJak​e/language-perl6fe/issues/41
20:41 babydrop In "$<time> $<units>" they're not highlighted... They show up jkust like normal text inside quotes
20:41 cognominal joined #perl6
20:41 samcv hm
20:42 pyrimidine joined #perl6
20:42 samcv i am seeing that now too
20:42 samcv ahhh
20:42 samcv “$<test>” works tho :) ok will fix the normal quotes
20:43 babydrop samcv: off the top of my head, I can think of `.categorize-list` that is the same issue as https://github.com/MadcapJak​e/language-perl6fe/issues/38
20:43 babydrop samcv: oh, and "parse-base"; it's new
20:44 babydrop Quick, everybody! Let's pile on samcv!
20:44 babydrop :)
20:44 babydrop samcv: well, that's all I got. Thanks for fixing so many issues :)
20:45 samcv you're welcome!
20:45 Madcap^Jake^ joined #perl6
20:45 pmurias geekosaur: GSoC vs hacktober, GSoC gives out cash rather then t-shirts
20:46 samcv "$<this>" should work now, pushed that
20:46 samcv will add those methods babydrop
20:47 geekosaur I was actually responding to [02 20:14:42] <AlexDaniel> so why do we participate in promoting their company? in turn responding to [02 20:14:15] <AlexDaniel> so why are they doing it? :) [02 20:14:30] <babydrop> AlexDaniel: to promote their company.
20:49 * babydrop disappears until Monday
20:49 babydrop Gonna hack on the -Inf and sub signature literals and <...> bugs and write the Advent articles.
20:49 babydrop \o/ hackety hack weekend weeee
20:49 timotimo have a good weekend, babydrop :)
20:58 samcv gonna work on getting all possible types of heredocs to work now..
20:58 samcv if i can decode these regex
20:58 timotimo it would be amazing if the heredocs could even figure out if closures and/or variables will be interpolated
20:59 samcv because i'm not 100% how the heredocs even work right now in Perl 6 FE
20:59 timotimo m: say Q/what { say "yo" } $interpolation $none.of().this()/
20:59 camelia rakudo-moar abc643: OUTPUT«what { say "yo" } $interpolation $none.of().this()␤»
20:59 seatek joined #perl6
20:59 TEttinger joined #perl6
21:01 samcv thing i'm gonna break out and use a regex tool type site so I can figure out what's going on here :P would also be nice if atom had better documentation for this too
21:01 samcv well they have 0
21:02 timotimo the syntax highlighters for atom are just "stolen" from something else ... textmate perhaps? i don't remember
21:02 samcv yeah textmate
21:02 samcv textmate manual has like
21:02 samcv https://manual.macromates.com/en/language_grammars
21:02 timotimo so hopefully there's good documentation for that?
21:02 samcv it's not that good
21:02 timotimo lol, 5 screenpages full
21:03 timotimo that's sad
21:03 samcv yeah :(
21:03 samcv seriously
21:04 samcv i mean it explains some things okay. but others it doesn't like too much
21:04 cdg joined #perl6
21:04 samcv it could be worse i guess?
21:04 timotimo always can, yeah
21:11 hahainternet m: Array.new(:shape(2;2));
21:11 camelia rakudo-moar abc643: ( no output )
21:11 hahainternet m: say Array.new(:shape(2;2));
21:11 camelia rakudo-moar abc643: OUTPUT«[[(Any) (Any)] [(Any) (Any)]]␤»
21:11 hahainternet oh weird, why's that different on mine
21:11 yoleaux AlexDaniel: harass mst
21:12 hahainternet ah because i was errantly assigning it to an array i think
21:12 AlexDaniel mst: hey! How are you doing?
21:12 AlexDaniel mst: I don't want to sound annoying, but was there any progress regarding the “new ticket” button?
21:17 samcv wth, maybe it's a problem with Atom ? or its engine?
21:18 samcv it's not working with fancy unicode heredocs, even when i match .+ for th edelimiter instead of \w+
21:18 samcv :(((
21:28 dalek doc: a601491 | coke++ | / (2 files):
21:28 dalek doc: Add note about why "Perl 6"
21:28 dalek doc:
21:28 dalek doc: closes #294
21:28 dalek doc: review: https://github.com/perl6/doc/commit/a601491abd
21:28 [Coke] TimToady: Please free free to editorialize on that one
21:28 [Coke] ^^
21:29 cognominal joined #perl6
21:37 Guest42590 joined #perl6
21:38 edghto left #perl6
21:38 nicq20 left #perl6
21:39 [Coke] AlexDaniel: your all white github icon is... frustrating.
21:40 dalek doc: 5eae2aa | coke++ | doc/Language/glossary.pod6:
21:40 dalek doc: add missing trailing quote
21:40 synopsebot6 Link: http://doc.perl6.org/language/glossary
21:40 dalek doc: review: https://github.com/perl6/doc/commit/5eae2aadf6
21:45 Madcap^Jake^ joined #perl6
21:54 firstdayonthejob joined #perl6
22:01 bstamour` left #perl6
22:01 cognominal joined #perl6
22:03 wamba joined #perl6
22:08 AlexDaniel [Coke]: it's not completely white!
22:09 samcv oh actually was the problem with atom using a different directory. well! fancy heredocs are fixed now.
22:18 cognominal joined #perl6
22:23 sufrostico joined #perl6
22:32 hahainternet what's the [] syntax called when used for example, like Array[Int].new ?
22:32 hahainternet wandered through the docs and didn't find much
22:38 AlexDaniel hahainternet: https://docs.perl6.org/routine/[%20]#(Operators)_postcircumfix_[_]
22:39 AlexDaniel ahhh
22:39 AlexDaniel no
22:40 hahainternet i think it's a parameterised role, but i can't see where that applies in Array.pm for example
22:40 geekosaur parameterized roles/classes?
22:40 AlexDaniel hahainternet: it is not there, at least not searchable. Please file a doc issue
22:40 hahainternet ah because it's in TypedArray.pm
22:40 hahainternet and i may, i barely have time for this atm
22:41 hahainternet thanks for the attempt though AlexDaniel
22:41 AlexDaniel hahainternet: maybe this? https://docs.perl6.org/language/list#Typing
22:41 hahainternet yeah i found that but it didn't really explain what was going on
22:42 hahainternet https://github.com/rakudo/rakudo/b​lob/nom/src/core/TypedArray.pm#L3 seems to though
22:42 AlexDaniel it should be searchable though
22:43 pyrimidine joined #perl6
22:45 AlexDaniel huggable: rakudobug
22:45 huggable AlexDaniel, rakudobug@perl.org or use perl6 query on http://rt.perl.org ; see https://github.com/rakudo/rakudo/#reporting-bugs
22:46 Madcap^Jake^ joined #perl6
22:48 hahainternet AlexDaniel: first docs bug, that github link links to another link, which says nothing about docs bugs :)
22:48 AlexDaniel huggable: docs
22:48 huggable AlexDaniel, nothing found
22:48 AlexDaniel huggable: doc bug
22:48 huggable AlexDaniel, nothing found
22:48 AlexDaniel hahainternet: well, that's why it is a “rakudobug” :)
22:50 gfldex AlexDaniel: TypedArray is a private role of Array
22:51 AlexDaniel ?
22:51 dalek doc: c0b12ff | gfldex++ | doc/Language/list.pod6:
22:51 dalek doc: index ‚typed array‘
22:51 dalek doc: review: https://github.com/perl6/doc/commit/c0b12ffab0
22:51 synopsebot6 Link: http://doc.perl6.org/language/list
22:51 gfldex sorry that was for hahainternet
22:52 gfldex so TypedArray.pm isn
22:52 gfldex so TypedArray.pm isn't really there
22:52 gfldex why did they put those keys so close together?
22:52 AlexDaniel gfldex: perhaps [ ] should also point there
22:53 dalek doc: 7e80010 | gfldex++ | doc/Language/list.pod6:
22:53 dalek doc: index [ ] for typed arrrays
22:53 synopsebot6 Link: http://doc.perl6.org/language/list
22:53 dalek doc: review: https://github.com/perl6/doc/commit/7e80010ea1
22:55 AlexDaniel gfldex++
22:57 pyrimidine joined #perl6
22:59 pyrimidine joined #perl6
23:05 * moritz back home
23:06 moritz any news about bdfoy's advent post?
23:06 moritz it sits as a draft in wordpress, is it publishable?
23:07 gfldex you can move mine to today if you like
23:07 gfldex well, to today in 1h
23:10 clasclin joined #perl6
23:12 * moritz is closer to just publishing it
23:14 hahainternet AlexDaniel: the reason i was asking btw, is that i noticed i could do 'class Whatever is Array', but not 'is Array[Int]', but doesn't seem like making a TypedArray is a 'real' thing, i'd probably have to call the metamodel sub myself i assume
23:15 hahainternet still, learning is good :D
23:15 gfldex there is also ‚of‘
23:15 hahainternet does that actually work? it didn't seem to but that was about 45 mins ago and i can't remember precisely what i was doing
23:16 gfldex m: class C is Array of Int {}
23:16 camelia rakudo-moar abc643: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤No such method 'set_of' for invocant of type 'Perl6::Metamodel::ClassHOW'␤at <tmp>:1␤»
23:16 gfldex there may be an RT for that
23:16 gfldex if not there should
23:16 hahainternet tbqh i'm more interested to learn how 'of' works, i noticed that 'shape' is just a constructor parameter
23:17 hahainternet so i assume it works out to be equiv to :of(Int)
23:17 gfldex how of works is an implementation detail
23:17 clasclin Hi everyone, I think I have some configuration problem on windows machine launching external programs with run, it just gives an exitcode -16 no matter what program try to run
23:18 clasclin I have no idea what that means or how to debug it
23:18 gfldex https://docs.perl6.org/type/Variable#trait_of
23:18 hahainternet gfldex: perhaps not the 'how', but the 'slot' it occupies in the language, if that makes sense
23:18 hahainternet yeah exactly that link :)
23:18 cognominal joined #perl6
23:19 gfldex there is a bug in htmlify.p6 that prevents traits from ending in the index
23:20 AlexDaniel clasclin: hello. Do you have some example so that we can try to reproduce it?
23:20 gfldex clasclin: please file a bug report (IIRC run ends up as a problem of the vm)
23:21 gfldex Rakudo is not well tested in windows
23:25 clasclin I tried with a few commands like run 'dir' or run 'ls' or run 'myscript.pl6' on windows 10 x64, the perl -v is 2016.11 built on moar
23:26 clasclin also try with older versions and same exitcode -16
23:26 clasclin also try with older versions and same exitcode -16
23:27 timotimo huh, wtf?
23:27 timotimo i haven't heard of this one before
23:28 timotimo can you try run with a full path? like C:\\Windows\\calc.exe or whatever the path is?
23:31 cognominal joined #perl6
23:33 Tonik joined #perl6
23:33 clasclin hmm the exitcode is 0 for > run 'C:\\Windows\write.exe' but program didn't open
23:34 timotimo what is write.exe?
23:34 timotimo is it actually a gui program that'll pop open a window?
23:34 clasclin it's a gui program
23:34 clasclin it's wordpad
23:37 timotimo oh!
23:37 timotimo hum :\
23:37 clasclin the shell command works fine if I type > shell 'C:\\Windows\write.exe'
23:37 clasclin but the shell does not accept any arguments
23:37 timotimo well, it's supposed to do command line splitting on whitespace
23:38 timotimo just like when you enter stuff into the shell
23:45 clasclin I see...
23:46 hahainternet gfldex: can't find an RT for that set_of one
23:46 clasclin > run 'wget.exe', '--help' works fine and shows the help
23:47 clasclin so I think I just a problem with the scripts I've created
23:48 hahainternet hmm and this is the only instance i can find for partially dimensioned views: https://rt.perl.org/Public/​Bug/Display.html?id=128904 but i guess an array of arrays sorts that anyway

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo