»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
00:02
Vynce left
|
|||
AlexDaniel | hehe, well… | 00:04 | |
we're down to 178 issues | |||
175 :) | 00:05 | ||
ZzZombo | What is [LTA]? Later Than Anything? :P | ||
00:05
Actualeyes joined
|
|||
timotimo | less than awesome | 00:05 | |
00:06
wamba left
|
|||
ZzZombo | That makes a bug LTA? | 00:06 | |
timotimo | there's "lta error" bugs when an error message is unhelpful, for example | ||
00:07
trnh left
00:09
mr_ron left
|
|||
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; | ||
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,
dj_goku left,
dj_goku joined
|
|||
AlexDaniel | ZzZombo: if you want read more about this, you can probably wait for my advent post… :) github.com/perl6/mu/blob/master/mi...hedule#L24 | 00:16 | |
tailgate | first advent is today, right? | ||
AlexDaniel | yea | ||
tailgate | hooray! | 00:17 | |
AlexDaniel | it's already there: perl6advent.wordpress.com/ | ||
00:19
cpage_ left
00:21
dj_goku left,
canopus left
|
|||
japhb | [Coke]++ # Advent #1 | 00:26 | |
00:26
canopus joined
|
|||
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
|
|||
AlexDaniel | or more likely so bored pointing it out that they just don't anymore | 00:30 | |
especially with rm -rf | |||
and especially when it has pointless "" quotes around | 00:31 | ||
u: palm So | 00:32 | ||
unicodable6 | AlexDaniel, U+10877 PALMYRENE LEFT-POINTING FLEURON [So] (𐡷) | ||
AlexDaniel, U+10878 PALMYRENE RIGHT-POINTING FLEURON [So] (𐡸) | |||
AlexDaniel, U+1D85B SIGNWRITING HAND-FLAT BETWEEN PALM FACINGS [So] (𝡛) | |||
AlexDaniel, gist.github.com/295e8506deb1cd70bc...017307d0dd | |||
AlexDaniel | u: palm face | ||
unicodable6 | AlexDaniel, U+1F926 FACE PALM [So] (🤦) | ||
AlexDaniel | .tell [Coke] why not fix it, by the way? irclog.perlgeek.de/perl6/2016-12-02#i_13664916 | 00:34 | |
yoleaux | AlexDaniel: I'll pass your message to [Coke]. | ||
00:42
pierre_ joined
00:46
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
gfldex | Technaton: if you go functional you may want to look into docs.perl6.org/type/Signature#Cons..._Callables | 00:48 | |
actually you should read Signature.pod6 first in any case :) | 00:49 | ||
dalek | c: 7c866c4 | gfldex++ | doc/Type/Signature.pod6: link to Block and Sub |
00:51 | |
synopsebot6 | Link: doc.perl6.org/type/Signature | ||
00:51
aborazmeh left
00:54
chris2 joined
00:57
travis-ci joined
|
|||
travis-ci | Doc build errored. Wenzel P. P. Peppmeyer 'link to Block and Sub' | 00:57 | |
travis-ci.org/perl6/doc/builds/180580681 github.com/perl6/doc/compare/d8287...866c40b3fb | |||
00:57
travis-ci left
00:59
aborazmeh joined,
aborazmeh left,
aborazmeh joined
01:03
cdg left
01:05
adrusi joined
01:15
pyrimidine joined
01:17
dj_goku joined
01:22
dj_goku left
01:23
cpage_ joined
01:25
pyrimidine left
01:28
lizmat left
01:29
lizmat joined
01:31
lizmat left,
lizmat_ joined
01:32
zakharyas joined
|
|||
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:32 | |
timotimo | hmm | 01:37 | |
commit a bunch of diagnosis output, and see what's going on | |||
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 | ||
seatek | /do/to/ | 01:39 | |
timotimo | i guess so? | ||
timotimo goes to bed | 01:40 | ||
MasterDuke | anyone know my camelia is about 10 commits behind HEAD? | ||
*why | |||
01:41
lizmat_ left
|
|||
AlexDaniel | MasterDuke: I guess you should ping nine | 01:42 | |
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:43 | |
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
ZzZombo left
|
|||
seatek | can someone kick off a travis build test of p6-HTTP-Server-Tiny ? | 01:51 | |
samcv | ugh still waiting for MadcapJake to wake up from hibernation and merge my PR for Atom's syntax highlighter | 02:11 | |
if anybody knows his email | |||
well i guess i could use the GitHub one | |||
gonna do that now | 02:12 | ||
02:16
obfusk left,
obfusk joined
02:18
dj_goku joined,
dj_goku left,
dj_goku joined
02:21
bjz left
02:22
bjz joined,
pyrimidine joined,
espadrine left
02:23
dj_goku left
02:24
labster left
02:27
cibs left
02:28
cibs joined
02:41
pecastro left
02:45
ilbot3 left
02:47
pecastro joined,
ilbot3 joined
|
|||
AlexDaniel | .seen MadcapJake | 02:49 | |
yoleaux | I saw MadcapJake 17 Jun 2016 21:56Z in #perl6: * MadcapJake is off to dinner | ||
02:50
obfusk left,
obfusk joined
|
|||
AlexDaniel | samcv: :/ | 02:50 | |
02:51
dj_goku joined,
dj_goku left,
dj_goku joined
|
|||
AlexDaniel | samcv: according to his linkedin page, he is alive! | 02:52 | |
samcv | that's good :) | 02:55 | |
AlexDaniel | but you never know! | 02:56 | |
samcv | how recent does his linked in say? | 02:57 | |
AlexDaniel | samcv: well, he disappeared in June, but his linkedin account says that he started working somewhere in July 2016 | 03:00 | |
samcv | ok so he's at least alive as of July | 03:02 | |
AlexDaniel | maybe | 03:03 | |
or perhaps he set it beforehand :) | 03:04 | ||
samcv: what about forking it? | |||
03:04
ZzZombo joined,
ZzZombo left,
ZzZombo joined
|
|||
samcv | I could do that. well i already have a fork on my github | 03:04 | |
that would be fine I guess... | |||
AlexDaniel | samcv: if there's no response from him, consider doing so | 03:05 | |
samcv | okay | ||
seatek | i agree 100% | ||
AlexDaniel | samcv: by the way… why not support all quotes? | ||
samcv | which ones missing? | ||
i know some are. like, right double quote and then left double quote | |||
AlexDaniel | samcv: github.com/hinrik/perl6-mode/issues/12 | 03:06 | |
samcv: and what's going to happen if someone writes “foo “bar” baz” ? | |||
samcv | uh AlexDaniel you need to escape them | ||
and escaping them works fine | |||
03:06
xtreak joined
|
|||
samcv | i checeked that | 03:06 | |
AlexDaniel | m: say “foo “bar” baz” | 03:07 | |
camelia | rakudo-moar 843a6b: OUTPUT«foo “bar” baz» | ||
samcv | unless it lets you do that? | ||
uhm | |||
don't do that? :P | |||
haha | |||
AlexDaniel | no | ||
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 #`{ } | ||
samcv | that works | ||
03:08
perlpilot left
|
|||
samcv | so does #`() | 03:08 | |
AlexDaniel | samcv: you mean #`{ foo { bar } baz } works? | ||
what about #`xE2x8CxA9 xE2x8CxAA ? :) | 03:09 | ||
to be honest I don't know how to do it properly | 03:10 | ||
samcv | wait. why did you do multiple { } though.. | ||
m: #`{ {say "hi" } } | |||
camelia | ( no output ) | ||
samcv | hm | ||
AlexDaniel | because it should be balanced just like “ “ ” ” | ||
samcv | well that didn't work before either :P how does it decide? | ||
ahhh | |||
AlexDaniel | also, it accepts any brackety thing in any amounts | 03:11 | |
samcv | now it all makes sense :) | ||
AlexDaniel | m: #`xE2x8CxA9xE2x8CxA9xE2x8CxA9xE2x8CxA9xE2x8CxA9xE2x8CxA9xE2x8CxA9xE2x8CxA9 say "hi" xE2x8CxAAxE2x8CxAAxE2x8CxAAxE2x8CxAAxE2x8CxAAxE2x8CxAAxE2x8CxAAxE2x8CxAA | ||
camelia | ( no output ) | ||
samcv | yeah i know that. was just trying to get all the commonish ones and get it working nicely | ||
so i've just been doing #`(( or #`{{ which won't have that issue | |||
AlexDaniel | that's a good step, yes | ||
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 | ||
samcv: you probably want to add 「」 though | 03:13 | ||
samcv | hmm? | ||
AlexDaniel | m: say 「hello world」 | ||
camelia | rakudo-moar 843a6b: OUTPUT«hello world» | ||
samcv | i have that though? | ||
oh wait maybe i don't hold on | |||
ah yeah need to add that one too | 03:14 | ||
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 | ||
not triple but can add that too | |||
AlexDaniel | I guess triple and single is what most people use | ||
so yeah, that will cover most of it, I guess | |||
03:19
bjz_ joined
03:20
bjz left
03:23
noganex_ joined
03:25
James0r joined
03:26
noganex left
|
|||
samcv | #`xE2x8CxA9say 'test' xE2x8CxAA | 03:29 | |
m: #`xE2x8CxA9say 'test' xE2x8CxAA | |||
camelia | ( no output ) | ||
03:33
itaipu joined
03:48
rurban joined
03:51
James0r left
|
|||
AlexDaniel | samcv: any unicode quote/bracket is supported | 03:55 | |
04:07
solarbunny left
|
|||
seatek | i may have to try out this atom editor | 04:10 | |
04:12
baest left
04:13
cpage_ left
|
|||
seatek | the emacs perl6 mode is really, really good. but sometimes it gets confused by < or > with " nearby | 04:17 | |
and it has troubles recognizing pod | 04:18 | ||
04:19
cpage_ joined
04:20
solarbunny joined
04:21
baest joined
04:23
aborazmeh left
04:39
cpage_ left
04:40
itaipu left
04:44
ugjka left
04:47
cpage_ joined
|
|||
samcv | nice he replied on github :) | 04:53 | |
emailing him did the trick :P | |||
👍 | |||
working on getting qq[] to do interpolation as well. hopefully i can make 'all of the things' work | 04:54 | ||
AlexDaniel | samcv++ | 04:55 | |
MadcapJake++ :) | |||
samcv | nice merged :) | 05:00 | |
05:03
Actualeyes left
05:05
perlpilot joined
05:07
khw left
|
|||
moritz | good morning | 05:08 | |
no advent post yet :( | |||
does anybody have a read-made post yet that we can swap in? | 05:09 | ||
AlexDaniel | wasn't it ready already? | ||
I thought it was scheduled | |||
moritz: irclog.perlgeek.de/perl6/2016-12-01#i_13662981 | 05:10 | ||
moritz | then I'll publish now | 05:12 | |
05:12
pierre_ left
05:13
pierre_ joined
|
|||
moritz | done | 05:13 | |
05:15
ZzZombo left
05:19
skids left
05:20
James0r joined
05:22
Madcap^Jake^ joined,
Actualeyes joined
05:23
Madcap^Jake^ is now known as MadcapJake,
pierre_ left
|
|||
MadcapJake | howdy all! | 05:24 | |
moritz | hey, ho, MadcapJake! | 05:26 | |
MadcapJake | I'm back! | 05:27 | |
I was dealing with some crazy life changes and unfortunately had to put my programming time on the backburner | |||
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 :( | ||
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:29 | ||
moritz | MadcapJake: \o/ | 05:30 | |
MadcapJake: and no need to apologize; life always comes first :-) | |||
samcv | nice all the qq constructs work now :) | ||
though maybe TECHNICALLY not *all* of them. but all the ones that worked for q[] before | |||
MadcapJake | samcv: thanks for finally pushing me back into the fringe :) I needed that! | ||
samcv | haha | ||
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:31 | |
05:32
pierre_ joined
|
|||
samcv | oh? | 05:33 | |
it works now though | |||
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. | ||
ah | |||
MadcapJake | I saw a |Qw at the end that seemed weird | ||
samcv | |Q(?:x|w|ww|v|s|a|h|f|c|b|p) | 05:35 | |
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 ] | |||
so basically all q[] highlight like Q[] should | 05:36 | ||
but that is how it was before I made any changes | |||
05:36
pierre_ left
|
|||
MadcapJake | Bummer I thought I did that right lol | 05:37 | |
samcv | heh | ||
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 ;) | ||
samcv | should be able to do mostly the same thing for q() things as the other. but will have to copy them again :) | ||
and i just spent a long time copying all of them for the qq :P | |||
so anotherday will do that | |||
MadcapJake | AlexDaniel: yes! It definitely has! I have been completely away from programming for about 8 months! :O | 05:39 | |
I'm still feeling quite rusty | |||
samcv | i was right he was hibernating | ||
MadcapJake | hahaha | ||
AlexDaniel | MadcapJake: for a minute I thought that you were dead | 05:40 | |
samcv | i did google your name + obituaries/death | ||
and nothing came up. so that was reassuring | |||
MadcapJake | Nope still alive! I just finally moved out of my poisonous relationship and had to get a lame non-programming job :( | ||
AlexDaniel | fuck poisonous relationships | 05:41 | |
MadcapJake | amen to that! | ||
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! | ||
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:44 | |
there's a huge demand for developers everywhere, basically | 05:45 | ||
MadcapJake | haha now that is amazing! | ||
moritz | at every conference/meetup/workshop I go, people are hiring developers | ||
samcv | hmm would be nice to get a programming job but never actually been employed as a programmer | 05:46 | |
my last job was Jr. Linux Admin | |||
MadcapJake | wow, I guess I need to get out to some of those! | ||
I have been thinking about presenting or teaching some Perl 6 locally, it would help me brush up and I love teaching. | 05:47 | ||
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 | ||
not working atm | |||
moritz | samcv: there area lots of jobs inbetween, with boths ops and programing/automation components | ||
the whole devops stuff | |||
samcv | yeah | ||
moritz | anybody want to move to Germany? :-) | ||
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. | ||
moritz | MadcapJake: where's "here"? | 05:51 | |
MadcapJake | Eau Claire, Wisconsin, United States | ||
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:52 | ||
05:53
ZzZombo joined
|
|||
samcv | I'm half way between San Francisco and San Jose | 05:55 | |
MadcapJake, 12 years? | |||
MadcapJake | :) When my son turns 18 (his mom and I share custody) | 05:56 | |
MadcapJake is installing Fedora 25 on his new laptop! | 05:57 | ||
Are there Perl 6 packages for Fedora? | |||
AlexDaniel | huggable: deb | ||
huggable | AlexDaniel, CentOS and Debian Rakudo packages: github.com/nxadm/rakudo-pkg/releases | ||
MadcapJake | Fedora doesn't use debs I though? | 05:58 | |
thought* | |||
huggable: rpm | |||
huggable | MadcapJake, nothing found | ||
AlexDaniel | MadcapJake: go to the link :) | ||
I'm not sure if these rpms will work for fedora though | |||
MadcapJake | oh CentOS uses rpm? | 05:59 | |
06:00
xinming_ joined,
Cabanossi left
|
|||
MadcapJake | I know nothing about rpm or Fedora :) but I wanted to try a first-class Gnome experience on this laptop | 06:00 | |
(So I guess I know one thing about fedora then :P ) | |||
06:01
Cabanossi joined
06:03
xinming left
|
|||
MadcapJake | yikes this is super out-of-date: fedoraproject.org/wiki/Features/Rakudo_Star | 06:05 | |
samcv | nice i got “test “test”” nested quotes working :D | 06:08 | |
i want to fix all the things | |||
MadcapJake | wow! How'd you go about that? | ||
samcv | MadcapJake, github.com/samcv/language-perl6fe/...d9afb22528 | 06:10 | |
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:11 | ||
couldn't get ”this“ working with right quote + left quote | 06:12 | ||
was having issues | |||
MadcapJake | samcv: I don't follow why you want that behavior, doesn't that not work in Perl 6? | ||
samcv | it does work | 06:13 | |
m: say ”this“ | |||
MadcapJake | p6: say "test "test""; | ||
camelia | rakudo-moar 843a6b: OUTPUT«this» | ||
rakudo-moar 843a6b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Two terms in a rowat <tmp>:1------> 3say "test "7⏏5test""; expecting any of: infix infix stopper postfix statement end statement modifier…» | |||
samcv | m: say “testing “testing” this” | ||
camelia | rakudo-moar 843a6b: OUTPUT«testing “testing” this» | ||
MadcapJake | are those special chars? I can't really tell I guess | ||
samcv | AlexDaniel reminded me that this does work in perl 6 :) | 06:14 | |
like fancy double quotes | |||
MadcapJake | oh they're the tiniest bit slanted :P | ||
samcv | there's left double quote and right double quote | ||
need bigger font maybe? | |||
well my font is size 10 and i can see the diff. i guess some fonts may not show the diff that much | |||
actually proba'bly smaller than 10 | |||
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 | ||
ah | |||
MadcapJake | which is why I'm getting my new laptop up-to-snuff | ||
06:15
BenGoldberg left
|
|||
samcv | but yeah you can nest quotes if you use quotes that are different left/right | 06:15 | |
even can do right double quote + left double quote, backwards :P | |||
MadcapJake | that seems bizarre and could prove difficult to capture all cases | 06:16 | |
re: language-perl6fe | |||
samcv | yes :P | ||
yeah that's why i only did left+right and right + right for now | 06:17 | ||
06:19
ZzZombo left
06:21
ZzZombo joined,
ZzZombo left,
ZzZombo joined
|
|||
MadcapJake | good idea | 06:21 | |
well I'm gonna fiddle with this laptop some more and then hit the hay. Glad to be back! See you this weekend! | 06:23 | ||
06:24
darutoko joined
06:25
domidumont joined
06:29
pyrimidine left,
pyrimidine joined
06:33
ZzZombo left,
pierre_ joined
06:35
ZzZombo joined,
vendethiel left,
vendethiel joined
06:36
Wiertek joined
06:38
pierre_ left
|
|||
samcv | AlexDaniel, 「」 works now to, also allows nesting as well | 06:41 | |
AlexDaniel | nice | ||
samcv | in my branch | ||
06:43
pierre_ joined
06:47
domidumont left
06:51
RabidGravy joined
06:56
domidumont joined
06:57
nadim joined
06:58
Wiertek left
06:59
James0r left
07:00
domidumont left
07:01
domidumont joined
07:03
ZzZombo left
07:08
AlexDaniel left
07:09
pyrimidine left
07:17
ribasushi left
07:19
ssm joined
07:42
ribasushi joined
07:45
ZzZombo joined
07:46
ZzZombo left
07:47
ZzZombo joined,
wamba joined,
ZzZombo left,
ZzZombo joined
|
|||
ZzZombo | Should I feel bad for cracking mIRC with a fucking Cheat Engine? | 07:49 | |
samcv | nice. my 2nd PR now fixes 5 bugs :) github.com/MadcapJake/language-perl6fe/pull/43 | 07:50 | |
gotta start winding down for the day now | |||
07:54
pierre_ left
07:58
pierre_ joined
08:05
abraxxa joined
08:11
domidumont left,
vendethiel left
08:12
ufobat joined
08:13
vendethiel joined,
domidumont joined
08:15
labster joined
|
|||
gfldex | i just linked to the advent blog in the noob help section of a forum for some online game | 08:26 | |
\o/ propaganda! | 08:27 | ||
08:33
vendethiel left
08:42
firstdayonthejob joined
|
|||
samcv | heh | 08:51 | |
08:52
g4 joined
08:54
wamba left
08:55
Tonik joined
09:04
pyrimidine joined
|
|||
abraxxa | is there an equivalent for File::HomeDir already available in perl6? | 09:04 | |
github.com/azawawi/perl6-file-homedir ;) | 09:05 | ||
so no core support? | |||
09:06
chris2 left,
brrt joined
|
|||
gfldex | abraxxa: yes | 09:06 | |
abraxxa | ok | 09:07 | |
its code is quite....slim: github.com/azawawi/perl6-file-home...r/Unix.pm6 | 09:09 | ||
gfldex | PR welcome I guess | 09:10 | |
09:10
Guest42590 joined
|
|||
psch | i suppose most of those just aren't standardized on *nix, are they? | 09:11 | |
09:13
lizmat joined
|
|||
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
pierre_ left,
andrzejku joined
|
|||
nine | There are odd local changes in camelia's rakudo checkouts | 09:15 | |
09:15
zakharyas left,
Guest42590 left
|
|||
abraxxa | what is the preferred way of concatenating path? IO::Path? | 09:15 | |
File::HomeDir returns Str | |||
nine | Because the file system is full... | ||
abraxxa: certainly IO::Path. It's also most convenient. | |||
09:17
camelia left
|
|||
abraxxa | wow, coredump! | 09:17 | |
my $hamster-db = IO::Path.new(File::HomeDir.my-data); say $hamster-db; | |||
2016.11 | |||
on this my $hamster-db = IO::Path.new(File::HomeDir.my-data); | 09:18 | ||
is this because of github.com/azawawi/perl6-file-home...ix.pm6#L33 | 09:19 | ||
gfldex | that should fire an exception | 09:20 | |
abraxxa | segfaults instead on 2016.11 | 09:21 | |
can someone please confirm this on his system? | |||
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…» | ||
psch, Full output: gist.github.com/68a6b4bea4786f4c08...adf1a914c8 | |||
gfldex | abraxxa: if you provide a gist with code that would be easy | ||
09:22
pierre_ joined
|
|||
psch | well, apparently it's a bit more complicated than the degenerate case :) | 09:22 | |
abraxxa | perl6 -e 'use v6; use File::HomeDir; say File::HomeDir.my-data;' | 09:23 | |
this is on Ubuntu 16.10 x64 | |||
psch | oh, you're not using .new first | ||
09:23
camelia joined
|
|||
psch | ah, but it's not needed because the method does that | 09:23 | |
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: github.com/azawawi/perl6-file-homedir | ||
psch | eval: role R { method m { !!! } }; class C { my $singleton; method new { $singleton = self.bless does R }; method n { C.new.m }; C.n | ||
evalable6 | psch, rakudo-moar abc6439: OUTPUT«(exit code 1) ===SORRY!=== Error while compiling /tmp/1B2mScbQaeMissing blockat /tmp/1B2mScb…» | ||
psch, Full output: gist.github.com/fcbb82ae4dc5967ef2...2bb2274b4c | |||
psch | eh | ||
eval: role R { method m { !!! } }; class C { my $singleton; method new { $singleton = self.bless does R }; method n { C.new.m } }; C.n | |||
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:25 | |
psch, Full output: gist.github.com/b548149a04d4e2b8ef...39c8e496cf | |||
09:25
ChanServ sets mode: +v camelia
|
|||
psch | yeah, still as-expected... | 09:25 | |
star-m: role R { method m { !!! } }; class C { my $singleton; method new { $singleton = self.bless does R }; method n { C.new.m } }; C.n | |||
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…» | ||
psch | so it probably comes down to something about splitting stuff across files or maybe architecture? | ||
09:27
pierre_ left
|
|||
gfldex | abraxxa: segfault on my site with 2016.11-102-gabc6439 | 09:27 | |
nine: please note ^^^ | |||
09:28
_28_ria joined
09:32
cyphase left
09:33
ugjka joined
09:36
sjohnsen left,
cyphase joined
09:38
gensym left,
sjohnsen joined,
Cabanossi left
09:39
smash left,
Cabanossi joined,
rindolf joined
09:40
smash joined,
wamba joined,
gensym joined
09:41
pierre_ joined
09:47
brillenfux joined
09:53
ZzZombo_ joined
09:54
ZzZombo is now known as Guest68147,
ZzZombo_ is now known as ZzZombo,
ZzZombo left,
ZzZombo joined
|
|||
abraxxa | the Date formatter is a simple sub that get's the Date object passed and returns a Str? | 09:54 | |
09:55
mrdside joined,
Guest68147 left
09:56
labster left
|
|||
abraxxa | I' | 09:58 | |
I'm trying to have a Date als cli param, my signature is this: sub MAIN( Date :$dt-start = Date.today.truncated-to('month') ) { | |||
but ./hamster-projexport.pl6 --dt-start=2016-11-01 isn't accepted | 09:59 | ||
psch | m: say "2016-11-01" ~~ Date | ||
camelia | rakudo-moar abc643: OUTPUT«False» | ||
psch | m: say "2016-11-01" ~~ Date(Str) | ||
camelia | rakudo-moar abc643: OUTPUT«False» | ||
psch | m: say "2016-11-01" ~~ { Date.new($_) } | ||
camelia | rakudo-moar abc643: OUTPUT«2016-11-01» | ||
mrdside | m: say "2016-11-01" ~~ { Date.new($_) } | ||
camelia | rakudo-moar abc643: OUTPUT«2016-11-01» | ||
psch | m: say ("2016-11-01" ~~ { Date.new($_) }).WHAT | 10:00 | |
camelia | rakudo-moar abc643: OUTPUT«(Date)» | ||
psch | abraxxa: you only ever get {Int,Rat,Complex,Num,}Str as arguments to MAIN | ||
abraxxa | psch: then perl6 should die with an error if I specify something else | ||
psch | abraxxa: i don't know if it should, some coercions work just fine | 10:01 | |
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 | |
Is one approach | |||
mrdside | can i work with COM? | 10:03 | |
psch | mrdside: that probably depends on which COM you're talking about | 10:04 | |
i'd have guessed either .com or COM:, fwiw | 10:05 | ||
mrdside | win32 application interface | 10:06 | |
psch | so, like, kernel32.dll, user32.dll, those? | ||
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 | |
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" | |||
camelia | rakudo-moar abc643: OUTPUT«(Date)2016-12-01» | ||
abraxxa | arnsholt: thanks! | 10:08 | |
arnsholt | I haven't tested it with MAIN, mind, but can't see why it shouldn't work | ||
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)» | ||
arnsholt | Oh, nice trick that! | ||
psch | mrdside: considering the WinAPI is purely in C, you'll probably do fine with NativeCall, see docs.perl6.org/language/nativecall...nativecall | 10:10 | |
dalek | c: 87f46f6 | gfldex++ | doc/Language/control.pod6: show default arguments in pointy blocks |
10:12 | |
c: e32aab2 | gfldex++ | doc/Language/control.pod6: link to block |
|||
synopsebot6 | Link: doc.perl6.org/language/control | ||
c: 8b78b8f | gfldex++ | doc/Type/Block.pod6: show default arguments in pointy block |
|||
synopsebot6 | Link: doc.perl6.org/type/Block | ||
10:12
rurban left
|
|||
mrdside | psch: i need only create an instance of class interactive and call his methods | 10:15 | |
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:16 | |
10:17
samcv left
10:18
samcv joined
|
|||
gfldex | jnthn: lucky you! | 10:19 | |
m: role ToDate { method Date() { Date.new(self) } }; my @a = '2016-12-24', '2016-12-25'; @a = @a».&infix:<but>(ToDate); say @a».Date; | |||
camelia | rakudo-moar abc643: OUTPUT«[2016-12-24 2016-12-25]» | ||
gfldex | abraxxa: you don't need to use MONKEY if you don't like to, see ^^^ | 10:20 | |
10:20
travis-ci joined
|
|||
travis-ci | Doc build errored. Wenzel P. P. Peppmeyer 'show default arguments in pointy block' | 10:20 | |
travis-ci.org/perl6/doc/builds/180659312 github.com/perl6/doc/compare/7c866...78b8fa8360 | |||
10:20
travis-ci left
|
|||
abraxxa | gfldex: which line exactly? | 10:20 | |
gfldex: role ToDate? | |||
gfldex | yes | ||
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
TEttinger left
|
|||
gfldex | in that care you might need to MONKEY | 10:21 | |
arnsholt | You could probably use that approach to | 10:22 | |
With something like "BEGIN @*ARGS>>.&infix:<but>(ToDate)" | |||
*too | |||
Just apply the role to all the arguments | |||
gfldex | if would be careful with that without extra type checks | 10:23 | |
psch | well, everything in @*ARGS is guaranteed to be Stringy | ||
arnsholt | Yeah, @*ARGS will be Str or FooStr | ||
psch | (except for BEGIN hackery of course) | ||
gfldex | so you need to do a .map with .value ~~ Str ?? .&to-date !! .value | ||
arnsholt | Or would that work? | 10:24 | |
I'm not sure when @*ARGS is bound... | |||
Probably not BEGIN-time, come to think of it | |||
INIT maybe? | |||
psch | it's bound in main.nqp afair | ||
arnsholt | Yeah, it actually works with BEGIN | 10:25 | |
Just checked | |||
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; | ||
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» | ||
arnsholt | Although INIT is probably safer if you're putting it in something module-like | ||
psch | thing is, it doesn't help with the type constraint without touching @*ARGS | 10:26 | |
which means that 'program.pl --date=not-a-date' dies confusingly | |||
considering augment is lexical i'd probably prefer that as a solution | 10:27 | ||
alternatively there's always "rethink coercers and implement the rethought solution" :P | |||
10:29
simcop2387 left
10:34
simcop2387 joined
|
|||
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 | ||
so, to have a subtype of Date that can be coerced to from Str you'd need to change that | 10:52 | ||
or you teach Str how to coerce to Date | |||
10:52
Wiertek joined
|
|||
dalek | c: bc67dc3 | gfldex++ | doc/Type/Signature.pod6: add MONKEY example to Coercion Type |
10:53 | |
synopsebot6 | Link: doc.perl6.org/type/Signature | ||
gfldex | some soft of subset-rw would be nice in general | ||
timotimo | subset-rw? | 10:54 | |
gfldex | instead of doing a type/value check, modify the value in place | ||
jnthn | That's exactly what coercion types are meant to be for... | ||
timotimo | right | 10:55 | |
gfldex | MONEKYs are scary :( | ||
timotimo | no need for monkeys, i don't think | ||
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 | ||
timotimo | oh, because you would have to add the method to the thing | ||
jnthn | *Note | ||
psch | huh, that shouldn't be too hard to implement, actually | ||
jnthn | Indeed | ||
And would probably resolve a lot of the issues | 10:56 | ||
gfldex | i can't wait to doc that :-> | ||
psch | well, at least for r-m. not sure about r-j right now | ||
abraxxa | got to go, thanks! | 10:58 | |
10:58
abraxxa left
11:01
pierre_ left
11:02
lucasb_ joined
|
|||
lucasb_ | so, the theme used in the perl6advent blog is a standard wordpress thing? | 11:03 | |
gfldex | yes, and we can't really do much about it | 11:04 | |
lucasb_ | wondering if there isn't a more "readable" theme available :) | ||
gfldex: ah, ok | |||
babydrop | lucasb_: what's wrong with the current readability? | ||
gfldex | it's very scrolly | 11:05 | |
lucasb_ | babydrop: I don't know, maybe it's just my eyes | ||
maybe too narrow | |||
11:05
chris2_ joined
|
|||
gfldex | it is very narrow and the text is quite large, what results in scrollyness | 11:05 | |
the font even | 11:06 | ||
babydrop | You people are too spoiled. | 11:07 | |
dalek | osystem: af96224 | seatek++ | META.list: github.com/adaptiveoptics/HTML-Tag |
||
11:07
chris2_ is now known as chris2
|
|||
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: i.imgur.com/o75tYnE.png | ||
11:09
xtreak left
|
|||
gfldex | my screen is 4.5 times as big as the designers it seams | 11:09 | |
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:..." ? | ||
s/to grep/to head(1)/ | |||
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" | ||
babydrop | lucasb_: not on Windows | ||
timotimo | ufobat: may need a "panda update"? | 11:12 | |
11:12
itaipu joined
|
|||
ufobat | is a fresh rakudobrew build panda not sufficient? | 11:12 | |
11:13
travis-ci joined
|
|||
ufobat | but nope, panda update doesnt help | 11:13 | |
travis-ci | Doc build passed. Wenzel P. P. Peppmeyer 'add MONKEY example to Coercion Type' | ||
travis-ci.org/perl6/doc/builds/180668356 github.com/perl6/doc/compare/8b78b...67dc3404ef | |||
11:13
travis-ci left
|
|||
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:14
_28_ria left
|
|||
babydrop | huggable: advent | 11:15 | |
huggable | babydrop, github.com/perl6/mu/blob/master/mi...6/schedule | ||
babydrop | Still 9 spots available! Sign up to blog a post! | 11:16 | |
ufobat: just use zef instead of panda | 11:19 | ||
rakudobrew build zef | |||
11:23
tinitus joined
|
|||
ufobat | :D okay | 11:24 | |
11:26
tinitus_ joined
|
|||
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
tinitus left
|
|||
tadzik | yay, london | 11:28 | |
timotimo | yay | 11:29 | |
11:29
_28_ria joined
11:30
lizmat left
11:32
lizmat joined
|
|||
babydrop | mrdside: it's more of a 1st version of Perl 6 :) | 11:36 | |
mrdside: with Perl 5 continuing its versioning... I think version 26 is in the making | 11:37 | ||
ilmari | yes, the current version is 24, 26 is coming out next spring | 11:38 | |
11:38
M_o_C joined
|
|||
babydrop | And I guess ours is not really 1st version, but 105th version, with version 106 coming out later this month | 11:39 | |
psch | isn't it more like the 105th version of the implementation of the 1st version of Perl 6..? | 11:40 | |
*one implementation | |||
babydrop | Yeah, that'd be more correct. | ||
I wonder if we should release on 25th this month :P You know, to keep the joke going. | 11:41 | ||
psch | 6.d isn't ready yet is it? | 11:45 | |
'cause that'd be for christmas | |||
timotimo | nah, we still want to have non-blocking async for that | ||
11:45
setty1_ joined
|
|||
jnthn | non-blocking async? | 11:47 | |
11:47
itaipu left
|
|||
babydrop | psch: no, it'd be for Diwali | 11:47 | |
jnthn | Oh, non-blocking await :) | ||
timotimo | er, yes %) | ||
11:47
setty1 left
|
|||
arnsholt | Next Diwali is 18th or 19th October 2017, according to Wikipedia =) | 11:48 | |
ufobat | :-( nopaste.me/view/82a7091b babydrop zef isnt working either | ||
babydrop | :/ | 11:49 | |
worked for me.... | |||
arnsholt: perfect! | |||
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. | ||
ufobat: don't install Task::Star! | 11:51 | ||
ufobat: and report that issue on modules.perl6.org/dist/zef | |||
'cause it works fine on whatever version I got | |||
This is Rakudo version 2016.11-58-g2efeda0 | 11:52 | ||
I installed it when ^ that was the latest Rakudo's commit | |||
zef install Test::Mock that is is what works | 11:53 | ||
ufobat | No such method 'contains-spec' for invocant of type 'Candidate' <- is this because of Test::Mock? | 11:55 | |
babydrop | "===> Install [OK] for Task::Star" | 11:57 | |
ufobat: don't think so | |||
I don't know why panda thinks it ain't got a `provides` either, 'cause it does. | 11:58 | ||
Since Apr 1, 2015 | |||
Oh wait, I confused the opened issue on that module and your issue :D | 11:59 | ||
But still, it is in the ecosystem JSON file so I don't know why it thinks it ain't there. | |||
ufobat | zef install Test::Mock works.. | 12:01 | |
12:05
tinitus_ left
|
|||
lucasb_ | I'm wondering how many times, you core dev people, build rakudo in a day? | 12:11 | |
I'm on 2016.11 and thinking about building the latest revision every so often | |||
12:17
maybekoo2 joined
|
|||
gfldex | lucasb_: while true; do ./pull-and-build; sleep 3600s; date -Iseconds; done | 12:18 | |
12:20
wamba left
|
|||
gfldex | gist.github.com/anonymous/32067eda...115bf55353 | 12:20 | |
lucasb_ | gfldex: so, build every one hour (if there was a change) ? | 12:21 | |
gfldex | yes | ||
lucasb_ | gfldex: interesting! thanks for sharing | ||
12:21
mrdside left
|
|||
babydrop | lucasb_, several times per bug fixed. | 12:22 | |
12:23
pyrimidine left,
canopus left
|
|||
babydrop | lucasb_, I recommend using compiler releases, instead of building every few commits | 12:23 | |
12:23
pyrimidine joined
|
|||
lucasb_ | babydrop: yes, I run the monthly releases... but then, I miss the action happening in the middle of the month | 12:24 | |
for example, bugs already fixed | |||
12:24
pmurias joined
|
|||
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 | |
12:25
pierre_ joined
|
|||
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 | ||
babydrop | heh | ||
lucasb_ | you are all terrible | ||
babydrop | :) | ||
gfldex hugs lucasb_ | |||
lucasb_ | lol, just kidding | ||
babydrop: I understand your point | 12:27 | ||
the "earlier adopter" needs to decide for himself what kind of intimacy he wants to have | |||
one way to look at the rakudo users is to separate them in 3: | |||
* the star users | |||
* the montly users | 12:28 | ||
* the repo users | |||
12:28
pyrimidine left
|
|||
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
|
|||
lucasb_ | psch: indeed, stmuk_++ | 12:28 | |
12:32
M_o_C left
12:36
M_o_C joined
12:49
vytas left
12:54
M_o_C left
12:55
vytas joined
13:02
rindolf left
13:07
user9 left
|
|||
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
|
|||
babydrop | Things would be easier if bdf would at least idle in the chat... | 13:10 | |
13:10
rindolf joined
|
|||
babydrop | PSA: in Advent UI <blah> is parsed as an HTML tag, you need to write angle brackets as <blah> | 13:11 | |
13:12
Coffeeframe joined
13:19
prammer joined
|
|||
Coffeeframe | Mornin' folks | 13:20 | |
13:21
prammer left
|
|||
babydrop | \o | 13:22 | |
Coffeeframe | How is babydrop | 13:24 | |
babydrop | All systems optimal. | 13:25 | |
Coffeeframe | Fair | ||
13:36
perlpilot left,
prammer joined
13:39
wamba joined
13:44
rindolf left,
perlpilot joined
13:46
toolforger joined
|
|||
lucasb_ | did you see the --ll-exception file path separator inconsistency RT ticket? | 13:47 | |
[Coke] | . | ||
yoleaux | 00:34Z <AlexDaniel> [Coke]: why not fix it, by the way? irclog.perlgeek.de/perl6/2016-12-02#i_13664916 | ||
lucasb_ | I just wanted to make the important observation that if the user had installed rakudo in directory "C:\o" | 13:49 | |
he would have ended up with a happy path: C:\o/share/perl6/runtime/CORE.setting.moarvm | |||
13:51
rindolf joined
|
|||
toolforger | lol | 13:51 | |
jnthn | So...we close it as "feature"? :P | ||
nine | +1 | 13:52 | |
13:53
seatek left
13:55
ZzZombo left
13:57
wamba left
|
|||
[Coke] | AlexDaniel, TimToady; Added a one liner at the end, leaving that as an exercise to the reader. | 14:01 | |
14:01
ZzZombo joined,
ZzZombo left,
ZzZombo joined
14:02
Wiertek left,
pyrimidine joined
|
|||
[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. | ||
[Coke] | (day 3) ah draft is there, but it's not scheduled. | 14:05 | |
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
pierre_ left
|
|||
babydrop | Well, yeah, but one is done already :) | 14:07 | |
14:08
Coffeeframe left
14:10
pierre_ joined
|
|||
dalek | c: 1ec05fb | [email@hidden.address] | doc/Language/quoting.pod6: multiple heredoc beginning in the same line This is to document the fact that, as in POSIX shell, you can use multiple HEREDOC strings in the same line. |
14:12 | |
synopsebot6 | Link: doc.perl6.org/language/quoting | ||
14:15
pyrimidine left
14:16
pyrimidine joined
|
|||
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): claudio.ulyssis.be/var/tmp/p6smallscript.html | 14:16 | |
[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 | ||
timotimo | ah, you're that person | ||
[Coke] guesses he or zoffix should have claimed the chrs/ords ticket. | |||
babydrop | ? | 14:18 | |
[Coke] | oh, dalek is lame and doesn't show committer vs. author. | ||
babydrop: since I gave basically the same reply and rejected the ticket. | |||
timotimo | ah, that's what got you confused | ||
well, that's the good thing about git am. it keeps the committer | |||
14:19
cdg joined
|
|||
[Coke] | I was going to say, if you had commit bits, sending the patch was even MORE confusing. | 14:19 | |
babydrop | Oh heh | 14:20 | |
14:21
pyrimidine left
|
|||
babydrop | At least our responses agree :) | 14:21 | |
14:21
GHAAUWOL joined
|
|||
7GHAAUWOL | Doc build errored. [email@hidden.address] 'multiple heredoc beginning in the same line | 14:21 | |
travis-ci.org/perl6/doc/builds/180713230 github.com/perl6/doc/compare/bc67d...c05fbe14c2 | |||
timotimo | it was unable to find Pod::To::BigPage | 14:23 | |
did the ecosystem get b0rked by the addition of a b0rked url or something like that? | |||
babydrop | The ecosystem is fine. It's panda that broken. | 14:24 | |
Same issue as ufobat had this morning with Test::Mock, I presume. | 14:25 | ||
Works fine with zef | |||
timotimo | potentially | 14:27 | |
ufobat | well for me zef cant install Task::Star as well, but a different reason, maybe? | 14:28 | |
14:29
telex left
|
|||
ufobat | currently i am installing module by module, till i find whats the problem ;) | 14:30 | |
one seems to be Terminal.:ANSIColor | 14:31 | ||
nopaste.me/view/b175459a | |||
babydrop | Have you tried using --debug switch instead? | ||
timotimo | i'm running ecosystem-api's update.sh now | ||
what's taking it so long? o_O | |||
babydrop | ufobat: hm. That was removed from that module's meta 5 days ago :/ | 14:32 | |
the problem I mean | 14:33 | ||
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 ;) | ||
timotimo | i guess i'll find out once it finishes | 14:35 | |
ufobat | hehe :D | ||
babydrop | timotimo: doesn't it do ~770 HTTP requests to download meta files of each module? | ||
timotimo | yeah | ||
it's stopping at 0% cpu usage | 14:36 | ||
maybe it's trying to be nice to the githubusercontent server by not flooding it with requests? | |||
14:36
maybekoo2 left
|
|||
babydrop | Nope. | 14:36 | |
toolforger | I do not think that 770 requests are any strain on githubusercontent | ||
Unless that's done from a gazillion machines, anyway | |||
timotimo | um ... the update script is written in perl5 | 14:37 | |
babydrop | Yeah | ||
Why "um"? :) | |||
timotimo | i can't make that faster by improving rakudo | 14:38 | |
it has a suspicious $ua->timeout(10) | |||
babydrop | Why suspicious? | ||
timotimo | well, could it be timing out? | 14:39 | |
i do see some 500 messages | |||
babydrop | Not at the same time, and any timeouts would end up being printed at the end | ||
timotimo | OK. | ||
14:39
rurban joined
|
|||
babydrop | Here: github.com/perl6/ecosystem/blob/ma...pl#L58-L60 | 14:39 | |
14:39
itaipu joined
14:40
yeahnoob joined
|
|||
timotimo | OK | 14:40 | |
what's the url to get at that .json file via our http server? | |||
babydrop | There's one of seatek's modules crapping out: ecosystem-api.p6c.org/errors.json | ||
timotimo | nyup | 14:41 | |
an extra , before } | |||
in the provides ssection | |||
i'll pullrequest it | |||
babydrop | toolate :) | 14:42 | |
timotimo | dangit | ||
i think instead of re-making the log file for each update we should just concat and logrotate | 14:43 | ||
14:43
pierre_ left
|
|||
dalek | osystem: fc22aae | (Zoffix Znet)++ | README.md: List errors.json location too |
14:44 | |
timotimo | cool | ||
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 | ||
timotimo | OK | ||
14:47
_28_ria left
|
|||
babydrop | I mean even that error is bogus. That module *is* in ecosystem | 14:47 | |
You can see it in ecosystem-api.p6c.org/projects.json | 14:48 | ||
14:48
brillenfux left
|
|||
timotimo | indeed | 14:48 | |
babydrop | star: use LWP::Simple; use JSON::Fast; say (from-json LWP::Simple.get: 'ecosystem-api.p6c.org/projects.json').elems | 14:49 | |
camelia | star-m 2016.10: OUTPUT«734» | ||
14:49
pyrimidine joined
|
|||
babydrop | star: use LWP::Simple; use JSON::Fast; say (from-json LWP::Simple.get: '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 => opensource.org/licenses/Artistic-2.0, name => Pod::To::BigPage, provides => {Pod::To::BigPage => l…» | ||
babydrop shrugs | |||
No commits to panda since Oct 22 and it's using JSON fast that has no issues reading teh projects.json | 14:50 | ||
14:50
cdg_ joined
14:52
cdg left
|
|||
toolforger | I've been looking into the Java classloader stuff | 14:53 | |
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:54 | ||
The way NQP on Java is doing it was fine, so my worries turned out to be unfounded | 14:55 | ||
On that route, I learned more than I ever wanted to learn about classloading ;-) | |||
one of the thing I did not want to learn: You cannot assume that subclassing ClassLoader will work in every environment | 14:56 | ||
Applets forbid it | |||
I have no idea how relevant that would be | 14:57 | ||
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
|
|||
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 | ||
pmurias | are we concerned with supporting Applets? | 15:05 | |
15:05
brillenfux joined
|
|||
toolforger | In the Java world, they are mostly considered a security problem | 15:05 | |
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. | ||
toolforger | OTOH most of that is legacy, so no real playground for Perl6 | ||
OT3H, you never know how big an ecological niche will be unless you try it | |||
[Coke] | we can't support it as is. I wouldn't put in cycles to support applets. | 15:07 | |
let's get it working and fully featured in one setting first. :) | |||
toolforger | Yeah, probably not worth it | ||
App containers are really important | |||
15:07
bstamour joined
|
|||
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 | ||
bstamour | Has anyone successfully built HTTP::Server::Async on Windows 10? | ||
15:08
wamba joined
|
|||
timotimo | oh, wrong | 15:08 | |
it's just that that line that errors is the very last line in the file | |||
babydrop: could URLs that give something other than success be factored into the errors list, too? | 15:10 | ||
rather than silently being dropped? | |||
15:11
yeahnoob left
15:12
cibs left,
cibs joined
15:15
telex left
15:16
telex joined
15:18
cibs left
15:19
cibs joined,
geraud left
|
|||
dalek | osystem: 1042dcf | (Zoffix Znet)++ | server/updatelist.pl: Log failed HTTP requests in errors.json |
15:20 | |
babydrop | #Untested | ||
timotimo | TYVM | ||
15:21
prammer left
|
|||
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 | |
package list alone was updated zef has no way to know its cached copy is stale | |||
timotimo | damn | ||
that's a good explanation | |||
it looks like two ecosystem updates are running in parallel right now | 15:23 | ||
15:24
kurahaupo__ joined
15:25
cibs left
|
|||
ugexe | sounds like it might not be using flock? (flock -n ~/.cron/.lock -c '$command') | 15:25 | |
15:25
cibs joined,
geraud joined
|
|||
timotimo | i expect someone was naughty like i was and ran the script manually | 15:26 | |
15:27
prammer joined
|
|||
timotimo | well, it just started anew | 15:28 | |
so there's that | |||
15:31
xinming_ left,
skids joined
15:32
cibs left,
geraud left,
cibs joined
|
|||
timotimo | i wonder why the update log only updates in big batches, rather than line-by-line | 15:33 | |
15:33
khw joined,
geraud joined
|
|||
toolforger | usually that's because the output is blocked | 15:33 | |
timotimo | it goes directly into a file, why would it block? | ||
i'd rather assume it gets buffered a whole lot | |||
toolforger | I meant buffered | 15:34 | |
timotimo | oh | ||
how do you tell perl5 to flush on newline? | |||
toolforger | don't ask me, my Perl expertise is pretty limited | ||
timotimo | mine doesn't exist :) | 15:35 | |
babydrop poikes dalek | |||
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 | ||
Usually you want to flush every second or so | |||
for logs, anyway | |||
babydrop | timotimo: I commited a fix for that | ||
github.com/perl6/ecosystem/commit/...866aa3c0cc | |||
timotimo | cool! | ||
raw.githubusercontent.'"' expected, at character offset 537 (before "},\n "depends" : ...") at server/updatelist.pl line 29, <$_[...]> line 749. | 15:36 | ||
it still does that >:( | |||
maybe it's because of stdout vs stderr? | |||
that'd be pretty crappy :) | |||
babydrop | Does what? | ||
I'm not following | |||
timotimo | raw.githubusercontent.'"' expected, at character offset 537 (before "},\n "depends" : ...") at server/updatelist.pl line 29, <$_[...]> line 749. | ||
com/slobo/Perl6-X11-Xlib-Raw/master/META6.json 200 | |||
dalek | osystem: cabfdbe | (Zoffix Znet)++ | server/updatelist.pl: Turn off buffering |
||
timotimo | ^- this, in the log | ||
toolforger | stdout vs stderr is just a question of default settings if my Posix memory serves me well | 15:37 | |
15:37
pyrimidine left
|
|||
babydrop | timotimo: It's this line: github.com/perl6/ecosystem/blob/ma...ist.pl#L47 | 15:37 | |
timotimo: but what's wrong with it? | |||
timotimo | well, yeah. what i mean is that it outputs the urls to stdout, but the warns and stuff go to stdout | ||
babydrop: it splits the url in half | |||
15:37
AlexDaniel joined
|
|||
babydrop | oh | 15:37 | |
15:37
pyrimidine joined
|
|||
timotimo | New run at | 15:37 | |
Fri Dec 2 15:28:01 UTC 2016 | |||
thubusercontent.com/MadcapJake/rab...META6.json 200 | 15:38 | ||
15:38
telex left
|
|||
timotimo | ^- also fantastic | 15:38 | |
15:38
geraud left
|
|||
AlexDaniel | babydrop, [Coke]: I have actually confused .chars with .chrs /o\ | 15:38 | |
babydrop | :) | ||
AlexDaniel: the two responses is just 'cause we responded at the same time... We weren't ganging up :) | 15:39 | ||
15:39
cibs left
|
|||
geekosaur | something above the level of that script is redirecting stderr to stdout. this combines weirdly with block buffering on non-terminals | 15:39 | |
15:39
cibs joined
|
|||
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:39 | |
15:40
geraud joined
|
|||
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 | ||
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 | ||
so it's only the same thing on the posix level | |||
toolforger | stderr is typically line buffered | ||
15:40
brillenfux left
|
|||
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 | |
er, f 1 and fd 2 | |||
toolforger | so stdout stopped outputting at some multiple of block size, then stderr is interspersed | ||
geekosaur | the shell cannot tell it "use fd 1 as your error output"; it always uses fd 2 | ||
toolforger | what geekosaur says | ||
dalek | line-Perl6: 0b671df | niner++ | / (2 files): Allow for other threads to steal our GC work while we're running Perl 5 code The very latest moarvm exposes MVM_gc_mark_thread_blocked which we can use to tell the VM that it's safe for other threads to steal our GC work. |
||
geekosaur | stderr may well be line buffered by default, though | ||
15:42
pyrimidine left
|
|||
babydrop | timotimo: you can try changing this `warn` to `print` (though then all the stuff will go to STDOUT): github.com/perl6/ecosystem/blob/ma...ist.pl#L47 | 15:42 | |
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 | ||
dalek | line-Perl6: d9816ba | niner++ | Changes: Version 0.08 |
||
15:44
geraud left
15:45
cibs left,
cibs joined,
geraud joined
15:48
Technaton left
|
|||
moritz | so, two day Perl 6 training is over | 15:50 | |
now on my way back, waiting 4 hours at the airport | |||
nine | moritz: did you learn a lot? ;) | ||
moritz | nine: I hope the students did :-) | ||
nine: I did learn some things; for example that many Perl 5 programmers are far from fully using Perl 5's potential | 15:51 | ||
there were 3 perl 5 programmers and one very experienced DBA who occasionally also writes code | |||
none of them used unit tests, or any automated testing, for that matter | 15:52 | ||
Test.pm seemed to really surprised them | |||
never heard of Moose | |||
lucasb_ | "Perl 5 programmer who is far from fully using Perl 5's potential" <-- I found a description for myself | ||
moritz | no use of map, grep or other functional concepts | ||
15:53
cibs left,
geraud left
|
|||
moritz | they liked Perl 6, but I thought I would provided them more value with a p5 craftsmanship course | 15:53 | |
(oh, and CGI.pm for web programming) | |||
nine | that's kinda sad :/ | ||
moritz | aye | ||
on the other hand they were bright folks, and open to new ideas | |||
15:54
geraud joined
|
|||
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 | ||
moritz | :/ | 15:55 | |
oh, and they LOVED sub MAIN | |||
i asked them to do small exercises, and the second one included MAIN | |||
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 :) | ||
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. | ||
Holy cow I almost missed my boading | |||
jnthn | o.O | 15:57 | |
Please no disaster this time :P | |||
moritz | now I feel bad for distracting you. Almost. | ||
:-) | |||
jnthn | Have a good flight, nine! | ||
moritz | I didn't get into the MOP at all | ||
and had only 5ish slides on promises/channels, a short mention of supplies, and a single excercise | |||
which, on a Friday afternoon, already strained their capacity :-) | 15:58 | ||
16:00
user9 left
|
|||
nine | This was cloooose | 16:01 | |
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? | ||
nine | And why? Becausebthis time I was at the airport so early that I got very comfortable andvrelaxed | ||
moritz | nine: I'm very early too; I've set an alarm for when I think check-in will open :-) | 16:03 | |
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? | ||
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 | ||
lucs | timotimo: just play a chromatic scale (consecutive notes including black and white) up a few octaves. | ||
timotimo | yeah, i call that a spot | 16:06 | |
yeah i can do that, that sounds doable | |||
babydrop | If you have a mic, you can download a software tuner that'll tell you all you wanna know :) | ||
timotimo | probably | ||
piano tuner people probably cost a shit-ton of money, right? | |||
babydrop | v0v | ||
timotimo | can't i do it myself with an android app? :P | 16:07 | |
toolforger | nope | ||
timotimo | anyway, i'll head to the device and record something | ||
toolforger | not for piano | ||
16:07
telex joined
|
|||
[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 | ||
[Coke] | (trying to get my son, a music major to find such a person locally for me. :) | ||
lucs | timotimo: Well, piano tuning is a complicated skill, eh. And it's quite hard for an amateur to do. | ||
toolforger | Pay a piano tuner | ||
lucs | What toolforger said. | 16:08 | |
toolforger | it's expensive but you don't want somebody with no skill to mess it up | ||
because if he does, the professional tuner will need more time | |||
which will cost even more | |||
16:08
geraud left
|
|||
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 :-) | ||
lucs | toolforger: Me too :) | ||
timotimo | this piano hardly ever gets used, though | ||
like, every 10 years perhaps? | |||
toolforger | get an electric one then | ||
timotimo | nobody in this house plays it, and i'm not over for visits often enough to make it worth it | ||
(and also: not skilled enough at all) | |||
moritz | (leaving to the experts) same with me and building nuclear reactors :-) | ||
lucs | toolforger: I actually went to the trouble to try to a piano once: very instructive :) | 16:10 | |
16:10
acrussell joined
|
|||
TimToady | it's also good to have an electronic piano if you have neighbors that will be bothered | 16:10 | |
lucs | *try to tune | ||
timotimo | hehehe. | ||
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 | ||
never had an opportunity | |||
didn't go out of my way to get one, either, so there's that | |||
TimToady even owns a tuning hammer and rubber wedges | |||
but yeah, it's still a lot of work | |||
16:11
pyrimidine joined
16:12
bstamour left
|
|||
TimToady | so I usually pay a tuner, unless it's just one or two notes bothering me | 16:12 | |
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! | ||
TimToady | Some temperings are more equal than others... :) | 16:14 | |
lucs | :) | ||
ilmari | www.amazon.com/Equal-Temperament-R...0393334201 # my wife owns a copy of this | ||
16:15
user9 joined
|
|||
toolforger | Real pros have their piano re-tuned for each key, I guess | 16:15 | |
they also use Grand Pianos | |||
lucs | ilmari: I hope all serious musicians are aware of the shortcomings of equal temperament, and of its advantages. | 16:16 | |
TimToady | violinists cheat on equal temperament all the time, sometimes on purpose, but usually subconsciously :) | 16:17 | |
timotimo | i have an audio file | ||
TimToady | accidentally, I almost said | ||
toolforger | yes, serious musicians know everything about temperings | ||
it's party of the standard theory | 16:18 | ||
babydrop | .oO( wtf is a tempering... ) |
||
toolforger | or temperament, not sure what the right term is in English | ||
TimToady | either is correct | ||
lucs | babydrop: en.wikipedia.org/wiki/Equal_temperament | 16:19 | |
TimToady | English has multiple ways to noun verbs :) | ||
timotimo | hack.p6c.org/~timo/piano_tuning.ogg | ||
toolforger | babydrop: Issue is that there is one "correct" way to construct a scale such as C-major | ||
timotimo | oh no, what have i started ;) | 16:20 | |
TimToady | a temper tantrum? | ||
16:20
dwarring left
|
|||
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:20 | |
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? | ||
lucs | timotimo: Doesn't sound too catastrophic, and probably playable. | ||
timotimo | i don't think this one has been tuned since it was bought | ||
toolforger | Problem is that the frequencies don't quite align if you switch to F major | ||
The fifth tone will be off | 16:22 | ||
the others, too | |||
some harmonies will sounds pretty weird | |||
E major will be pure catastrophe | |||
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 :) | ||
Ulti | timotimo: FYI the env vars weren't mentioned in the current --help message but are on here github.com/rakudo/rakudo/wiki/dev-env-vars | ||
timotimo | Ulti: moar's --help, not rakudo's --help | 16:24 | |
Ulti | ohhhh | ||
who runs moar direct >:3 | |||
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: www.youtube.com/watch?v=TBt6APk21tU | ||
TimToady | I'm fine with pianos being equal tempered—it makes the rest of us musicians sound better. :) | 16:27 | |
Ulti | timotimo: mattoates.co.uk/files/perl6/*.log.gz | ||
16:27
thowe left
|
|||
timotimo | thank you | 16:29 | |
16:30
geraud joined,
cibs joined
|
|||
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 | |
well, okay, we were really playing in A♭ minor... | |||
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:32 | ||
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 | ||
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. | ||
TimToady | similar things with resolving an augmented triad | 16:36 | |
lucs | Same principle I guess. | ||
16:38
prammer left
16:40
brrt left
|
|||
babydrop | Do we have "Option types"? | 16:40 | |
timotimo | well, our types all have the "nothing" thing in their type object | ||
so basically yes | |||
16:40
cibs left
|
|||
timotimo | but most people associate "having option types" with "the compiler forces you to always provide code to handle both cases" | 16:41 | |
at least i do | |||
babydrop | Ah | ||
Just saw that mentioned here: www.reddit.com/r/perl/comments/5g2...rn_perl_6/ | |||
16:41
geraud1 joined
|
|||
babydrop | I kinda notice a surge of Perl 6 users. New faces here. More stuff in r/perl from blogs.perl.org, etc. | 16:42 | |
16:43
cibs joined
|
|||
babydrop | hehehe... Backers: 404 www.kickstarter.com/projects/14228...ing-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 | ||
TimToady wonders where the atonal bits of Perl 6 are... | |||
as opposed to the tin-ear bits... | |||
timotimo | "tin ears"? %) | 16:44 | |
16:44
geraud left,
domidumont left
|
|||
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 ;/ | ||
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
g4 left
|
|||
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 | |||
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 | ||
TimToady | optimization is 2nd, and multiple dispatch is the 1st | ||
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 >.> ) | ||
toolforger dislikes multiple dispatch anyway | 16:47 | ||
babydrop | :o | ||
heathen! | |||
toolforger | nope | ||
been there, tried that, found it to be nice but inherently incompatible with modularity | |||
TimToady | then perhaps it was done poorly :) | 16:48 | |
toolforger | "inherently incompatible" means "cannot be done well" | ||
TimToady | we find it aids modularity in general here | ||
toolforger | Well, okay: "modularity, extensibility, multiple dispatch - pick any two" | 16:49 | |
as long as you are working out a fixed set of types, MD can be helpful | |||
TimToady | perhaps you mean something different by the term | ||
we're not talking about MD at all | |||
toolforger | The OO idea of multiple dispatch | 16:50 | |
not sure how the Perl idea differs | |||
pyrimidine | babydrop: re: the kickstarter, wasn't bdfoy trying to reach 2000 backers? | ||
TimToady | we use it more heavily in function space than in method space | ||
pyrimidine has backed it | |||
TimToady | sorry, read MD as MI, never mind about the terminology quibble | ||
yes, by MD we generally don't mean MMD (multi-method dispatch) | 16:51 | ||
toolforger | Is the MD tied to subtyping? | ||
TimToady | MMD is much less useful than general MD | ||
toolforger | Perl's MD, I mean | 16:52 | |
16:52
thowe joined
|
|||
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" | ||
camelia | rakudo-moar abc643: OUTPUT«1 is an integer.1 is a string.» | ||
babydrop | pyrimidine: yes | ||
TimToady | no methods there | ||
toolforger | Is Perl's MD using subtyping to select a fallback if there is no explicit definition for the type combination? | ||
TimToady | it finds the narrowest unambiguous binding, yes | 16:54 | |
pyrimidine | babydrop: interesting that there are fewer backers who are willing to pledge more | ||
TimToady | so you basically end up with an extensible switch structure spread across modules | ||
toolforger | Then it is not extensible in a modular fashion | ||
TimToady | it is if you do it right | ||
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" | ||
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 | ||
camelia | rakudo-moar abc643: OUTPUT«56.689826» | ||
pyrimidine | babydrop: ah! missed that. I'm just running off the basic stats in my head | ||
TimToady | most existing MD systems associate the candidates in some global space, and that's the wrong way | ||
babydrop | m: say 37000÷2000 | ||
camelia | rakudo-moar abc643: OUTPUT«18.5» | ||
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 | ||
TimToady | everything in our functional MD is strictly lexically scoped to the location of a prototype candidate that exists somewhere in lexical space | ||
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 | ||
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 | ||
babydrop | timotimo: lol :D | ||
pyrimidine | babydrop: yes, still a pretty decent average donation | ||
toolforger | Assume you have f(a, b), with possible types A1 and A2 for A and B1 and B2 for b | ||
TimToady | which is why we call it a "setting", not a "prelude" | ||
toolforger | Does that kind of setup make sense in the context of Perl6's MD? | ||
timotimo | i bet TT hasn't heard that joke before, babydrop | 16:59 | |
TimToady | if you have an ambiguous dispatch, it will fail | ||
babydrop | timotimo: oh: Multi-Dispatch. You were asking for a topic to write about | ||
toolforger | Ah, then it's unmodular | ||
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 :) | ||
this is a feature, just as composing two roles with ambiguous methods requires disambiguation in the class | |||
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
|
|||
toolforger | Sure the error message is a feature | 17:01 | |
suman | Perl 6 is awesome. | ||
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 | |
17:02
firstdayonthejob left
|
|||
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 | ||
No really good solution to MD | |||
that's why I said I have a dislike for it ;-P | |||
17:02
pyrimidine left
|
|||
toolforger | Essentially, you pick the least evil | 17:02 | |
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 | ||
toolforger | Name clashes can be fought using proper namespace rules | ||
that's essentially a solved problem | |||
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. | ||
toolforger | Java is a good example for a simplistic but complete solution | ||
babydrop | toolforger: but same applies to MD subs | ||
toolforger | Nah | 17:04 | |
timotimo | suman: we're getting a "think like a computer scientist" book for perl6 | ||
babydrop | toolforger: don't export them to the same namespace and you don't get ambioguioty | ||
toolforger | Er | ||
babydrop | toolforger: in fact, you can also fight ambiguity with subsets | ||
timotimo | babydrop: he's talking about implementing new subclasses, not implementing new candidates | ||
toolforger | A3 and B3 objects follow data flow, which tends to cross namespaces | ||
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 | ||
Fuck it. Don't care. | 17:06 | ||
toolforger | Issue is how to deal with ambiguous cases | ||
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 | ||
and then someone calls (A3, B3), and it'll complain | |||
toolforger | what timotimo says | ||
timotimo | well, you already can't call (A2, B2) | ||
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. | ||
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 | ||
timotimo | huh? | ||
babydrop sees no problem | |||
timotimo | but if (A2, B2) already has a candidate, that will just be called for (A3, B3) | ||
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 | ||
toolforger | Then dev X would work on A3, and dev Y would work on B3 | ||
and then dev Z combines the original module, the A3 one, and the B3 one | |||
and the fallback policy from (A3, B3) is totally ambiguous | 17:09 | ||
it could be (A2, B2), or (A3, B2), or (A2, B3) | |||
babydrop | What are A1 A2 A3? | 17:10 | |
timotimo | just one lineage of classes | ||
A2 is A1; A3 is A2 | |||
ah, you were assuming they also implement those | |||
babydrop | But so is A2 and B2 | 17:11 | |
The ambiguity exists even before dev z done anything | |||
But my actual point is what alternative do you propose for having this feature?? | 17:12 | ||
I can extend what infix + does, thanks to MMD | |||
toolforger | babydrop: no alternative, it's a matter of picking the least evil | ||
babydrop | And I can even fight the ambiguity | ||
toolforger: so what's the leaster evil to MD? | |||
toolforger | depends on your judgement | ||
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» | ||
babydrop | m: multi infix:<+> (Int $x where {True}, Int $y where {True}) { say $x - $y }; say 2 + 2 | ||
camelia | rakudo-moar abc643: OUTPUT«0True» | ||
babydrop | boom | ||
toolforger | You can reasonably disagree about what's the least evil | ||
17:13
domidumont joined
|
|||
toolforger | For infix arithmetic, I'd use a "convert to the common base type, then do a single dispatch" strategy | 17:13 | |
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 | ||
or when people overload '+' to mean concatenation :P | |||
but that falls under "choosing stupid names" | |||
babydrop | heh | ||
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 | ||
Including Eiffel's type hole | |||
TimToady never assumes anything, except when he does | 17:15 | ||
but all computer languages eventually blame the programmer for something :) | |||
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 | ||
babydrop wonders where such corners in Perl 6 are. | |||
TimToady | sure, that's one of our 50 or 60 design principles | ||
thowe | there's always a snake in the garden. | 17:17 | |
toolforger | Well, in this case, it's not necessary to blame programmers | ||
MD simply does not have an elegant, one-size-fits-all solution | |||
Perl's is a reasonable compromise | |||
TimToady | nothing has an elegant, one-size-fits-all solution | ||
toolforger | Oh yes, some things do | ||
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 | ||
toolforger | Take a look at the alternatives | ||
17:18
suman left,
firstdayonthejob joined
|
|||
toolforger | E.g. the BALR = "branch and link register" instruction on the /360 architecture | 17:18 | |
17:19
labster joined
|
|||
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 | |
Yeah, you go back to the BALR approach for continuations, I'll give you that :-D | |||
"fits-all" is usually meant to mean "fits all the common use cases" | |||
for some definition of "common" | 17:21 | ||
TimToady | yes, and our MD seems to do that so far | ||
toolforger | which is pretty different for LISPers than for others :-D | ||
Your MD has been used mostly for system design, not for library design | |||
17:22
labster left
|
|||
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 | ||
toolforger | Just saying - people will work around that | ||
geekosaur | BAL/BALR worked fine until Algol ruined everything! :p | ||
toolforger | question is whether the workarounds are more or less elegant than they could have been with a different approach | 17:23 | |
That's pretty hard to tell | |||
TimToady | sure, which is why we want a malleable language into the future | ||
toolforger | Is a redesign for the MD mechanism a serious option? | 17:24 | |
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 | |
the "current language" defines that, and we regard the current language as strictly lexically scoped | |||
toolforger | Is the dispatch mechanism lexically bound to the called function? | ||
17:25
pyrimidine joined
|
|||
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:26 | |
and, in fact, the candidate list for any given MD is generated as of the lexical scope at the call site | 17:27 | ||
so it's entirely up to the current language how that works | |||
babydrop | :o | ||
TimToady | we really do take it seriously that you could say 'use COBOL; IDENTIFICATION DIVISION...' | 17:28 | |
and do it all with one-pass parsing, btw | 17:29 | ||
toolforger | I don't have that seriously ;-P | ||
s/have/take/ | 17:30 | ||
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 | ||
toolforger | but what do I know :-D | ||
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 | ||
timotimo | like, you can't just call a function that expects 10 arguments with no arguments and expect it to not throw an exception | ||
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:33 | |
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 | ||
s/apply/do not apply/ | |||
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 | ||
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 | ||
toolforger would really like to code in Haskell for real for a year or so | 17:37 | ||
TimToady | ah yes, wandering around in the monadic lifestyle :) | 17:38 | |
toolforger | Nah | ||
TimToady | Well, Haskell is easy to learn—I've done it six times already... | ||
toolforger | Haskell isn't about monads | ||
just as arithmetic isn't about associativity | |||
17:39
pyrimidine left
|
|||
toolforger | :-) | 17:39 | |
17:39
pyrimidine joined
|
|||
TimToady | the apostle Paul warns us not to quibble about words :) | 17:39 | |
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" | ||
which is true of both monads and associativity | |||
toolforger | Sure | ||
it's just that Haskell isn't a monadic lifestyle | |||
TimToady | if you say so :) | 17:42 | |
toolforger | I'd consider getting practice with Haskell a failure if all I learned was grokking monads | ||
there's also Arrows :P | 17:43 | ||
TimToady | my main quibble with Haskell is that it uses up words much too quickly :) | ||
toolforger | and actually a whole different way to structuring your code | ||
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
buggable left
|
|||
TimToady | yes, well, Haskell could be thought of as kind of a proof that abstractions have an opportunity cost :P | 17:44 | |
toolforger | Such as monads? | 17:45 | |
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 | ||
dalek | osystem: f2080ca | timo++ | server/updatelist.pl: pretty-print errors output as it's meant to be seen by humans, mostly |
17:51 | |
toolforger | Decoding type inferencer error messages is one of the thing that would be interesting to learn | ||
I'd want to compare how well this works in other languages with a nontrivial type system | 17:52 | ||
so I guess I'd have to add a year of Clean or something | |||
Scala, maybe - not sure whether its inferencer is worth anything | |||
17:53
girafe joined
17:54
baest left
|
|||
babydrop | samcv++ # Fixing Perl 6 syntax highlighter | 17:54 | |
17:54
nicq20 joined
|
|||
timotimo | oh? tell me more about that! | 17:54 | |
[Coke] | babydrop, samcv: on... github? | 17:55 | |
[Coke] says some very rude things to a telemarketer, and only regrets it a little. | |||
toolforger approves | 17:57 | ||
babydrop | Yes, it is the highlighter used by GitHub too | 17:58 | |
github.com/MadcapJake/language-perl6fe/pull/43 | |||
[Coke] | samcv++ excellent. | ||
17:58
baest joined
18:00
toolforger left
|
|||
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:00 | |
babydrop enjoys the Do Not Call list | 18:01 | ||
No rude things need ever be said :) | |||
TimToady | the Do Not Call list is completely broken in the US | ||
babydrop | too bad :( | ||
18:02
buggable joined,
lukaramu joined
|
|||
babydrop | Well, reddit once again, successfully raised my blood pressure. | 18:02 | |
18:03
pyrimidine left
|
|||
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 | ||
I didn't think about it this way… | |||
how often do they update it? | 18:04 | ||
samcv: thank you very much! | 18:05 | ||
18:05
labster joined
|
|||
AlexDaniel | I have never thought that one day whateverable sources will start rendering correctly on github… :) | 18:06 | |
[Coke] | m: require 6.c | 18:07 | |
camelia | rakudo-moar abc643: OUTPUT«===SORRY!===No such method 'c' for invocant of type 'Any'» | ||
[Coke] | babydrop: the rudeness was about their response to my politely asking them to put me on their do not call list. | ||
m: require v6.c | |||
camelia | rakudo-moar abc643: OUTPUT«===SORRY!===No such method 'c' for invocant of type 'Any'» | ||
AlexDaniel | LTA | 18:08 | |
18:08
nicq20 left
|
|||
[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 :) | ||
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... | ||
TimToady | may well be under explicit directions from his boss to ignore the law | 18:11 | |
18:11
pyrimidine joined
|
|||
TimToady | since it's pretty much never enforced | 18:11 | |
and sewage tends to flow downhill to fill out the business plan | 18:12 | ||
timotimo | m: use v6.c | 18:13 | |
camelia | ( no output ) | ||
timotimo | right. definitely LTA error | ||
AlexDaniel | .tell MadcapJake is it resolved now? github.com/github/linguist/issues/2909 | 18:14 | |
yoleaux | AlexDaniel: I'll pass your message to MadcapJake. | ||
dalek | c: 0d6d172 | coke++ | doc/ (5 files): Remove some seemingly wishy-washy statements. Closes #619 |
||
AlexDaniel | [Coke]++ | 18:15 | |
babydrop | m: 'use v6.c'.EVAL; | 18:17 | |
camelia | ( no output ) | ||
babydrop | m: say "wooo"; 'use v6.d'.EVAL; | ||
camelia | rakudo-moar abc643: OUTPUT«wooo5===SORRY!5=== Error while compiling /home/camelia/EVAL_0No compiler available for Perl v6.dat /home/camelia/EVAL_0:1------> 3use v6.d7⏏5<EOL>» | ||
moritz | btw github.com/moritz/perl6-training-de has the materials I used for the Perl 6 course | 18:18 | |
it's all German, you've been warned :-) | |||
babydrop | no sprehen ze deuch | ||
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:19 | |
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«FalseFalse» | ||
babydrop | m: sub require (Version $v) { so try "use $v; 1".EVAL }; say require v6.c; say require v6.d; | ||
camelia | rakudo-moar abc643: OUTPUT«FalseFalse» | ||
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«TrueFalse» | ||
babydrop | \o/ | ||
dalek | c: a5ca28f | coke++ | STYLEGUIDE.md: Add a note about documenting spec vs. un-spec'ed. Closes #835 |
18:22 | |
babydrop | huggable: speed | 18:24 | |
huggable | babydrop, nothing found | ||
18:26
FROGGS joined
|
|||
babydrop | What's the URL to Tux' speed charts? | 18:26 | |
tux.nl/Talks/CSV6/speed4.html | |||
huggable: speed :is: tux.nl/Talks/CSV6/speed4.html | 18:27 | ||
huggable | babydrop, Added speed as tux.nl/Talks/CSV6/speed4.html | ||
moritz | tux.nl/Talks/CSV6/speed5.html has also been found in the logs | ||
timotimo | maybe we should also put the little piece of code in that renders the speed results as a little unicode block graph thingie | ||
moritz | it's getting to a point where we should ask [Tux]++ to scale the y axis logarithmically | 18:28 | |
18:28
krokib left
|
|||
moritz | timotimo: irclog.perlgeek.de/perl6-dev/2016-1...i_13546696 | 18:28 | |
babydrop | huggable: speed chart :is: star: use LWP::Simple; my @recent = LWP::Simple.get('tux.nl/Talks/CSV6/speed.log').lines...rds[*-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('tux.nl/Talks/CSV6/speed.log').lines...rds[*-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}"; | ||
babydrop | star: use LWP::Simple; my @recent = LWP::Simple.get('tux.nl/Talks/CSV6/speed.log').lines...rds[*-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}"; | ||
camelia | star-m 2016.10: OUTPUT«▅▃▄▂▁▆▃▂▅▂▄▃█▃▄▄▆▄▅▃▄▃▄▄▃▄▃▃▃▃ 6.238 .. 7.175» | ||
[Coke] | AlexDaniel: since you closed all the NOTSPECCED tickets, can we remove that label? | 18:30 | |
AlexDaniel | NO | ||
timotimo | that one | ||
does it fit together with a :is: piece? | |||
cool. | |||
AlexDaniel | [Coke]: that was my point, basically | ||
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 | ||
[Coke] | that's what [doc] is for. | ||
AlexDaniel | I mean notspecced things | 18:32 | |
[Coke] | if they are not spec'd, they shouldn't be doc'd. | ||
AlexDaniel | that's why the issues are closed | ||
[Coke] | (at least when we're talking about things like types and methods and subs) | ||
so if we agree on that, why keep the label? | |||
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 | ||
of things* | |||
it's a label for closed tickets, as I see it | |||
… is it a bad idea? | 18:34 | ||
psch | aren't labels orthogonal to the closedness of a ticket? | ||
AlexDaniel | … rename it to "reopen when specced"? | ||
[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
18:36
travis-ci joined
|
|||
travis-ci | Doc build passed. Will "Coke" Coleda 'Remove some seemingly wishy-washy statements. | 18:36 | |
travis-ci.org/perl6/doc/builds/180783729 github.com/perl6/doc/compare/1ec05...6d1724fb66 | |||
18:36
travis-ci left
|
|||
[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
buggable left
|
|||
[Coke] | if yes, it should, feel free to document it immediately, but also open a roast ticket that it's missing tests. | 18:37 | |
18:37
buggable joined
|
|||
[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 | ||
babydrop | there's a ton of such stuff | 18:38 | |
(the exposed) | |||
buggable: speed | |||
buggable | babydrop, ▅▃▄▂▁▆▃▂▅▂▄▃█▃▄▄▆▄▅▃▄▃▄▄▃▄▃▃▃▃ range: 6.238 .. 7.175 | ||
babydrop | timotimo: ^ | ||
[Coke] | nine: could write up a paragraph on "what is precompilation" for the docs? | ||
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. | ||
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 | ||
timotimo | cool! | ||
how did you do that? :) | |||
[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 | ||
babydrop | Magic ;) | ||
samcv | i'm sure it really depends | ||
AlexDaniel | [Coke]: is this workflow documented somewhere? | ||
timotimo | i like magic | 18:40 | |
[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
|
|||
travis-ci | Doc build passed. Will "Coke" Coleda 'Add a note about documenting spec vs. un-spec'ed. | 18:41 | |
travis-ci.org/perl6/doc/builds/180785588 github.com/perl6/doc/compare/0d6d1...ca28f7da45 | |||
18:41
travis-ci left
|
|||
[Coke] | (#835) | 18:41 | |
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… | ||
psch | m: say Rakudo::Internals::.keys | ||
camelia | rakudo-moar abc643: OUTPUT«(ShapeLeafIterator CompilerServices BlobbyIterator DwimIterator ShapedArrayCommon WhateverIterator MappyIterator SupplySequencer JSON ShapeBranchIterator WeightedRoll SprintfHandler VMBackedDecoder MappyIterator-values)» | ||
psch | ^^^ those probably shouldn't be documented :) | ||
dalek | c: cea2e21 | coke++ | STYLEGUIDE.md: fix typo |
18:43 | |
psch | and, similarly, aren't in roast | ||
babydrop | there's a ton of ALLCAPS stuff that just needs to be moved to R::I | ||
psch | right, that too | 18:44 | |
babydrop | m: say UNBASE 'FF' | ||
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'» | ||
psch | m: say &SEQUENCE | ||
camelia | rakudo-moar abc643: OUTPUT«sub SEQUENCE (\left, Mu \right, :$exclude_end) { #`(Sub|75643256) ... }» | ||
[Coke] | Right. those would probably fall under the "hide, don't document" path. | ||
and maybe we document R::I only to say "compiler guts. do not even." | 18:45 | ||
18:45
chanel joined
|
|||
[Coke] | AlexDaniel: so how can we get us back on the same page? Which part needs a better explanation by me? | 18:45 | |
18:46
chanel is now known as Guest11508,
vike left
18:47
buggable left
|
|||
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
|
|||
babydrop | buggable: speed | 18:48 | |
buggable | babydrop, ▆▇██▇█▅▅▆▇▅▇▆▃▃▅▂▂▂▂▅▃▄▂▁▆▃▂▅▂▄▃█▃▄▄▆▄▅▃▄▃▄▄▃▄▃▃▃▃ data for 2016-10-28–2016-12-02; variance: 6.238s–7.181s | ||
18:48
labster left
|
|||
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. | ||
AlexDaniel | and reopen once it is in roast | ||
[Coke] | ok. once you close the ticket, how do you know whether to ever open it again? | ||
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 | ||
otherwise you still have to track when the roast issue is closed, but now you have no easy way to do it. | |||
AlexDaniel | well, github shows backlinks quite nicely | 18:50 | |
so anyone closing the roast issue should probably see that something needs to be reopened, I guess | |||
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 | |||
[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. | ||
babydrop | Yeah | ||
[Coke] | yah, let's back up: what's the point of closing the ticket? | ||
babydrop | And the roast issue can be closed via a commit, by someone who first saw the issue via email notification | ||
AlexDaniel | well, initially I was saying that we should doc obvious things even if not specced | ||
gfldex has a strong opposition to this, and in the end I agreed | 18:52 | ||
babydrop | Sure. makes sense. | ||
AlexDaniel | then a bunch of NOTSPECCED issues were created | ||
18:52
Guest11508 left
|
|||
AlexDaniel | so much that it floods the queue more than it would be acceptable, IMO | 18:52 | |
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
|
|||
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. | ||
babydrop | AlexDaniel: what do you mean by nothing you can do? | 18:54 | |
[Coke] | esp since now there is a plan. | ||
AlexDaniel | babydrop: well, what can we do with MONKEY-WRENCH not being specced? | ||
from the standpoint of the doc team | |||
babydrop | m: use MONKEY-WRENCH; | ||
camelia | ( no output ) | ||
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
wamba left
|
|||
AlexDaniel | m: use MONKEY-SHINE; | 18:55 | |
camelia | ( no output ) | ||
AlexDaniel | wtf? | ||
bisect: use MONKEY-SHINE; | |||
bisectable6 | AlexDaniel, On both starting points (old=2015.12 new=abc6439) the exit code is 0 and the output is identical as well | ||
AlexDaniel, Output on both points: | |||
AlexDaniel | I thought it printed a NYI warning | ||
bisect: use MONKEY-BARS; | |||
bisectable6 | AlexDaniel, Bisecting by exit code (old=2015.12 new=abc6439). Old exit code: 1 | ||
AlexDaniel, bisect log: gist.github.com/d9e7378cb3acb66be6...d2a0943957 | 18:56 | ||
AlexDaniel, (2016-06-06) github.com/rakudo/rakudo/commit/31...1bd89aed6c | |||
[Coke] | Ask the dev/spec team why it's reserved and presents that way. | ||
AlexDaniel | [Coke]: ok, so in other words, you want to reopen all these tickets? | ||
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
|
|||
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. | ||
babydrop | psch++ that's a good idea | ||
psch | which also already adds a point for the future feature | ||
[Coke] | babydrop: I would argue that it still needs a test in roast to show it's reserved. | ||
psch | s/$/ and test/ | ||
[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 | ||
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… | ||
babydrop | :( | ||
AlexDaniel | what? | ||
psch | having open tickets is kind of shitty, yes, but closing them without actually resolving the underlying issue doesn't really add anything there | ||
babydrop | AlexDaniel: just making a mental note to self to complain less :) | 18:59 | |
psch | it just muddles the open/closed distinction | ||
TimToady | .oO(We shouldn't resolve to be more resolute till New Year's Day...) |
||
babydrop | m: package MONKEY-WRENCH { sub foo is export { 42; } }; import MONKEY-WRENCH; foo | ||
camelia | ( no output ) | ||
babydrop | m: package MONKEY-WRENCH { sub foo is export { 42; } }; import MONKEY-WRENCH; say foo | ||
camelia | rakudo-moar abc643: OUTPUT«42» | ||
babydrop | v0v | ||
I guess I'm not `use`ing anything | 19:00 | ||
psch | right, that's different code paths | ||
TimToady | m: use MONKEY-WRENCH; | 19:01 | |
camelia | ( no output ) | ||
TimToady | m: use MONKEY-DOODOO; | ||
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:…» | ||
[Coke] | I mean, those particular ones are all TimToady++s fault, I think. :) | ||
babydrop | :D | ||
AlexDaniel | [Coke]: done. | 19:02 | |
19:02
vike joined,
xinming joined
|
|||
[Coke] | AlexDaniel: yes, my phone just vibrated for 40s straight. :) | 19:03 | |
AlexDaniel | ♥ Github mass actions | ||
19:04
MadcapJake left
19:06
firstdayonthejob left,
pyrimidine left
|
|||
AlexDaniel | .oO( lesson learned: when discussions take too long, go and do something stupid. Proper resolution of the issue will follow shortly ) |
19:06 | |
19:07
dwarring joined
|
|||
[Coke] | mmhehehe | 19:08 | |
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 :-) | ||
timotimo | hehehe | ||
19:12
darutoko left
|
|||
RabidGravy | BOOM! | 19:14 | |
AlexDaniel | ? | 19:15 | |
19:15
BuildTheRobots left
|
|||
TimToady | Q: Why is the boom called a boom? A: Just stand right there next time we tack into the wind. | 19:16 | |
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 | ||
*should've | |||
RabidGravy | oh there's so much more to break ;-) | 19:18 | |
dalek | c: 57355ef | coke++ | doc/Type/Promise.pod6: remove reference to sub start. Closes #874 |
19:19 | |
synopsebot6 | Link: doc.perl6.org/type/Promise | ||
19:19
bstamour` joined
|
|||
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:19 | |
RabidGravy | damn the 6.c compat, if there are downstream users send them patches ;-) | 19:20 | |
19:21
labster left
|
|||
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
cdg_ left
|
|||
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
bstamour left,
lucasb_ left
|
|||
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:23 | |
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:24 | |
however I have seen it used as a poor persons coercion thingy somewhere | 19:25 | ||
though that was a while ago | |||
timotimo | 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) | ||
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:26 | |
RabidGravy | I had to explain to someone how Scala's futures worked to someone yesterday | 19:27 | |
er | |||
geekosaur | (note the current docs have it --- but they're based on my musings about this, and do not reflect the actual implementation!) | ||
...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 | ||
and frankly I don't think it's documented as working, it just *does* work atm | |||
19:28
nadim left
19:29
nadim_ joined,
nadim_ left
|
|||
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? | ||
psch | it's in roast | ||
19:30
nadim_ joined
|
|||
psch | S13-overloading/operators.t for example defines a method CALL-ME | 19:30 | |
19:30
nadim_ left
|
|||
RabidGravy | m: class Foo is Int { method CALL-ME($foo) { return 98 } }; say Foo("bar"); | 19:30 | |
camelia | rakudo-moar abc643: OUTPUT«98» | ||
psch | and typecasting-long.t in the same directory too | ||
RabidGravy | that one is what we are talking about right? | ||
19:34
notbenh_ left,
mithaldu_ left,
SmokeMachine____ left,
olinkl left,
kipd left
|
|||
dalek | : 90d29c0 | (Nadim Khemir)++ | misc/perl6advent-2016/schedule: Take a slot in 2016 advent calender |
19:34 | |
: efc7c4b | moritz++ | misc/perl6advent-2016/schedule: Merge pull request #20 from nkh/master Take a slot in 2016 advent calender |
|||
19:34
nadim_ joined,
nadim_ left
|
|||
babydrop | \o/ | 19:35 | |
AlexDaniel | “More months have passed.” | ||
time flies | |||
timotimo | hah :D | ||
19:35
nadim_ joined,
nadim_ left
|
|||
timotimo | now all i have to do is find otu what day i'll manage to get my post written for | 19:35 | |
AlexDaniel | timotimo: 10 looks just about right :P | 19:36 | |
timotimo | what about the posts above it? | ||
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 | ||
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 | ||
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
19:39
nadim_ left
|
|||
RabidGravy | right, I didn't realise it was tested for | 19:39 | |
my instinct would be to can it though, maybe after a quick grep of the ecosystem | |||
[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 | ||
And move the fillers further down | |||
timotimo | does somebody want to try to add syntax highlighting to kyclark's post from today? | ||
babydrop | (or remove them if there's no more space for them) | 19:41 | |
19:42
nadim_ joined,
labster joined
|
|||
babydrop | RabidGravy: if it's in 6.c, we're not canning it. The change would be a proposal for 6.d. | 19:42 | |
19:42
nadim_ left,
labster left
|
|||
babydrop | Which we currently have this file to put them into: github.com/perl6/specs/blob/master/v6d.pod | 19:43 | |
huggable: v6.d :is: Proposed changes for Perl 6 v6.d: github.com/perl6/specs/blob/master/v6d.pod | 19:44 | ||
huggable | babydrop, Added v6.d as Proposed changes for Perl 6 v6.d: github.com/perl6/specs/blob/master/v6d.pod | ||
19:44
SmokeMachine____ joined,
nadim_ joined
19:45
nadim_ left,
Madcap^Jake^ joined
19:46
Madcap^Jake^ is now known as MadcapJake
|
|||
RabidGravy | but I don't have a proposal | 19:48 | |
19:48
nadim_ joined
|
|||
geekosaur | I'm the one who had the proposal... | 19:49 | |
19:49
mithaldu_ joined,
nadim_ left
19:50
nicq20 joined
|
|||
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 | |
19:52
nadim_ joined,
nadim_ left
19:53
MadcapJake left
|
|||
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:53 | |
psch | which means we need a new coercer proposal | 19:54 | |
19:54
BuildTheRobots joined
|
|||
psch | oh, and Junction has to does Callable too | 19:54 | |
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?...) | ||
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? | ||
m: class Foo { method AT-POS ($) { say "meow" } }; Foo.new[42] | |||
camelia | rakudo-moar abc643: OUTPUT«meow» | ||
babydrop | m: class Foo { method AT-KEY ($) { say "meow" } }; Foo.new{42} | 19:56 | |
camelia | rakudo-moar abc643: OUTPUT«meow» | ||
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 | ||
psch | geekosaur: a coercer isn't a method call | ||
m: say (Int("42")).WHAT | |||
camelia | rakudo-moar abc643: OUTPUT«(Int)» | ||
geekosaur | ok, or sub call | ||
psch | so all types are automatically Callable, because they could implement coercers | 19:57 | |
19:57
nadim_ joined,
ufobat left,
nadim_ left,
avalokite joined
19:58
avalokite left,
avalokite joined
|
|||
geekosaur | hm, so where are coercers documented? | 19:58 | |
psch | docs.perl6.org/syntax/Coercion%20Type | 19:59 | |
which is a bit slim | |||
19:59
avalokite left
|
|||
geekosaur | because "could implement" suggests to me that wants to be a Role (which in turn would `does Callable`) | 19:59 | |
20:00
kipd joined
|
|||
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 | ||
exactly because it does force us to rework coercers | |||
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 | ||
20:01
nadim_ joined
20:02
nadim_ left
|
|||
dalek | c: 97780f3 | Altai-man++ | doc/Language/classtut.pod6: Add a search anchor for "OOP" (closes #724) See github.com/perl6/doc/issues/724#is...-264547682 |
20:03 | |
synopsebot6 | Link: doc.perl6.org/language/classtut | ||
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 | ||
in BOOTSTRAP.nqp that | |||
s/resign/resigned/ | |||
[Coke] | (mailing list) no design discussions for Perl 6 happen on mailing lists at this opint. | ||
psch | but that still seems unsufficiently awesome, intuitively vOv | ||
20:04
nadim_ joined
|
|||
[Coke] | raise it in #perl6-dev until someone says boo. | 20:04 | |
20:04
nadim_ left
20:06
nadim_ joined,
nadim_ left
20:07
olinkl joined
|
|||
AlexDaniel | [Coke]: what is Hacktoberfest, by the way? | 20:07 | |
like, why would we have a label like this? What does it mean? | 20:08 | ||
samcv | AlexDaniel, these are all the things I fixed in the last PR to atom syntax highlight github.com/MadcapJake/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 | |||
timotimo | AlexDaniel: i think it was "these issues are good for outsiders who just want to get a pull request in" | ||
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 github.com/MadcapJake/language-perl6fe/pull/42 | ||
AlexDaniel | timotimo: how is that different from LHF? | ||
timotimo | it isn't, but it might give discoverability | 20:11 | |
AlexDaniel | :-/ | ||
timotimo | i.e. you could perhaps stumble upon us if you just search for "hacktoberfest" | ||
i'm not saying we want to keep it | |||
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 | ||
timotimo | re-name it LHF if possible? | ||
20:11
nadim_ joined
|
|||
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 | ||
AlexDaniel | or what do we want? | ||
babydrop | AlexDaniel: just leave them until next year? | 20:12 | |
AlexDaniel | O_o | ||
babydrop | What? | ||
samcv | what shirt do you get though? | ||
20:12
nadim_ left
|
|||
babydrop | I mean the issue will either be closer or be still good enough next Hacktober | 20:12 | |
Why remove it just to re-add it next year | |||
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: www.digitalocean.com/company/blog/...b728de.png | ||
This year the design is different | |||
20:13
nadim_ joined,
nadim_ left
|
|||
babydrop | Oh, it's 4 PRs and get a shirt | 20:13 | |
timotimo | you know, raw.githubusercontent.com probably supports an "If-Modified-Since" header | 20:14 | |
AlexDaniel | so why are they doing it? :) | ||
babydrop | AlexDaniel: to promote their company. | ||
timotimo | because they want to be known by people | ||
AlexDaniel | so why do we participate in promoting their company? | ||
babydrop | AlexDaniel: we get unpaid labour fixing stuff | ||
AlexDaniel | how much unpaid labour did we get this year? | 20:15 | |
20:15
notbenh_ joined
|
|||
babydrop | There were a few users | 20:15 | |
geekosaur | same question could be asked about GSoC... | ||
nicq20 | AlexDaniel: I made a could edits to the traps section of the docs because of it. | ||
babydrop | \o/ | ||
nicq20 | s/could/couple/ | ||
AlexDaniel | oh well | ||
babydrop | timotimo: it's actually a decent shirt. They sent me two last year. I still wear them to work sometimes :) | 20:16 | |
...and I'm glad this year's design is much more subtle... | |||
nicq20 | AlexDaniel: It's basically a nice incentive to give people an extra push to actually do something. | ||
Everyone loves a free shirt! :D | |||
AlexDaniel | so why can't we just slap Hacktoberfest on all LHF issues each year? | 20:17 | |
… yea? | 20:18 | ||
babydrop | I didn't equate LHF to Hacktoberfest when I labeled Issues this year. | ||
Some of them aren't LHF and require work, but can be done by a relative outsider still. | |||
AlexDaniel | :/ | ||
babydrop | Are we talking about just /doc repo or all of them? | 20:19 | |
AlexDaniel | you did that to other repos as well? :O | ||
babydrop | Of course | ||
AlexDaniel | hmm… | 20:20 | |
babydrop | huggable: hacktoberfest | ||
huggable | babydrop, nothing found | ||
babydrop tries to remember GitHub's search stuff to show all of hacktoberfest issues for perl6 org | |||
Ah github.com/issues?utf8=%E2%9C%93&a...ktoberfest | 20:21 | ||
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 | ||
samcv: yo | 20:23 | ||
nicq20 | samcv: Yerp. | ||
samcv | want to get somebody to test my large number of changes to the Atom FE perl 6 syntax highlighter | ||
nice | |||
ok | |||
if you can try out github.com/samcv/language-perl6fe/tree/testing | |||
AlexDaniel | babydrop: nah, I guess I'm the only one who is disgusted by this thing, we can leave it | ||
20:23
pecastro left
|
|||
samcv | github.com/MadcapJake/language-perl6fe/pull/42 and github.com/MadcapJake/language-perl6fe/pull/43 list the changes nicq20 babydrop | 20:23 | |
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 | ||
lol | |||
babydrop | All I do is click "update" on perl6fe . | ||
20:24
pecastro joined
|
|||
samcv | babydrop, | 20:25 | |
babydrop | sup | ||
samcv | cd ~/.atom/packages | ||
mv language-perl6fe language-perl6fe-bak | |||
git clone github.com/samcv/language-perl6fe.git | |||
cd language-perl6fe | 20:26 | ||
git checkout testing | |||
20:26
cognominal left
|
|||
babydrop | ok, what's next? | 20:26 | |
samcv | i think that should work | 20:27 | |
babydrop | Right, but what am I testing? | ||
samcv | uh any perl 6 syntax highlighting i guess | ||
babydrop | Heh, well, ok, the 「stuff」 is still not highlighted as a string. | 20:28 | |
20:28
cognominal joined
|
|||
samcv | you sure? it's working for me | 20:28 | |
you did checkout testing right? | |||
babydrop | And neither does using ✎ as a HEREDOC separator | ||
Yeah, I did | |||
samcv | hahaha | ||
nicq20 | samcv: ditto | 20:29 | |
samcv | hmm this works for me 「testing」 this | ||
can you send me a pic? | |||
AlexDaniel | samcv: by the way | ||
samcv: what happens if you write something like this: “hello {say “test”} world” ? | 20:30 | ||
samcv | that works fine AlexDaniel | ||
babydrop | samcv: hm... it's also showing me to perl6fe plugins in packages | ||
AlexDaniel | samcv: the whole thing is highlighted as a string? | ||
babydrop | samcv: i.imgur.com/GQohsnf.png | ||
samcv | AlexDaniel, well the stuff in brackets are highlighted as normal code should be | 20:31 | |
but the rest is highlighted fine as a string | |||
AlexDaniel | hmm | ||
babydrop | samcv: oh, ok. I moved the .bak package out of packages/ dir... and now the string gets highlighted | ||
But not the heredoc | |||
samcv | yeah the heredoc isn't working right now | ||
babydrop | ok :) | 20:32 | |
samcv | will note that down | ||
should be a way that can be done | |||
[Coke] | samcv: I use atom very occasionally. | ||
babydrop | samcv: hmm, were you fixing the ‘ quotes too? Fancy pants Unicode single quot4es? | 20:33 | |
samcv | yes | ||
did you see both tho PR i linked to? | |||
github.com/MadcapJake/language-perl6fe/pull/42 and github.com/MadcapJake/language-perl6fe/pull/43 | |||
babydrop | samcv: Perl 6 actually accepts them in reverse order too, or just 2 closing/2 opening quotes | ||
samcv | both those combined list all the changes | ||
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 | ||
babydrop | m: say ’hello {say “test”}world‘ | ||
camelia | rakudo-moar abc643: OUTPUT«hello {say “test”}world» | ||
babydrop | Well, I'm glad at least one way works :) | ||
'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 | ||
but yeah see the list i made there. and then like. try some things | |||
[Coke] is now using that version of samcv's plugin. seems fine? | |||
samcv | and maybe try putting things that are variables that SHOULDN't be highlighted in double quoted strings in | ||
"$<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.:) | ||
japhb | babydrop++ # Taking my CSV sparkline as a starting point and doing exactly what I'd been hoping someone would do. :-) | ||
[Coke] | ... or maybe just too much green | ||
samcv | if people know things that are variables that can't be used inside double quoted strings. i've tested methods | ||
i will add that to my list [Coke] | 20:37 | ||
20:37
rindolf left
|
|||
samcv | :) | 20:37 | |
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 | ||
then i can combine them *i think* into one thing | |||
instead of having duplicated rules | |||
babydrop | m: say q:w✎meow✎; | ||
camelia | rakudo-moar abc643: OUTPUT«meow» | ||
samcv | maybe | ||
babydrop | m: say q:w ✎meow✎; | ||
camelia | rakudo-moar abc643: OUTPUT«meow» | ||
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 reservedat <tmp>:1------> 3q:w7⏏5᚜meow᚛» | ||
samcv | heh | ||
babydrop | m: q:w᚛meow᚜ | ||
camelia | rakudo-moar abc643: OUTPUT«WARNINGS for <tmp>:Useless use of constant string "meow" in sink context (line 1)» | ||
babydrop | m: say q:w᚛meow᚜ | 20:40 | |
camelia | rakudo-moar abc643: OUTPUT«meow» | ||
babydrop | samcv: this one isn't fixed for me: github.com/MadcapJake/language-per.../issues/41 | 20:41 | |
20:41
cognominal left
|
|||
babydrop | In "$<time> $<units>" they're not highlighted... They show up jkust like normal text inside quotes | 20:41 | |
20:41
cognominal joined
|
|||
samcv | hm | 20:42 | |
20:42
pyrimidine joined
|
|||
samcv | i am seeing that now too | 20:42 | |
ahhh | |||
“$<test>” works tho :) ok will fix the normal quotes | |||
babydrop | samcv: off the top of my head, I can think of `.categorize-list` that is the same issue as github.com/MadcapJake/language-per.../issues/38 | 20:43 | |
samcv: oh, and "parse-base"; it's new | |||
Quick, everybody! Let's pile on samcv! | 20:44 | ||
:) | |||
samcv: well, that's all I got. Thanks for fixing so many issues :) | |||
samcv | you're welcome! | 20:45 | |
20:45
Madcap^Jake^ joined
|
|||
pmurias | geekosaur: GSoC vs hacktober, GSoC gives out cash rather then t-shirts | 20:45 | |
20:46
Madcap^Jake^ is now known as MadcapJake
|
|||
samcv | "$<this>" should work now, pushed that | 20:46 | |
will add those methods babydrop | |||
20:47
pyrimidine left
|
|||
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:47 | |
20:47
domidumont left
|
|||
babydrop disappears until Monday | 20:49 | ||
Gonna hack on the -Inf and sub signature literals and <...> bugs and write the Advent articles. | |||
\o/ hackety hack weekend weeee | |||
timotimo | have a good weekend, babydrop :) | ||
20:53
MadcapJake left
|
|||
samcv | gonna work on getting all possible types of heredocs to work now.. | 20:58 | |
if i can decode these regex | |||
timotimo | it would be amazing if the heredocs could even figure out if closures and/or variables will be interpolated | ||
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()/ | ||
camelia | rakudo-moar abc643: OUTPUT«what { say "yo" } $interpolation $none.of().this()» | ||
20:59
seatek joined,
TEttinger joined
21:00
rurban left
|
|||
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 | |
well they have 0 | |||
timotimo | the syntax highlighters for atom are just "stolen" from something else ... textmate perhaps? i don't remember | 21:02 | |
samcv | yeah textmate | ||
textmate manual has like | |||
manual.macromates.com/en/language_grammars | |||
timotimo | so hopefully there's good documentation for that? | ||
samcv | it's not that good | ||
timotimo | lol, 5 screenpages full | ||
that's sad | 21:03 | ||
samcv | yeah :( | ||
seriously | |||
i mean it explains some things okay. but others it doesn't like too much | 21:04 | ||
21:04
cdg joined
|
|||
samcv | it could be worse i guess? | 21:04 | |
timotimo | always can, yeah | ||
hahainternet | m: Array.new(:shape(2;2)); | 21:11 | |
camelia | ( no output ) | ||
hahainternet | m: say Array.new(:shape(2;2)); | ||
camelia | rakudo-moar abc643: OUTPUT«[[(Any) (Any)] [(Any) (Any)]]» | ||
hahainternet | oh weird, why's that different on mine | ||
yoleaux | AlexDaniel: harass mst | ||
hahainternet | ah because i was errantly assigning it to an array i think | 21:12 | |
AlexDaniel | mst: hey! How are you doing? | ||
mst: I don't want to sound annoying, but was there any progress regarding the “new ticket” button? | |||
samcv | wth, maybe it's a problem with Atom ? or its engine? | 21:17 | |
it's not working with fancy unicode heredocs, even when i match .+ for th edelimiter instead of \w+ | 21:18 | ||
:((( | |||
21:22
acrussell left
21:25
skids left
21:26
cognominal left
|
|||
dalek | c: a601491 | coke++ | / (2 files): Add note about why "Perl 6" closes #294 |
21:28 | |
[Coke] | TimToady: Please free free to editorialize on that one | ||
^^ | |||
21:29
cognominal joined
21:37
Guest42590 joined
21:38
edghto left,
nicq20 left
|
|||
[Coke] | AlexDaniel: your all white github icon is... frustrating. | 21:39 | |
21:40
FROGGS left,
Tonik left
|
|||
dalek | c: 5eae2aa | coke++ | doc/Language/glossary.pod6: add missing trailing quote |
21:40 | |
synopsebot6 | Link: doc.perl6.org/language/glossary | ||
21:41
cognominal left
21:45
Madcap^Jake^ joined
21:46
Madcap^Jake^ is now known as MadcapJake
21:50
itaipu left
21:54
MadcapJake left,
firstdayonthejob joined
22:01
bstamour` left,
cognominal joined
22:03
wamba joined
|
|||
AlexDaniel | [Coke]: it's not completely white! | 22:08 | |
samcv | oh actually was the problem with atom using a different directory. well! fancy heredocs are fixed now. | 22:09 | |
22:11
cognominal left
22:18
cognominal joined
22:23
sufrostico joined
22:30
alimon1 left
|
|||
hahainternet | what's the [] syntax called when used for example, like Array[Int].new ? | 22:32 | |
wandered through the docs and didn't find much | |||
AlexDaniel | hahainternet: docs.perl6.org/routine/[%20]#(Oper...cumfix_[_] | 22:38 | |
ahhh | 22:39 | ||
no | |||
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? | ||
AlexDaniel | hahainternet: it is not there, at least not searchable. Please file a doc issue | ||
hahainternet | ah because it's in TypedArray.pm | ||
and i may, i barely have time for this atm | |||
thanks for the attempt though AlexDaniel | 22:41 | ||
AlexDaniel | hahainternet: maybe this? docs.perl6.org/language/list#Typing | ||
hahainternet | yeah i found that but it didn't really explain what was going on | ||
github.com/rakudo/rakudo/blob/nom/...rray.pm#L3 seems to though | 22:42 | ||
AlexDaniel | it should be searchable though | ||
22:43
pyrimidine joined
|
|||
AlexDaniel | huggable: rakudobug | 22:45 | |
huggable | AlexDaniel, [email@hidden.address] or use perl6 query on rt.perl.org ; see github.com/rakudo/rakudo/#reporting-bugs | ||
22:46
Madcap^Jake^ joined,
Madcap^Jake^ is now known as MadcapJake
|
|||
hahainternet | AlexDaniel: first docs bug, that github link links to another link, which says nothing about docs bugs :) | 22:48 | |
22:48
pyrimidine left
|
|||
AlexDaniel | huggable: docs | 22:48 | |
huggable | AlexDaniel, nothing found | ||
AlexDaniel | huggable: doc bug | ||
huggable | AlexDaniel, nothing found | ||
AlexDaniel | hahainternet: well, that's why it is a “rakudobug” :) | ||
gfldex | AlexDaniel: TypedArray is a private role of Array | 22:50 | |
22:51
MadcapJake left
|
|||
AlexDaniel | ? | 22:51 | |
dalek | c: c0b12ff | gfldex++ | doc/Language/list.pod6: index ‚typed array‘ |
||
synopsebot6 | Link: doc.perl6.org/language/list | ||
gfldex | sorry that was for hahainternet | ||
so TypedArray.pm isn | 22:52 | ||
so TypedArray.pm isn't really there | |||
why did they put those keys so close together? | |||
AlexDaniel | gfldex: perhaps [ ] should also point there | ||
dalek | c: 7e80010 | gfldex++ | doc/Language/list.pod6: index [ ] for typed arrrays |
22:53 | |
synopsebot6 | Link: doc.perl6.org/language/list | ||
AlexDaniel | gfldex++ | 22:55 | |
22:56
cognominal left
22:57
pyrimidine joined
22:59
pyrimidine left,
pyrimidine joined
23:03
sufrostico left
23:04
pyrimidine left
|
|||
moritz back home | 23:05 | ||
any news about bdfoy's advent post? | 23:06 | ||
it sits as a draft in wordpress, is it publishable? | |||
gfldex | you can move mine to today if you like | 23:07 | |
well, to today in 1h | 23:08 | ||
23:10
clasclin joined
|
|||
moritz is closer to just publishing it | 23:12 | ||
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:14 | |
still, learning is good :D | 23:15 | ||
gfldex | there is also ‚of‘ | ||
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 | ||
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» | ||
gfldex | there may be an RT for that | ||
if not there should | |||
hahainternet | tbqh i'm more interested to learn how 'of' works, i noticed that 'shape' is just a constructor parameter | ||
so i assume it works out to be equiv to :of(Int) | 23:17 | ||
23:17
lukaramu left
|
|||
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 | ||
I have no idea what that means or how to debug it | 23:18 | ||
gfldex | docs.perl6.org/type/Variable#trait_of | ||
hahainternet | gfldex: perhaps not the 'how', but the 'slot' it occupies in the language, if that makes sense | ||
yeah exactly that link :) | |||
23:18
cognominal joined
|
|||
gfldex | there is a bug in htmlify.p6 that prevents traits from ending in the index | 23:19 | |
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) | ||
Rakudo is not well tested in windows | 23:21 | ||
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:25 | |
also try with older versions and same exitcode -16 | 23:26 | ||
23:27
cognominal left
|
|||
timotimo | huh, wtf? | 23:27 | |
i haven't heard of this one before | |||
can you try run with a full path? like C:\\Windows\\calc.exe or whatever the path is? | 23:28 | ||
23:29
cdg left
23:31
cognominal joined
23:33
Tonik joined
|
|||
clasclin | hmm the exitcode is 0 for > run 'C:\\Windows\write.exe' but program didn't open | 23:33 | |
timotimo | what is write.exe? | 23:34 | |
is it actually a gui program that'll pop open a window? | |||
clasclin | it's a gui program | ||
it's wordpad | |||
timotimo | oh! | 23:37 | |
hum :\ | |||
clasclin | the shell command works fine if I type > shell 'C:\\Windows\write.exe' | ||
but the shell does not accept any arguments | |||
timotimo | well, it's supposed to do command line splitting on whitespace | ||
just like when you enter stuff into the shell | 23:38 | ||
23:38
girafe left
|
|||
clasclin | I see... | 23:45 | |
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 | ||
so I think I just a problem with the scripts I've created | 23:47 | ||
23:48
firstdayonthejob left
|
|||
hahainternet | hmm and this is the only instance i can find for partially dimensioned views: rt.perl.org/Public/Bug/Display.html?id=128904 but i guess an array of arrays sorts that anyway | 23:48 | |
23:54
pmurias left
|