»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by masak on 28 November 2015. |
|||
Zoffix | services. gives channel operator status to ChanServ | 00:00 | |
<Zoffix> ¯\_(ツ)_/¯ | |||
-_- | |||
jdv79 | is that like broseph? | ||
timotimo | i think so | ||
so ... do we have "bruhgrammers" now? | 00:01 | ||
00:01
lsm-desktop joined
|
|||
zengargoyle | roommates back in like '90 used bra with great frequency. | 00:02 | |
timotimo | wow, i did not know it was already used early-ish like that | ||
AlexDaniel wishes that all this stuff about bras was associated with DBIish | |||
zengargoyle | maybe 'brah', not that it was ever spelled... | 00:03 | |
00:03
ChanServ sets mode: +o Zoffix
|
|||
timotimo | DBIBro? | 00:03 | |
yeah, not everyone in the 90s could spell or write, right? | |||
jdv79 | nite | 00:04 | |
timotimo | gnite jdv79! | ||
00:04
Ch0c0late left,
ChanServ sets mode: -o Zoffix
|
|||
Zoffix | huh? | 00:06 | |
diakopter | sorry, I was just being silly | ||
Zoffix takes away ChanServ's crack pipe | |||
:) | |||
Hotkeys | quick question | 00:09 | |
is the difference between ++$x and $x++ that the postfix modifies the variable itself while the prefix doesn't | 00:10 | ||
I could probably just test that but | |||
flussence | m: my $x = 1; say $x++; my $y = 1; say ++$y | ||
camelia | rakudo-moar f0a96d: OUTPUT«12» | ||
Zoffix | Hotkeys, ++$x modifies and gives value; $x++ gives value and modifies | ||
diakopter | the difference is which value is returned by the expression; the variable is modified in both cases | 00:11 | |
Hotkeys | oh okay | ||
diakopter | prefix means pre-increment, so increment before returning the value, logically | ||
Hotkeys | so one returns the original value and one returns the incremented value | ||
Zoffix | yup | ||
Hotkeys | alrighty | ||
AlexDaniel | m: my $x = 2; say +-$x; | ||
camelia | rakudo-moar f0a96d: OUTPUT«-2» | ||
AlexDaniel | m: my $x = 2; say -+$x; | ||
camelia | rakudo-moar f0a96d: OUTPUT«-2» | 00:12 | |
AlexDaniel | m: my $x = 2; say -++$x; | ||
camelia | rakudo-moar f0a96d: OUTPUT«-3» | ||
Zoffix | AlexDaniel, show off! :) | ||
AlexDaniel | m: my $x = 2; say --++$x; | ||
camelia | rakudo-moar f0a96d: OUTPUT«Cannot call prefix:<-->(Int); none of these signatures match: (Mu:D $a is rw) (Mu:U $a is rw) (Int:D $a is rw) (int $a is rw) (Bool $a is rw) (Num:D $a is rw) (Num:U $a is rw) (num $a is rw) in block <uni…» | ||
AlexDaniel | ah | ||
Hotkeys | m: my $x = 2; say ±$x; | ||
camelia | rakudo-moar f0a96d: OUTPUT«5===SORRY!5===Argument to "say" seems to be malformedat /tmp/axKWgSNfB3:1------> 3my $x = 2; say7⏏5 ±$x;Bogus postfixat /tmp/axKWgSNfB3:1------> 3my $x = 2; say 7⏏5±$x; expecting any of: infix i…» | ||
Hotkeys | aw | ||
AlexDaniel | m: my $x = 2; say -$x--; | ||
camelia | rakudo-moar f0a96d: OUTPUT«-2» | ||
lizmat | commute from now busy lounge with post-Madonna visitors to quiet room& | ||
AlexDaniel | m: my $x = 2; say +$x++; | ||
camelia | rakudo-moar f0a96d: OUTPUT«2» | ||
00:12
lizmat left
|
|||
AlexDaniel | Hotkeys: I've seen some code snippets here for ± to create a range | 00:13 | |
Hotkeys | seems like it'd be simple to do myself | ||
AlexDaniel | Hotkeys: yeah, that's what it was | 00:14 | |
just a tiny bit of code :) | |||
ooo | |||
00:14
empT left
|
|||
AlexDaniel | now that's fun | 00:14 | |
m: my $x = 2; say $x+++--$x | 00:15 | ||
camelia | rakudo-moar f0a96d: OUTPUT«4» | ||
Hotkeys | beautiful | ||
00:15
empT joined
|
|||
AlexDaniel | m: my $x = 2; say $x++-++$x # can do this | 00:17 | |
camelia | rakudo-moar f0a96d: OUTPUT«-2» | ||
AlexDaniel | m: my $x = 2; say $x+++++$x # but can't do this, such a pity! | ||
camelia | rakudo-moar f0a96d: OUTPUT«Cannot call postfix:<++>(Int); none of these signatures match: (Mu:D $a is rw) (Mu:U $a is rw) (Int:D $a is rw) (int $a is rw) (Bool:U $a is rw) (Bool:D $a is rw) (Num:D $a is rw) (Num:U $a is rw) (num …» | ||
timotimo | yeah, longest-token-matching; an earlier ++ wins over the possibility to have + ++ there ... or something like that | ||
00:17
Skarsnik left
|
|||
AlexDaniel | timotimo: yeah | 00:17 | |
m: * | 00:18 | ||
camelia | ( no output ) | ||
00:18
empT left
|
|||
AlexDaniel | m: say * | 00:18 | |
camelia | rakudo-moar f0a96d: OUTPUT«*» | ||
00:19
lizmat joined
|
|||
Hotkeys | m: sub prefix:<±>(Int:D $n) { -$n...$n }; say ±2; | 00:19 | |
camelia | rakudo-moar f0a96d: OUTPUT«(-2 -1 0 1 2)» | ||
diakopter | m: say my $x = EVAL BEGIN '++($x)'; say $x | 00:20 | |
camelia | rakudo-moar f0a96d: OUTPUT«11» | ||
diakopter | mahaha | ||
AlexDaniel | Hotkeys: I love it | ||
Hotkeys | is there a way to do decreasing ranges without resorting to a sequence | ||
timotimo | yeah | ||
AlexDaniel | Hotkeys: - 5? | ||
timotimo | m: my $r = 1..10; say $r - 5 | ||
camelia | rakudo-moar f0a96d: OUTPUT«-4..5» | ||
Hotkeys | m: say (-3..3).list; say(3..-3).list | 00:21 | |
camelia | rakudo-moar f0a96d: OUTPUT«(-3 -2 -1 0 1 2 3)3..-3» | ||
timotimo | m: my $r = 1..10; say $r - 5; say $r * 10 | ||
camelia | rakudo-moar f0a96d: OUTPUT«-4..510..100» | ||
AlexDaniel | m: sub prefix:<±>(Int:D $n) { -$n...$n }; say ±2 - 5 | ||
camelia | rakudo-moar f0a96d: OUTPUT«0» | ||
leont | travis-ci.org/Leont/tap-harness6/b...28819#L921 :-( | ||
AlexDaniel | m: sub prefix:<±>(Int:D $n) { -$n...$n }; say (±2 - 5) | ||
camelia | rakudo-moar f0a96d: OUTPUT«0» | ||
AlexDaniel | m: sub prefix:<±>(Int:D $n) { -$n..$n }; say (±2 - 5) | ||
camelia | rakudo-moar f0a96d: OUTPUT«-7..-3» | ||
AlexDaniel | m: sub prefix:<±>(Int:D $n) { -$n..$n }; say ±2 - 5 | ||
camelia | rakudo-moar f0a96d: OUTPUT«-7..-3» | ||
timotimo | leont: ;_; | ||
Hotkeys | but I mean like | 00:22 | |
9..1 | |||
m: say 2 ~~ 9..1; | |||
camelia | rakudo-moar f0a96d: OUTPUT«False» | ||
Hotkeys | m: say 2 ~~ 1..9; | ||
camelia | rakudo-moar f0a96d: OUTPUT«True» | ||
AlexDaniel | ah reversed ranges? | ||
Hotkeys | yeah | ||
AlexDaniel | no such thing that I know of | ||
m: sub prefix:<±>(Int:D $n) { -$n..$n }; say ±2 * -5 | 00:23 | ||
camelia | rakudo-moar f0a96d: OUTPUT«10..-10» | ||
timotimo | yeah, ranges are always low-to-high | ||
AlexDaniel | wtf is that? | ||
timotimo | if the number on the right is lower than the number on the left, it's an empty range instead | ||
Hotkeys | why is that? | ||
AlexDaniel | m: say 10..-10 | 00:24 | |
camelia | rakudo-moar f0a96d: OUTPUT«10..-10» | ||
timotimo | that's just how they are built, designed and meant to function | ||
Hotkeys | I guess they still encompass the same range of values | ||
AlexDaniel | hm but you can still create it though | ||
timotimo | yeah | ||
it won't throw an exception or anything | |||
Hotkeys | it gets represented, but it is just empty | ||
timotimo | m: say @(10..-10) | ||
camelia | rakudo-moar f0a96d: OUTPUT«()» | ||
timotimo | um ... urgh. | ||
was that just slow? | 00:25 | ||
ah | |||
Hotkeys | hm? | ||
timotimo | i thought it was going off and iterating from 10, 11, 12, ... until it hits -10 | ||
Hotkeys | I didn't see anything strange | ||
timotimo | it just took much longer than i expected | 00:26 | |
Hotkeys | both were within the same second for me | ||
:p | |||
Zoffix | Same. | ||
timotimo | 012146 was my command, 012154 was my urgh, 012215 was camelias response ... at least to my machine | ||
Zoffix | You were just lagging | ||
m: say @(10..-10) | |||
camelia | rakudo-moar f0a96d: OUTPUT«()» | ||
timotimo | most probably | ||
yeah, i had tested it locally, too, where it was instant also | 00:27 | ||
AlexDaniel | m: ++++++++++++---------* | ||
camelia | ( no output ) | ||
Hotkeys | m: sub prefix:<±>(Int:D $n) { $n.=abs; -$n..$n }; say ±(-2); | 00:28 | |
camelia | rakudo-moar f0a96d: OUTPUT«Cannot modify an immutable Int in sub prefix:<±> at /tmp/yOyZ8XnPIY:1 in block <unit> at /tmp/yOyZ8XnPIY:1» | ||
Hotkeys | oops | ||
AlexDaniel | is copy | ||
Zoffix | m: sub prefix:<±>(Int:D $n is copy) { $n.=abs; -$n..$n }; say ±(-2); | ||
camelia | rakudo-moar f0a96d: OUTPUT«-2..2» | ||
Zoffix | m: sub prefix:<±>(Int:D $n is copy) { $n.=abs; -$n..$n }; say ±(Inf); | ||
camelia | rakudo-moar f0a96d: OUTPUT«Type check failed in binding $n; expected Int but got Num in sub prefix:<±> at /tmp/H1EGH1pF73:1 in block <unit> at /tmp/H1EGH1pF73:1» | ||
Hotkeys | ty | ||
Zoffix | :( | 00:29 | |
Hotkeys | oh | ||
Zoffix | m: sub prefix:<±>(Num:D $n is copy) { $n.=abs; -$n..$n }; say ±(Inf); | ||
camelia | rakudo-moar f0a96d: OUTPUT«-Inf..Inf» | ||
Hotkeys | rip | ||
Zoffix | :O | ||
00:29
n0tjack joined
|
|||
Hotkeys | probably smarter to use num anyway | 00:29 | |
Zoffix | m: sub prefix:<±>(Num:D $n is copy) { $n.=abs; -$n..$n }; say ±(NaN); | ||
camelia | rakudo-moar f0a96d: OUTPUT«NaN..NaN» | ||
Zoffix | Perl 6 is smarter than me :( | ||
Hotkeys | Also I'll never get tired of the smilies | ||
for definedness checking | |||
AlexDaniel | Hotkeys: me too… | 00:30 | |
Hotkeys | :D and :U | ||
timotimo | :_ isn't such a smiley-like smiley :( | ||
Hotkeys | it's just a broken smiley | ||
the eyes have unhinged from the mouth (or vice versa) | 00:31 | ||
Zoffix | m: sub prefix:<±>(Num:D $n is copy) { $n.=abs; (-$n..$n) xx 10, 'batman' }; say ±(NaN); | ||
camelia | rakudo-moar f0a96d: OUTPUT«((NaN..NaN NaN..NaN NaN..NaN NaN..NaN NaN..NaN NaN..NaN NaN..NaN NaN..NaN NaN..NaN NaN..NaN) batman)» | ||
AlexDaniel | the happiest perl6 program in the world! | 00:32 | |
m: :D | |||
camelia | ( no output ) | ||
Hotkeys | lol | ||
AlexDaniel | m: :U | ||
camelia | ( no output ) | ||
Hotkeys | m: say 2 ~~ 1...3 | ||
camelia | rakudo-moar f0a96d: OUTPUT«(False True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True…» | ||
Hotkeys | heh | ||
sequences | |||
AlexDaniel | Hotkeys: I don't really get this one | 00:33 | |
Hotkeys | me either | ||
Zoffix | m: say 1...3 | ||
camelia | rakudo-moar f0a96d: OUTPUT«(1 2 3)» | ||
Zoffix | :S | ||
Hotkeys | m: say 2 ~~ 1..3 | ||
camelia | rakudo-moar f0a96d: OUTPUT«True» | ||
AlexDaniel | m: say 2 ~~ (1, 2, 3) | ||
Hotkeys | makes much more sense | ||
camelia | rakudo-moar f0a96d: OUTPUT«False» | ||
00:33
lichtkind left,
n0tjack left
|
|||
Zoffix | m: say eager 1...3 | 00:34 | |
camelia | rakudo-moar f0a96d: OUTPUT«(1 2 3)» | ||
Hotkeys | m: say 2 ~~ any(1, 2, 3) | ||
camelia | rakudo-moar f0a96d: OUTPUT«True» | ||
Hotkeys | AlexDaniel: | ||
m: say 2 ~~ any(1...3) | |||
camelia | rakudo-moar f0a96d: OUTPUT«True» | ||
Hotkeys | works I guess | ||
still not as pretty as the range one | |||
AlexDaniel | but why does it go True True True True True… ? | 00:35 | |
dalek | kudo-star-daily: 44a6126 | coke++ | log/ (2 files): today (automated commit) |
||
AlexDaniel | what's so infinite about it? | ||
timotimo | 2 ~~ 1 ... 3 is actually "True ... 3" | ||
er, i mean | |||
False ... 3 | |||
m: say False ... 3 | 00:36 | ||
camelia | rakudo-moar f0a96d: OUTPUT«(False True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True True…» | ||
AlexDaniel | aaaaaah | ||
riiiiiight | |||
Hotkeys | m: say 2 ~~ (1...3); | ||
camelia | rakudo-moar f0a96d: OUTPUT«False» | ||
timotimo | m: say 1...3 | ||
camelia | rakudo-moar f0a96d: OUTPUT«(1 2 3)» | ||
AlexDaniel | ok I got it… wow | ||
timotimo | i think matching against a list will want the LHS to be list-structured, too | ||
00:36
leont left
|
|||
Hotkeys | m: say 2, ~~ (1...3); | 00:37 | |
camelia | rakudo-moar f0a96d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/z6zjjlnOJKExpected a term, but found either infix ~~ or redundant prefix ~ (to suppress this message, please use a space like ~ ~)at /tmp/z6zjjlnOJK:1------> 3say 2, ~~7⏏5 (1...3);» | ||
Hotkeys | I'm smrt | ||
m: say (2) ~~ (1...3); | |||
camelia | rakudo-moar f0a96d: OUTPUT«False» | ||
timotimo | trailing comma really only works in some circumstances, like an argument list | ||
m: say (2,) ~~ (1...3) | |||
camelia | rakudo-moar f0a96d: OUTPUT«False» | ||
timotimo | m: say (1,2,3) ~~ (1...3) | ||
camelia | rakudo-moar f0a96d: OUTPUT«False» | ||
timotimo | m: say (1,2,3) ~~ (1, 2, 3) | ||
camelia | rakudo-moar f0a96d: OUTPUT«True» | ||
timotimo | interesting | 00:38 | |
Hotkeys | m: say 2,; | ||
camelia | rakudo-moar f0a96d: OUTPUT«2» | ||
Hotkeys | woo | ||
I'm an expert | 00:41 | ||
timotimo | can you draw seven perpendicular lines? | 00:43 | |
[Coke] adds woolfy to the credits. | 00:44 | ||
Hotkeys | yes | ||
with both green and transparent ink | |||
timotimo | love that sketch! | ||
Hotkeys | yeah | ||
timotimo | are you interested in seeing a video of a cat snuggling up to a bearded man's face? | 00:45 | |
Hotkeys | Can you draw seven perpendicular red lines, some with green ink, some with transparent ink, and one in the form of a kitten? | ||
definitely a possible thing | |||
for an expert like me | 00:46 | ||
timotimo | yup. experts can do things like that | ||
Hotkeys | I don't really do videos while in lecture | ||
timotimo | oh, OK | ||
Hotkeys | I prefer to waste my time in text chats | ||
lizmat | [Coke]: woolfy will appreciate that :-) | ||
timotimo | well, that video is perfectly fine when muted | ||
Hotkeys | not paying attention etc. | ||
lizmat | m: say CurrentThreadScheduler.new.cue( { 42 }, :catch( { say "caught"; default { say "default" } }) ) # works fine | ||
camelia | rakudo-moar f0a96d: OUTPUT«(<anon|645373056>)» | ||
Hotkeys | but at least irc chat looks kind of like I'm doing productive things | ||
beard cat videos don't | 00:47 | ||
timotimo | oh, i see | ||
lizmat | m: say CurrentThreadScheduler.new.cue( { die }, :catch( { say "caught"; default { say "default" } }) ) # not so good | ||
camelia | rakudo-moar f0a96d: OUTPUT«caughtdefaultNil» | ||
Hotkeys | I also avoid facebook etc. | ||
Zoffix | :o | ||
timotimo | avoiding facebook's a good idea in any case :) | ||
Hotkeys | perl 6 doc site really breaks the illusion | ||
Zoffix | but Facebook is where all the fun's at! | ||
Hotkeys | with the big butterfly drawing | ||
Zoffix | i've just seen lizmat's picture there! | ||
timotimo | Hotkeys: install a userscript that hides 'er :) | 00:48 | |
Hotkeys | is such a thing even possible? | ||
Zoffix | yes | ||
Hotkeys | my facebook picture has been a flag for over a year now | ||
Zoffix | Hotkeys, what browser? For Firefox there's greasemonkey. For Chrome.. I forget the name, but if you google "greasemonkey for chrome" I'm sure you get it :) | ||
Hotkeys | (I am a flag to) | ||
I have tampermonkey | 00:49 | ||
which is the equiv for chrome | |||
Zoffix | Ah, yeah that is it | ||
lizmat | (I'm not on facebook) | ||
Hotkeys | I was just joking | ||
AlexDaniel | m: sub ___{}; *^___^* # more smileys! | ||
camelia | ( no output ) | ||
Hotkeys | this new perl 6 intro is nice as well (perl6intro.com) | ||
timotimo | yup, it is | 00:50 | |
Zoffix | lizmat, you are in this pic, which is the header of the Facebook Perl 6 group :) scontent-yyz1-1.xx.fbcdn.net/hphot...5064_o.jpg | ||
(and you are tagged in that pic) | |||
lizmat | yeah, I guess so :-) | ||
Zoffix | :) | ||
lizmat | .oO( and nobody says anything about the life-size Camelia in the background :-) |
00:51 | |
diakopter | m: say my $x = EVAL BEGIN '++($x=33)'; say END BEGIN END BEGIN END BEGIN $x | ||
camelia | rakudo-moar f0a96d: OUTPUT«34Nil» | ||
Zoffix | :o | ||
AlexDaniel | m: | :[] | 00:52 | |
camelia | ( no output ) | ||
AlexDaniel | m: | :() | ||
camelia | ( no output ) | ||
Hotkeys | are you still trying to make face programs | 00:53 | |
AlexDaniel | shh | ||
Hotkeys | diakopter: what did you just do | ||
diakopter | Hotkeys: working around this | ||
m: say my $x = $x | 00:54 | ||
camelia | rakudo-moar f0a96d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Zps4XK3BosCannot use variable $x in declaration to initialize itselfat /tmp/Zps4XK3Bos:1------> 3say my $x = $7⏏5x expecting any of: term» | ||
Hotkeys | ah | ||
AlexDaniel | what a wonderful error message | ||
Hotkeys | why work around it | ||
seems like a reasonable thing | |||
AlexDaniel | mm | 00:55 | |
m: my $x = 5; sub foo { my $x = $x }; foo | |||
camelia | rakudo-moar f0a96d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/odrl_6WZ0WCannot use variable $x in declaration to initialize itselfat /tmp/odrl_6WZ0W:1------> 3my $x = 5; sub foo { my $x = $7⏏5x }; foo expecting any of: term» | ||
diakopter | m: say my ($x, $y) = (EVAL BEGIN '$y=6'),(EVAL BEGIN '$x=4'); | ||
camelia | rakudo-moar f0a96d: OUTPUT«(6 4)» | ||
AlexDaniel | m: my $x = 5; sub foo { my $x = OUTER::$x }; foo | 00:56 | |
camelia | rakudo-moar f0a96d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/IBP_0juoBCMalformed lookup of ::$x; please use ::('$x'), ::{'$x'}, or ::<$x>at /tmp/IBP_0juoBC:1------> 3my $x = 5; sub foo { my $x = OUTER7⏏5::$x }; foo» | ||
AlexDaniel | m: my $x = 5; sub foo { my $x = ::$x }; foo | ||
camelia | rakudo-moar f0a96d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/FD66ne1Jq2Malformed lookup of ::$x; please use ::('$x'), ::{'$x'}, or ::<$x>at /tmp/FD66ne1Jq2:1------> 3my $x = 5; sub foo { my $x =7⏏5 ::$x }; foo expecting any of: term» | ||
AlexDaniel | m: my $x = 5; sub foo { my $x = ::<$x> }; foo | ||
camelia | ( no output ) | ||
AlexDaniel | m: my $x = 5; sub foo { my $x = ::<$x>; say $x }; foo | 00:57 | |
camelia | rakudo-moar f0a96d: OUTPUT«(Any)» | ||
AlexDaniel | nah | ||
Zoffix | Curses! I wanted to use Text::Markov for my advent article and its got an @*INC bug in tests :P | ||
Zoffix sends a PR | |||
AlexDaniel | m: my $x = 5; sub foo { my $x = OUTER::<$x>; say $x }; foo | ||
camelia | rakudo-moar f0a96d: OUTPUT«5» | ||
AlexDaniel | alright! | ||
Hotkeys | there's a markov chain module? neato | 00:58 | |
Zoffix | Yeah :) | ||
timotimo | autovivification makes that super awesome, IMO | 01:00 | |
%h{$word1}{$word2}{$word3}++ | |||
lizmat | m: sub a($a) { $a(); CATCH { default { say "default" } }; 42 }; say a( -> { die } ) # shorter version | 01:02 | |
camelia | rakudo-moar f0a96d: OUTPUT«defaultNil» | ||
lizmat | I sorta expect this to say 42 | ||
Zoffix | .tell nine not sure how feasible it is, but it would be nicer if the precomp stuff happened in the OS's temp dir instead of .precomp. Currently, if I run prove in some dist's repo, I have to either list lib/.precomp in .gitignore or be careful not to make it part of my commit :) which is kinda annoying :) | ||
yoleaux | Zoffix: I'll pass your message to nine. | ||
lizmat | am I wrong ? | ||
flussence | Zoffix: nice timing, I just sent in a PR for exactly that | 01:03 | |
lizmat | flussence Zoffix : I think we want precomped modules to be more permanent than living in a temp dir | 01:04 | |
flussence | mine just does it for ::FileSystem ones, which a `git clean -dfx` in a module dir blows away anyway | ||
geekosaur | possibly just tests should use a tmpdir for precomp? | 01:05 | |
timotimo | i don't know why i stayed up so late. i should go to bed | 01:06 | |
01:07
empT joined
01:09
quester left
|
|||
lizmat just submitted #126789 | 01:09 | ||
timotimo: know the feeling | |||
01:11
cdg left
|
|||
lizmat | m: my %h; %h<foo><bar><baz> := my $foobarbaz; dd %h; $foobarbaz = 42; dd %h | 01:11 | |
camelia | rakudo-moar f0a96d: OUTPUT«Hash $var = ${:foo(${:bar(${:baz(Any)})})}Hash $var = ${:foo(${:bar(${:baz(Any)})})}» | ||
01:12
empT left
|
|||
timotimo | gnite! :) | 01:12 | |
lizmat | hmmm..... | ||
01:12
yeahnoob joined
|
|||
lizmat | good night, timotimo! | 01:12 | |
m: my %h; my $a := %h<foo><bar><baz>; dd %h; $fa = 42; dd %h | |||
camelia | rakudo-moar f0a96d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_JM_35Y3y1Variable '$fa' is not declaredat /tmp/_JM_35Y3y1:1------> 3 %h; my $a := %h<foo><bar><baz>; dd %h; 7⏏5$fa = 42; dd %h» | ||
lizmat | m: my %h; my $a := %h<foo><bar><baz>; dd %h; $a = 42; dd %h | ||
camelia | rakudo-moar f0a96d: OUTPUT«Hash $var = ${}Hash $var = ${:foo(${:bar(${:baz(42)})})}» | ||
lizmat | .oO( the magic of .WHENCE ) |
01:13 | |
Hotkeys | .WHENCE? | 01:14 | |
Zoffix | bbkr_, sent you a PR: github.com/bbkr/text_markov/pull/3 | 01:17 | |
AlexDaniel | *⃰ | ||
01:18
snarkyboojum joined
|
|||
lizmat | $!whence is a Scalar attribute that may hold code to do initialization | 01:19 | |
Hotkeys | I wish we still used whence, hence, thence, whither, hither, thither | 01:20 | |
but it would sound ridiculous and pompous to use them today | |||
:( | |||
except poetically | |||
(and hence in its other definition as therefore) | 01:21 | ||
01:21
Actualeyes joined
01:22
kid51 left
01:23
Zoffix left,
kid51 joined
|
|||
Goonthen | :( | 01:27 | |
01:27
hudo joined
01:28
csd_ joined
|
|||
Hotkeys | :_ | 01:29 | |
01:30
n0tjack joined
|
|||
Hotkeys | .u  | 01:34 | |
yoleaux | U+2424 SYMBOL FOR NEWLINE [So] () | ||
Hotkeys | neat | ||
Goonthen | python | ||
01:35
n0tjack left
|
|||
Hotkeys | perl | 01:35 | |
lizmat | good night, #perl6! | 01:36 | |
Goonthen | ^_^ | ||
01:36
TimToady left
|
|||
Goonthen | Can't understand the codes I wrote one month ago :( | 01:37 | |
Too hard to maintain | |||
Hotkeys | lol | ||
Did you include comments? :p | 01:38 | ||
Goonthen | yes, but very few. | ||
I guess that's the main reason | |||
01:38
TimToady1 joined
|
|||
lizmat | .tell jnthn in t/spec/S17-supply/syntax.t, add =finish at line 227, to reliably cause a SIGABRT after test 16 | 01:40 | |
yoleaux | lizmat: I'll pass your message to jnthn. | ||
lizmat | .tell jnthn looks like there's still some voodoo going on wrt to supply blocks, at least on OS X | ||
yoleaux | lizmat: I'll pass your message to jnthn. | ||
lizmat | really sleep& | ||
Hotkeys | Goonthen: sometimes I write spaghetti code when I don't think I'll ever need to look at it again (For personal utilities) | 01:41 | |
and then i need to look at it again and hate myself | 01:42 | ||
Goonthen | AAny idea how to avoid this ? More comments ? | 01:43 | |
AlexDaniel | Goonthen: just start liking it! | ||
.oO( oh look! This is so complicated! I must have been so smart! ) |
01:44 | ||
Goonthen | <lol | ||
AlexDaniel | Goonthen: just try to keep it simple | 01:45 | |
especially the flow | 01:46 | ||
01:54
zengargoyle left
01:59
empT joined
02:03
empT left,
rurban left
02:08
muraiki joined
02:09
dayangkun joined
02:11
zengargoyle joined
02:12
molaf joined
02:18
dayangkun left
02:21
hudo left
02:22
Goonthen left
02:25
csd_ left
|
|||
dj_goku | hi | 02:27 | |
yoleaux | 2 Dec 2015 07:39Z <timotimo> dj_goku: panda ships with JSON::Fast so that it can use it before it is able to install stuff from the ecosystem by itself; i asked tadzik to wait with updating pandas copy because SEQ was just about to get deprecated and that would have broken panda | ||
2 Dec 2015 07:39Z <timotimo> dj_goku: when all people can be assumed to have a new-enough rakudo, i'll tell tadzik to update JSON::Fast again so that the speed increase can be felt far and wide | |||
02:29
muraiki left
|
|||
dj_goku | .tell timotimo is there a reason against using say git submodule vs copy/pasting code into the panda repo? | 02:30 | |
yoleaux | dj_goku: I'll pass your message to timotimo. | ||
02:31
n0tjack joined,
molaf_ joined
02:34
molaf left
02:35
n0tjack left,
dayangkun joined
|
|||
[Coke] | submodule lets you easily update. | 02:39 | |
DRY. | |||
02:41
kaare_ joined
02:43
zacts joined
02:48
BenGoldberg joined
02:52
kid51 left
02:55
kaare_ left
02:56
zacts left
02:59
zacts joined
|
|||
dj_goku | [Coke]: :D that is the idea! | 03:01 | |
03:03
lustlife joined
03:04
sno left
03:08
Zoffix joined
03:09
noganex_ joined
03:12
noganex left
|
|||
diakopter | hunh, PHP 7.0.0 released this week; they skipped version 6 ... for reasons that might not be surprising.. www.phpclasses.org/blog/post/242-PH...-Date.html | 03:14 | |
TEttinger | haha | 03:16 | |
Those that were in favor of PHP 7 claimed that PHP 6 was the name of a PHP branch that was killed in 2010. That was a very ambitious development that aimed to bring Unicode support as standard to all PHP text handling. | |||
oh no... so ambitious... | |||
no language with a 6 in it could possibly support unicode... | |||
llfourn | or be have 6.0 release in 2015... | ||
reinforcing the belief of PHP fans they have made the right choice to invest on a language that is leading its market | 03:17 | ||
there are too many things wrong in this sentence | 03:18 | ||
03:20
Actualeyes left
|
|||
diakopter | well, PHP is in fact growing the 3rd fastest of the language repositories (behind JS and Go), according to modulecounts.com | 03:23 | |
.NET, Python, and Ruby round out the 2nd tier | 03:24 | ||
03:24
iguanodon joined
|
|||
diakopter | er, and Java | 03:24 | |
.NET, Python, Java, and Ruby round out the 2nd tier | |||
Clojure, Perl, Rust, Haskell, Lua, Perl 6, and some others comprise the 3rd tier of growth rates | 03:26 | ||
03:28
molaf_ left
|
|||
retupmoca | .tell nine github.com/rakudo/rakudo/pull/612 fixes my PERL6LIB issues | 03:28 | |
yoleaux | retupmoca: I'll pass your message to nine. | ||
03:30
iguanodon left
03:31
n0tjack joined
03:34
snarkyboojum left
03:35
n0tjack left
03:39
molaf joined
|
|||
dalek | kudo/nom: 2729631 | TimToady++ | src/ (2 files): refactor same(space,case,mark) The :ss, :ii, and :mm now all work together, and the latter two go with word-by-word mapping whenever :sigspace is in effect. |
03:39 | |
ast: 91c26aa | TimToady++ | S (4 files): tests for same(space,case,mark) semantics |
03:40 | ||
llfourn | diakopter: amazing that npm has over 200,000 modules o.o | 03:41 | |
diakopter | yah | 03:42 | |
ShimmerFairy | TimToady: do they have the same behavior for when the destination string is longer than the pattern? I remember that one of them (samecase?) just repeated the last pattern across the remaining string, while the others simply stopped. | ||
yoleaux | 2 Dec 2015 22:12Z <[Coke]> ShimmerFairy: did the credits conversion, you're off the hook. | ||
diakopter | llfourn: even more amazing they have nearly 300 uploads per day | 03:43 | |
and still climbing, apparently | 03:44 | ||
llfourn | diakopter: and apparently 131 million downloads www.npmjs.com/ | ||
I guess it's all the new stuff that has js libs being written for them | |||
I know that my friends vaccume clearner thing runs node | 03:45 | ||
diakopter | 131 million downloads in the last day | ||
that's a lot | |||
llfourn | it's as masak++ said, JS has won | ||
03:45
km3 joined
|
|||
diakopter | if you put modulecounts.com on "All time" view, you can rest knowing that, even as of 2010, Perl was ahead in quantity | 03:46 | |
Mouq | TimToady++ | ||
yoleaux | 1 Dec 2015 09:35Z <ShimmerFairy> Mouq: now that I can use perl6, I'm also seeing the same strange parse fail in SUPERNOVA's test.p6 that wasn't there pre-CURI. Weird, I'll have to look into it when I have time. | ||
MadcapJake | Zoffix: I don't know how easy it would be but you might try using github.com/atom/highlights with my syntax-highlighter to generate the html. | 03:47 | |
llfourn | mm it's interesting that perl was so far ahead in the idea of easily packaging and distributing modules | ||
diakopter | (but in 2010, the others were already growing far, far faster) | ||
llfourn | well I guess it's quality not quantity in the end -- I don't really want to browse 200,000 modules to find the one I need lol | 03:49 | |
Mouq | Were there any serious precedents to CPAN? | ||
TimToady1 | ShimmerFairy: case and mark repeat the last word, space just uses the existing spaces | 03:52 | |
03:52
empT joined
03:53
yqt left
|
|||
diakopter | Mouq: I don't think so | 03:53 | |
03:54
TimToady1 is now known as TimToady,
TimToady left,
TimToady joined
|
|||
ShimmerFairy | m: say "foo bar baz".samespace("a b"); say "foobar".samemark("äöü"); say "foobar".samecase("BaZ"); # TimToady: this is what I meant. samecase carries the last pattern (uppercase) through, but mark and space don't do that | 03:56 | |
camelia | rakudo-moar 272963: OUTPUT«foo bar bazf̈ööbarFoOBAR» | ||
TimToady | the methods are primitives, I'm talking about the s/// form | 03:59 | |
ShimmerFairy | (to be a bit more concrete, consistency with the other two functions would suggest "FoObar" instead of "FoOBAR") | ||
ah, ok then :) | |||
TimToady | those methods are applied word by word when sigspace is in effect, and the last pattern word repeats | ||
otherwise they call the methods directly, so would be what you observe | 04:00 | ||
it makes more sense to extend the last letter of case than the last letter of mark | |||
though an argument could be made for extending some marks | |||
and perhaps that would be a better default | 04:01 | ||
ShimmerFairy | I agree extending the mark doesn't make much sense, my concern is just that via the primitive methods, .samecase does something different that the other two .same* methods. I personally can't think offhand of a case where I'd want FoOBAR | ||
TimToady | however, consider Foobar as tclc | 04:02 | |
you do want the rest of the word lc | |||
ShimmerFairy | .oO(If we had Cats you could just do $str.samecase("A" x *) ) |
||
TimToady | as it happens, you can define your own filter now and feed it to .word-by-word | ||
ShimmerFairy | ah, true. I suppose I just don't use the .same* methods often enough anyway, it was just a seeming inconsistency I spotted some time back :) | 04:03 | |
TimToady | it's an inconsistency that almost been well considered :) | ||
MadcapJake | any idea when perl6-debug-m will work again? | 04:06 | |
TimToady | there are really two very different use cases for marks, one of which is for natural language orthography, where you rarely get the same mark on multiple characters, vs novelty marks like circles and underbars that do want to work on multiple adjacent characters | 04:07 | |
my thinking was perhaps unduly influenced by the former usage, but perhaps a mark repeat policy can support the latter without having a large impact on the former | 04:08 | ||
ShimmerFairy | TimToady: about samemark doing the same thing, it'd only make sense for things like keycap marks, e.g. $sequence.samemark("\x20E3") , and not so much for languages. Since I don't know if there's a decent method of finding the "repeatable" ones, I'm not sure if the default is worth changing. | ||
TimToady | so maybe I'll make it consistent with cases | ||
ShimmerFairy | m: say "foobar".samecase("BAZ ") | ||
camelia | rakudo-moar 272963: OUTPUT«FOObar» | ||
ShimmerFairy | ^ there's a way to get the "don't repeat" behavior, at least :) | ||
TimToady | hmm, I thought that one would repeat | 04:09 | |
diakopter | llfourn: after a bit of analysis, the 50-day moving average for CPAN's growth rate has been in the single digits since modulecounts started recording (2010) | ||
TimToady | oh, wait, that's the primitive again... | ||
diakopter | (and declining since then, gradually from high single digits to low single digits today) | 04:10 | |
04:11
molaf left
|
|||
TimToady | m: $_ = "BAZ "; ss:ii/\w+ /foobar/; .say | 04:11 | |
camelia | rakudo-moar 272963: OUTPUT«FOOBAR» | ||
TimToady | that one extends | ||
m: $_ = "oöö"; ss:ii/\w+ /foobar/; .say | 04:12 | ||
camelia | rakudo-moar 272963: OUTPUT«foobar» | ||
TimToady | m: $_ = "oöö"; ss:mm/\w+ /foobar/; .say | ||
camelia | rakudo-moar 272963: OUTPUT«fööbar» | ||
TimToady | that one doesn't, but arguably should | ||
m: $_ = "o⃨"; ss:mm/\w+ /foobar/; .say | 04:14 | ||
camelia | rakudo-moar 272963: OUTPUT«f⃨oobar» | ||
04:14
empT_ joined
04:17
empT left
04:23
vendethiel joined
|
|||
dalek | kudo/nom: 807e2ef | retupmoca++ | src/core/Process.pm: Fix forward-slash vs back-slash confusion in Win32 In windows C:\a\b and C:/a/b refer to the same location, but @INC.unique thinks they are different, so we canonicalize all paths to C:\a\b on windows. Fixes the issue in gist.github.com/retupmoca/01d09301ac7fc3fd2013 |
04:27 | |
kudo/nom: 323accf | retupmoca++ | src/core/Process.pm: Also canonicalize paths is %*CUSTOM_LIB |
|||
kudo/nom: f59ce1d | (Matthew Wilson)++ | src/core/Process.pm: Merge pull request #612 from retupmoca/perl6lib-slashes Fix forward-slash vs back-slash confusion in Win32 |
|||
04:32
n0tjack joined
04:34
mohij joined
04:35
bpmedley left
04:36
n0tjack left
04:38
patrickz left,
zengargoyle left
04:42
empT joined
04:43
empT_ left
04:46
skids left,
vendethiel left
04:49
Actualeyes joined
|
|||
TimToady | m: say "o⃨" ~~ m:m/o/ | 04:51 | |
camelia | rakudo-moar f59ce1: OUTPUT«False» | ||
TimToady | I have found a bug! | 04:52 | |
m: say "ö" ~~ m:m/o/ | |||
camelia | rakudo-moar f59ce1: OUTPUT«「ö」» | ||
TimToady | m: say "o⃝" ~~ m:m/o/ | 04:53 | |
camelia | rakudo-moar f59ce1: OUTPUT«False» | ||
TimToady | m: say "o⃝" ~~ m:m/\w/ | ||
camelia | rakudo-moar f59ce1: OUTPUT«「o⃝」» | ||
dalek | kudo/nom: fc4bf6f | TimToady++ | src/core/Str.pm: extend last mark to be like last case I decided that repeating novelty combiners will likely be the more common use of the construct than trying to tweak words from natural languages. |
04:56 | |
ast: f9d5b9d | TimToady++ | S05-modifier/samemark.t: tweak for samemark extension semantics (also shows a bug in :ignoremark matching) |
04:58 | ||
TimToady | m: say "o⃝" ~~ m:m:i/o/ | 05:08 | |
camelia | rakudo-moar f59ce1: OUTPUT«chr codepoint cannot be negative in block <unit> at /tmp/1T8Oc0sTEs:1» | ||
TimToady | cool! | ||
j: say "o⃝" ~~ m:m:i/o/ | 05:12 | ||
camelia | rakudo-jvm e3c591: OUTPUT«Error while reading '/home/camelia/p6eval-token': No such file or directory at /home/camelia/rakudo-j-inst/bin/eval-client.pl line 10.» | ||
TimToady | j: say "o⃝" ~~ m:m/o/ | ||
camelia | rakudo-jvm e3c591: OUTPUT«===SORRY!===java.lang.RuntimeException: ordbaseat NYI» | ||
TimToady | m: nqp::ordbaseat("o⃝", 0).say | 05:13 | |
camelia | rakudo-moar fc4bf6: OUTPUT«-2» | ||
TimToady | hah! | ||
m: nqp::ordbaseat("oö", 0).say | 05:14 | ||
camelia | rakudo-moar fc4bf6: OUTPUT«111» | ||
TimToady | m: nqp::ordbaseat("ö", 0).say | ||
camelia | rakudo-moar fc4bf6: OUTPUT«111» | ||
05:20
yeahnoob_ joined
05:22
csd_ joined
05:23
yeahnoob left
05:27
csd_ left
05:31
AlexDaniel left
05:33
n0tjack joined
05:36
Ben_Goldberg joined
05:37
n0tjack left
05:38
yeahnoob_ left,
zengargoyle joined,
BenGoldberg_ joined,
BenGoldberg_ left
05:39
ribasushi left,
raiph left,
BenGoldberg left,
yeahnoob joined
05:41
Ben_Goldberg left
|
|||
TimToady | m: $_ = "o⃨"; say Ss:mm/\w+ /foobar/; | 05:45 | |
camelia | rakudo-moar fc4bf6: OUTPUT«f⃨o⃨o⃨b⃨a⃨r⃨» | ||
TimToady | ShimmerFairy: ^^ | 05:46 | |
ShimmerFairy | cool :) | ||
TimToady | m: $_ = "o⃨"; say Ss:mm/o+ /foobar/; | ||
camelia | rakudo-moar fc4bf6: OUTPUT«o⃨» | ||
TimToady | that's the bug diakopter++ and I are hunting on two ends of the same sofa... | 05:47 | |
(the nqp::ordbaseat bug) | |||
05:49
yeahnoob left
05:50
yeahnoob joined,
ribasushi joined
|
|||
dalek | p: 8e5026c | TimToady++ | tools/build/MOAR_REVISION: bump MoarVM to get ordbaseat patch |
06:02 | |
kudo/nom: d6f783b | TimToady++ | tools/build/NQP_REVISION: bump NQP to get ordbaseat fix |
06:03 | ||
06:05
empT left
|
|||
TimToady | m: $_ = "o⃨"; say Ss:mm/o+ /foobar/; | 06:12 | |
camelia | rakudo-moar d6f783: OUTPUT«f⃨o⃨o⃨b⃨a⃨r⃨» | ||
TimToady | \o/ | ||
dalek | ast: 7a89eb5 | TimToady++ | S05-modifier/samemark.t: faulty test is faulty, :m ain't :mm |
06:14 | |
06:17
dj_goku left
06:18
dj_goku joined,
dj_goku left,
dj_goku joined
06:29
empT joined
06:30
telex left
06:32
telex joined
06:33
Actualeyes left
06:34
n0tjack joined
06:38
n0tjack left
06:49
domidumont joined
06:57
domidumont left
07:07
darutoko joined
07:13
zengargoyle left
07:14
domidumont joined
07:15
bjz joined
|
|||
stmuk_ | the SHA hash filenames are going to make debugging harder IMO | 07:16 | |
yoleaux | 2 Dec 2015 19:32Z <ZoffixW> stmuk_: sent you a PR: github.com/stmuk/p6-Text-VimColour/pull/11 | ||
[Tux] | test 50000 22.732 22.621 | 07:17 | |
test-t 50000 20.550 20.439 | |||
csv-parser 50000 26.298 26.187 | |||
07:19
_nadim left
|
|||
TimToady | jnthn: haven't thought much more about Rxx, but need to fix export of precedence traits, and that's no so far off from where we'd hang thunkme bits | 07:21 | |
07:22
Actualeyes joined
07:26
bjz left
07:35
n0tjack joined
07:39
esh joined,
n0tjack left,
rurban joined
|
|||
nine | stmuk_: there is most probably a way to get better information for debugging despite using shas for the file names. | 07:42 | |
yoleaux | 01:02Z <Zoffix> nine: not sure how feasible it is, but it would be nicer if the precomp stuff happened in the OS's temp dir instead of .precomp. Currently, if I run prove in some dist's repo, I have to either list lib/.precomp in .gitignore or be careful not to make it part of my commit :) which is kinda annoying :) | ||
03:28Z <retupmoca> nine: github.com/rakudo/rakudo/pull/612 fixes my PERL6LIB issues | |||
nine | .tell retupmoca excellent! | 07:43 | |
yoleaux | nine: I'll pass your message to retupmoca. | ||
07:45
baest left,
baest joined
07:49
_mg_ joined,
csd_ joined,
sno joined
07:53
bjz joined,
csd_ left
|
|||
moritz | \o | 07:54 | |
m: sub a($a) { $a(); CATCH { default { say "default" } }; say 42 }; say a( -> { die } ) | 08:00 | ||
camelia | rakudo-moar d6f783: OUTPUT«defaultNil» | ||
nine | .tell Zoffix probably too late but for future reference: I syntax highlight my presentation slides by opening the file in vim which is running in KDE's konsole. Then I use konsole's "Save output as" to save it to an HTML file. That I copy&paste into LibreOffice. | 08:04 | |
yoleaux | nine: I'll pass your message to Zoffix. | ||
08:09
domidumont left
08:11
abraxxa joined
|
|||
moritz | nine: sounds like Text::VimColor would be easier to automate | 08:15 | |
s/to automate/for automation/ | 08:16 | ||
nine | moritz: of course :) | 08:20 | |
08:20
dayangkun left
08:21
dayangkun joined
08:22
ely-se_ joined
08:24
RabidGravy joined
08:27
Actualeyes left
|
|||
mrf_ | morning | 08:31 | |
08:34
roguelazer left,
skarn left
08:35
_nadim joined,
n0tjack joined
08:36
roguelazer joined,
skarn joined
08:40
n0tjack left
08:48
dakkar joined
08:50
lustlife left,
lustlife joined
|
|||
RabidGravy | morning | 08:51 | |
08:54
xfix joined
08:57
empT left
09:21
zakharyas joined
|
|||
jnthn | TimToady: OK, I leave it with you then :) | 09:27 | |
yoleaux | 01:40Z <lizmat> jnthn: in t/spec/S17-supply/syntax.t, add =finish at line 227, to reliably cause a SIGABRT after test 16 | ||
01:40Z <lizmat> jnthn: looks like there's still some voodoo going on wrt to supply blocks, at least on OS X | |||
09:28
leont joined
|
|||
RabidGravy | while we're on the subject of suppliy blocks, is it deliberate that e.g. "supply { react { whenever Supply.interval(1) { emit("something") } } }" doesn't work? | 09:32 | |
leont | Meh, debugger being broken right now doesn't help in figuring out the module loading issue I'm experiencing | 09:34 | |
moritz | leont: there's a RAKUDO_MODULE_DEBUG env variable that you can set to a true value; maybe that'll help? | 09:35 | |
leont | gdb tells me the hang is in the readline implementation as used by MVM_run_file, that doesn't make sense to me | 09:36 | |
09:36
n0tjack joined
09:37
aigan joined
|
|||
leont | jnthn: the Proc::Async based part of my code now dies with «Unhandled exception in code scheduled on thread 6 Can only perform big integer operations on concrete objects" | 09:40 | |
even --ll-exception doesn't give any more information than that | 09:41 | ||
09:41
n0tjack left
|
|||
jnthn | RabidGravy: What would you expect that to do? The emit will bind to the react. | 09:43 | |
Which doesn't support emitting | 09:44 | ||
Why do you need the react in there anyway? :) | |||
RabidGravy | yeah, that's what I saw | ||
jnthn | If you want to emit "something" every second you just supply { whenever Supply.interval(1) { emit "something" } } | ||
jnthn should WTFM :) | |||
RabidGravy | I ended up doing something familiar | 09:45 | |
er similar | |||
(I actually didn't realise you could do a whenever there :) | 09:46 | ||
jnthn | Search for whenever in src/core/Supply.pm for more exampls | 09:47 | |
09:48
rindolf joined
|
|||
leont | Not sure if my issue is CURLI related to IO related. I used to think the former, but gdb is confusing me :-s | 09:48 | |
Another issue, this code just broke: | 09:49 | ||
$package.HOW.add_method: $package, $method, method () { return self.and($rule); }; | |||
Anyone got a clue what changed? | 09:50 | ||
I'm getting a «Cannot invoke this object» error | 09:51 | ||
RabidGravy | I actually did "Supply.on-demand( -> $p { Supply.interval(1).tap({ $p.emit(DateTime.now); }); })" because of not realising the whenever could be like that | ||
09:52
donaldh joined
|
|||
jnthn | eww | 09:52 | |
09:52
zakharyas left
|
|||
jnthn | Supply.interval(1).map({ DateTime.now }) | 09:52 | |
llfourn | m: class Foo {}; Foo.^add_method('bar',anon method { 'win'.say }); Foo.bar; | 09:53 | |
camelia | rakudo-moar d6f783: OUTPUT«win» | ||
llfourn | leont: seems to work? | ||
09:53
yeahnoob left
|
|||
moritz | you should .^compose after adding a method | 09:54 | |
jnthn | You ...yes :) | ||
leont | Ah, I see | ||
llfourn | oh ok thanks :) | ||
moritz | otherwise the method caches are not updated | ||
leont | compose on what exactly? | 09:55 | |
llfourn | won't it cache after the fallback? | ||
jnthn | No | 09:56 | |
It'll just invalidate and then slow-path all the lookups | |||
leont | Adding $package.^compose makes it segfault :-o | ||
llfourn | oh that's bad lol :) | ||
m: class Foo {}; Foo.^add_method('bar',anon method { 'win'.say }); Foo.^compose; Foo.bar; | |||
camelia | rakudo-moar d6f783: OUTPUT«win» | ||
jnthn | Also, (a) use augment, and (b) do it at BEGIN time (or (c) add "no precompilation" :)) | 09:57 | |
moritz | leont: ... it shouldn't :-) | ||
jnthn | SEGB is...urgh | ||
RabidGravy | jnthn, but I don't want it to start until the resulting supply is tapped | ||
jnthn | RabidGravy: It won't. | ||
leont | I'm adding more than one method, in case that's relevant | ||
And I'm doing it in a BEGIN block | |||
jnthn | RabidGravy: Supply.interval is already an on-demand supply | ||
moritz | leont: you only have to compose at the end, and before you start calling methods | ||
09:57
empT joined
|
|||
jnthn | RabidGravy: Mapping it stil leaves you with an on demand supply | 09:57 | |
llfourn | jnthn: good to know thanks. | ||
RabidGravy | surely the map is a "tap" | ||
jnthn | No | 09:58 | |
Just like .map on a list isn't eager | |||
The only things that are a tap are .tap and .act (and whenever) | |||
.map just chains another step onto the supply pipeline | |||
You can build the pipeline with a load of operations | 09:59 | ||
Nothing starts untill you .tap | |||
And you get a fresh pipeline per tapping | |||
teaching, bbl :) | |||
llfourn | is there a way to add a role with augment? | ||
jnthn | augment class Foo does Bar { } | ||
really & :) | |||
llfourn | ah nice | ||
RabidGravy | gotcha, simplifies stuff immensely. Have a totally false memory of what the code did | 10:00 | |
10:01
leont left,
zakharyas joined
|
|||
mrf_ | jnthn: nine: dont worry about github.com/rakudo/rakudo/pull/609. Its clearly nonsense. Annoyingly I can't replicate the issue that this seemed to fix now so ... | 10:01 | |
10:02
leont joined,
empT left
10:03
n0xff left
10:05
leont_ joined
|
|||
leont_ | internet-connection-- | 10:05 | |
dalek | ast: fab0120 | lizmat++ | S32-str/samemark.t: Fix samemark test In light of the comment TimToady made in commit message fc4bf6f9d43cf3a82 : I decided that repeating novelty combiners will likely be the more common use of the construct than trying to tweak words from natural languages. And the fact the test was written *before* that, I assumed the combiner was to be repeated, rather than ignored for subsequent characters. |
10:06 | |
10:06
leont left
|
|||
leont_ | Interesting. I got the hang now without loading a second module, but when running under gdb… | ||
paste.scsys.co.uk/502339 | 10:08 | ||
10:08
woolfy joined
10:09
salva left
|
|||
leont_ | It's epolling when I think it should only read the file. Not that I can tell what it's epoll()ing on for real. | 10:09 | |
10:12
woolfy left,
bjz left
|
|||
leont_ | I remember something about synchronous IO changing recently, I'm guessing it to be in that corner | 10:14 | |
10:14
salva joined
|
|||
leont_ | Interesting. «$?CLASS.^compose» doesn't segfault, while «$package.^compose» does | 10:18 | |
10:18
s_kilk joined
|
|||
leont_ | With $package = $?CLASS being just a few lines above | 10:18 | |
10:18
espadrine joined
|
|||
leont_ | But even without the segfault, the compose doesn't fix the exception that I'm seeing | 10:19 | |
moritz | leont_: try $package := $?CLASS | ||
leont_: otherwise you're re-composing class Scalar, maybe | 10:20 | ||
leont_ | All giving that same error | 10:21 | |
Getting rid of the BEGIN block seems to do the trick | |||
Still, it should work, and not give segfaults | 10:24 | ||
To me, when dynamically generating half of my class a begin block is a sensible place. No idea how it interacts with precompilation though, would guess the issue to be there. | 10:25 | ||
10:27
bjz joined
|
|||
dalek | ast: ed16d38 | lizmat++ | S17-supply/ (3 files): Make sure we die for the right reason |
10:27 | |
10:29
s_kilk left
|
|||
dalek | ast: a56f0f4 | lizmat++ | S17-supply/interval.t: Give some more time to fail to prevent flapping |
10:32 | |
10:33
brrrt joined
|
|||
donaldh | psch: did you have a fix for nqp::mkdir on jvm ? | 10:33 | |
donaldh is not sure what timezones psch hangs out in | |||
10:37
n0tjack joined
10:39
empT joined
10:42
n0tjack left
10:43
empT left
10:44
leont_ left
10:47
dayangkun left
|
|||
dalek | ast: a04df5f | lizmat++ | S17-supply/watch-path.t: We can no longer .done a Supply We can only .done a Supplier. But the Supplier is hidden in IO::Notification.watch-path. So I can only hope that closing the final tap on the Supply given by IO::Notification.watch-path *will* actually .done the Supplier. This unbreaks this test-file on OS X. Other OS's are currently *not* being tested: tests for other platforms welcome! |
10:51 | |
lizmat | m: say END 42 # feels to me this should fail, AKA the default value of an END block before it is run, should be a Failure | 10:53 | |
camelia | rakudo-moar d6f783: OUTPUT«Nil» | ||
donaldh | lizmat++ | 10:54 | |
donaldh was going to start looking at that | |||
10:57
empT joined
11:02
empT left,
aindilis left
11:03
km3 left,
aindilis joined
|
|||
grondilu tries to bootstrap panda | 11:13 | ||
dalek | kudo/nom: 09a3e3d | lizmat++ | src/core/Supply.pm: Supply.on-demand/from-list must have a Supply:U |
11:15 | |
11:19
snarkyboojum joined
|
|||
grondilu | oh it worked this time. Good job guys. | 11:20 | |
RabidGravy | so is it safe to rakudobrew my laptop now, so I can start testing everything? | 11:21 | |
grondilu | oh bootstrap worked, but exectution still fails: | ||
===SORRY!=== | |||
Could not find Shell::Command:ver<True>:auth<True>:api<True> in: | |||
11:22
nadim joined,
_nadim left
11:25
pecastro_ joined
|
|||
mrf_ | grondilu: I was having that same issue yesterday on a fresh panda install. | 11:28 | |
arnsholt | nine: I've got a patch that's almost, but not quite working. Could you have a look at it if I push it to a branch? | ||
grondilu copies Shell::Command, File::Find and JSON::Fast manually in the lib directory and retries running panda | 11:29 | ||
11:29
abraxxa left
11:30
_mg_ left
|
|||
brrrt | go is really the anti-perl6: www.thedotpost.com/2015/11/rob-pike...omplicated | 11:30 | |
in an interesting way, i think | |||
or maybe the anti-C# | 11:31 | ||
11:32
pecastro_ left
11:34
abraxxa joined,
RabidGravy left
|
|||
lizmat | afk until late afternoon& | 11:36 | |
donaldh | ugh, rakudo not building on jvm: Error while constructing error object:Could not locate compile-time value for symbol X::Undeclared::Symbols | 11:37 | |
11:38
n0tjack joined
|
|||
llfourn | brrrt: watching now. Interesting so far. Thanks. | 11:41 | |
11:41
Skarsnik joined
11:43
n0tjack left
|
|||
brrrt | yw :-) | 11:43 | |
Juerd | Where is S32? | 11:45 | |
Oh, it's a draft. Found it just after asking. | 11:46 | ||
Still wondering in which repo it is though :) | |||
llfourn | brrrt: so far I feel where I disagree with him is that features make code more complicated. For example the traits and MOP features of p6 made code more simple IMO. | 11:48 | |
maybe he means syntactical features | |||
daxim | I strain to read perl6advent.wordpress.com/ and it's the fault of the rule .site { width: 744px; } | ||
llfourn | but being against map seems a bit odd. How is map more complicated or even slower than for at a low level. | ||
11:50
pyrimidi_ joined
|
|||
brrrt | map implies a dynamic function call, unless you compile-time transform it | 11:50 | |
which is slower than a for loop | |||
llfourn | mmm yes you are right normally map is like that | 11:51 | |
brrrt | the thing with go is, i think, that i've seen utterly lousy programmers produce utterly lousy code, *and it was still readable and workable* | ||
11:52
pyrimidine left
|
|||
llfourn | I never used go so I don't know. Everyone who does seems to like it. I'm glad p6 stole some of its concurrecny dieas. | 11:52 | |
11:52
xfix left
|
|||
llfourn | ideas* | 11:53 | |
brrrt | i could still work with code written by people, with whom i would have vicious code style discussions otherwise | ||
because they think very differently from me, and in a language like perl6, that works out to very different code | |||
timotimo | donaldh: does it show you what symbols were undeclared? it should try to stringify the list for you | ||
yoleaux | 02:30Z <dj_goku> timotimo: is there a reason against using say git submodule vs copy/pasting code into the panda repo? | ||
brrrt | in go, it works out to mostly-the-same | ||
timotimo | wow, brrt is extra-r today | 11:54 | |
llfourn | i see. | ||
brrrt | yes, i overslept timotimo :-) | ||
so that explains, i guess | |||
can i go on record and state that illumos-on-qemu is a total and huge pain, and no fun at all | 11:55 | ||
moritz | brrrt: you have been officially heard :-) | 11:59 | |
12:01
nige1 joined
12:02
_mg_ joined
|
|||
donaldh | timotimo: Error while compiling, type X::Undeclared::Symbols | 12:02 | |
type_suggestion: (unstringifiable object) | |||
post_types: (unstringifiable object) | |||
unk_routines: (unstringifiable object) | |||
unk_types: (unstringifiable object) | |||
routine_suggestion: (unstringifiable object) | |||
12:03
bpmedley joined
|
|||
nige1 | currently preparing a Perl 6 talk for a general techie audience - and need a little help with this Rosetta Code example: rosettacode.org/wiki/Inverted_index#Perl_6 | 12:04 | |
I'm unsure about the relationship of the cross-product meta operator in line 3 | 12:05 | ||
to populating "%norm" - any ideas? | |||
moritz | m: say ('file' X=> <one two three words>).perl | 12:06 | |
camelia | rakudo-moar 09a3e3: OUTPUT«(:file("one"), :file("two"), :file("three"), :file("words")).Seq» | ||
brrrt | thanks moritz :-) | ||
moritz | nige1: that's bascially what it does | ||
nige1 | hmm - ok - maybe I need to update my version of Rakudo | 12:07 | |
timotimo | donaldh: oh god damn :( | ||
donaldh | yup | ||
moritz | nige1: it's a cross-product with a one-element list, so it's equivalent to ($file xx *) Z=> @list | ||
donaldh | currently digging into the NQP_VERBOSE_EXCEPTIONS stack trace | ||
nige1 | thanks Moritz | 12:08 | |
moritz++ | |||
:-) | |||
moritz | nige1: you're welcome | 12:10 | |
Juerd | π is implemented in rakudo, but not in S32. Which one is off? | 12:12 | |
(S32 only describes pi, not π) | 12:13 | ||
moritz | Juerd: I think S32 should be updated | 12:14 | |
12:15
kaare_ joined
|
|||
Juerd | I agree and will add tau while I'm at it | 12:15 | |
Oh, and I don't understand how 'pi' is available in the language, if it's declared as "my constant pi" in Num | 12:16 | ||
12:17
ely-se_ left
|
|||
timotimo | the core setting is semantically an outer scope to your program | 12:18 | |
that's how things that are declared "my" show up in user code | |||
12:19
empT joined,
xfix joined
|
|||
arnsholt | The short answer is "dark and inscrutable magics" | 12:19 | |
timotimo | haha, it's not that terrible :) | 12:20 | |
arnsholt | The longer answer is that the setting is compiled in a special way such that there's basically what amounts to a hole at the end | ||
Then, when you compile normal code, your code is plonked into the hole at the end of the setting, and the whole aggregated shebang is what is *actually* run | |||
Thus making the setting an outer lexical scope of user code, as timotimo++ explained | 12:21 | ||
timotimo | yeah, we have a thing called {YOU_ARE_HERE} | ||
12:23
empT left
|
|||
llfourn | is there a way to turn precompilation off? | 12:28 | |
timotimo | mount your filesystem read-only | ||
llfourn | timotimo: thanks | 12:29 | |
12:29
zakharyas left
|
|||
timotimo | sorry ;) | 12:30 | |
haven't dug into the code at all yet | |||
donaldh | timotimo: ah, Uni getting used in Str.pm on JVM. | ||
TimToady's commits from last night | 12:33 | ||
Woodi | arnsholt: can it be reused for fast interpreter startup ? :) something like (historical) sticky-bit or proces cloning ? | 12:34 | |
timotimo | donaldh: good catch; could be made to work with #?rakudo.jvm or whatever the syntax is | 12:35 | |
donaldh is not sure how rakudo jvm works without Uni. | 12:36 | ||
12:36
pmurias joined
|
|||
donaldh | *worked | 12:36 | |
timotimo | well, it doesn't yet have the NFG stuff at all, which is what Uni came with IIRC | 12:37 | |
of course the JVM has NFD NFC NKFC and NKFD algorithm implemented *somewhere* ... right? | |||
donaldh | yep, just surprised that everything else existed without ever referencing Uni. | ||
timotimo | ah, right | ||
donaldh | JVM just uses java.lang.String | 12:38 | |
doesn't have nqp::*codes | 12:39 | ||
12:39
n0tjack joined
|
|||
arnsholt | Woodi: I have no idea. Maybe? | 12:42 | |
Juerd | timotimo: Wow, core being a lexical outer scope is a weird concept :) | ||
timotimo | Juerd: yeah, it's kind of like the "hollow earth" thing :) | ||
donaldh | Juerd: also known as prelude in other languages. | ||
arnsholt | The implementation is a bit odd, but it's pretty natural when you think about it | 12:43 | |
Juerd | At the same time, not so weird at all. I've been using eval "my \$foo = ...; sub { ... }" in Perl 5 all the time... :) | ||
12:43
n0tjack left
|
|||
pmurias | A prelude in other languages works almost the same way | 12:44 | |
brrrt | i would assume that we just chain-point the compiled frame up to the setting? that would seem to be my natural guess... | ||
12:44
_mg_ left
|
|||
brrrt | on the other hand, i'm not sure when the setting environment is then loaded into the compiler | 12:44 | |
timotimo | Woodi: for startup time improvements we already implement "lazy deserialization", which is definitely a step in the right direction. | 12:47 | |
Woodi | timotimo: but everything is loaded from disk every time ? | ||
nige1 | hmm - I've updated to latest rakudo and entry is no worky -> rosettacode.org/wiki/Inverted_index#Perl_6 | ||
timotimo | if i remember correctly, the .moarvm file is mmapped | 12:48 | |
so multiple instances of moar will share it. i think. | |||
nige1 | getting a "trailing item in Hash.push" error | ||
s/error/warning/ | |||
Woodi | timotimo: no one blogged it ! ;) | 12:49 | |
timotimo | hehe. | ||
12:51
lucasb joined
12:52
snarkyboojum left,
grc joined
12:53
grc left
|
|||
llfourn | so I'm trying to debug some precomp problems with some code. I put BEGIN { note 'loading Foo' }; as the first line in many files. I'm seeing "loading Foo" more than once. | 12:56 | |
that's a bug right? | |||
rakudo should only try and compile each file once | 12:57 | ||
it doesn't seem to do an infinite loop load but I eventually see something like: Constraint type check failed for parameter '$precomp-id' | |||
or some other obtuse error | 12:58 | ||
12:59
empT joined
|
|||
timotimo will be AFK (well, probably just away from devices i could develop with) for ~3 hours | 13:00 | ||
Juerd | Heh, so I thought "might as well add tau while I'm there", when updating S32 to include the unicode constant for pi... | 13:02 | |
But with spec, spectests, and implementation in different repositories... the simple change winds up being 3 pull requests. Kind of funny :) | 13:03 | ||
13:03
empT left
|
|||
Zoffix | .botsnack | 13:08 | |
yoleaux | :D | ||
08:04Z <nine> Zoffix: probably too late but for future reference: I syntax highlight my presentation slides by opening the file in vim which is running in KDE's konsole. Then I use konsole's "Save output as" to save it to an HTML file. That I copy&paste into LibreOffice. | |||
synbot6 | om nom nom | ||
MadcapJake | Zoffix: I forgot to use .tell but there's also this: github.com/atom/highlights which would work with the grammar json from language-perl6fe | 13:09 | |
Zoffix | Thanks, I'll play around with it later. | 13:10 | |
lucasb | Juerd: I don't understand much maths. Is tau equals 2*pi? | ||
MadcapJake | lucasb: yeah | ||
Zoffix | There's a tau module in the ecosystem\ | ||
MadcapJake | lucasb: it's a much easier constant to work with because so often you have to use 2*pi anyways | ||
ilmari | www.youtube.com/watch?v=jG7vhMMXagQ | ||
lucasb | ok, thanks :) | 13:11 | |
Zoffix | Tau is heresy! :) Who doesn't like pie? :P | ||
moritz | pi vs. tau, the ultimate bikeshedding war | ||
Zoffix | hehe | ||
MadcapJake | lol | ||
brrrt | .tell nine why not pygmentize or Text::VimColour? | ||
yoleaux | brrrt: I'll pass your message to nine. | ||
MadcapJake | does pygments have perl6 support? | 13:12 | |
brrrt | hmm, no, i don't think it does | 13:13 | |
nadim | Hi given ((a 1) (b 2)) , I want to "dereference" the outer parenthesis only. .flat gives me a 1 b 2 but I want (a 1) (b 2). how do I do that and wgere is the documenatt | ||
documentation so I learn instead for fooling around | |||
Zoffix | MadcapJake, brrrt it does, but it's not that good | ||
13:14
ely-se joined
|
|||
Zoffix | nadim, where did you get ((a 1) (b 2)) from? | 13:14 | |
MadcapJake | yeah it's not listed, I've written a Pygments lexer before, I'll see if I can get my language-perl6fe converted over (there regex engine is a bit different though) | ||
Zoffix | m: say |((a 1), (b 2)) | ||
camelia | rakudo-moar 09a3e3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tZgCjFxLgkUndeclared routines: a used at line 1 b used at line 1» | ||
nadim | Zoffix: map | ||
Zoffix | m: say |(('a', 1), ('b', 2)) | ||
camelia | rakudo-moar 09a3e3: OUTPUT«(a 1)(b 2)» | ||
Zoffix | nadim, mapping what? | ||
nadim | ok, I tought | and flat where synnyms | ||
Zoffix | m: say flat (('a', 1), ('b', 2)) | 13:15 | |
camelia | rakudo-moar 09a3e3: OUTPUT«(a 1 b 2)» | ||
nadim | a list and returning 2 elements | ||
Zoffix | Oh, guess not. | ||
I think | is called a "slip" | |||
Juerd | moritz: tau/pi isn't bikeshedding if you provide both: timtowtdi! | ||
nadim | OK, thanks, I'll slip a bit then | ||
13:17
n0tjack joined
|
|||
MadcapJake | nadim: | is flatten inside of a signature (argument list) but outside of that it's a slip (which is kinda like flatten) doc.perl6.org/type/Slip | 13:19 | |
Zoffix | Does anyone know what time the advent calendar runs on? If I schedule for 00:00, what timezone is it? | 13:21 | |
MadcapJake | Zoffix: heh, I couldn't figure that out either, I put 0:00 for mine though. | ||
13:22
n0tjack left,
YP-QMUL-W left
|
|||
brrrt | MadcapJake: i and many others would be much obliged :-) | 13:22 | |
gfldex | Zoffix: in the post list it says: in 11 hours scheduled | 13:23 | |
moritz | Zoffix: I think it's UTC or GMT+1 | ||
MadcapJake | brrrt: ok I'll give it a go then! : | ||
Zoffix | Thanks\ | 13:24 | |
brrrt | thanks :-) | 13:25 | |
13:25
Actualeyes joined
13:26
YP-QMUL-W joined,
n0tjack joined
13:27
pwd_ joined
|
|||
MadcapJake | Ugh I've committed a grammar sin in my advent post: s/it's/its/ | 13:28 | |
13:28
_mg_ joined
|
|||
Zoffix sends MadcapJake to grammar-hell | 13:29 | ||
MadcapJake | noooooo! | ||
brrrt brings MadcapJake back to grammar-purgatory | 13:31 | ||
Skarsnik | English grammar is a hell already | ||
MadcapJake | lol | ||
brrrt | as long as you confess your sins, you will be redeemed | ||
MadcapJake | I confess and I have done my penance I swear! | 13:32 | |
Zoffix | James, while John had had "had," had had "had had"; "had had" had had a better effect on the teacher. | ||
en.wikipedia.org/wiki/James_while_...he_teacher | |||
xfix | "This Seq has already been iterated, and its values consumed" | ||
What does that even mean? I'm trying to do scanl basing on zip sum. | 13:33 | ||
Zoffix shakes head at the ginormous Wikipedia ad that says they'll never run ads | |||
xfix | And the simple example works: [\Z+] [(1, 2), (3, 4), (3, 2), (5, 4)] | ||
However, [\Z+] '^v^v^v^v^v'.comb.map:{{'>' => (0, 1), '<' => (0, -1), '^' => (1, 0), 'v' => (-1, 0)}{$_}} doesn't. | |||
brrrt | it's not an ad if it's begging Zoffix | ||
moritz | MadcapJake: you can still change the post | ||
Zoffix | heh | ||
xfix | (I'm trying to do adventofcode.com/day/3, by the way) | ||
brrrt | :-P | ||
Zoffix | That ad is larger than my arm! | ||
MadcapJake | moritz: I did :) | 13:34 | |
Zoffix: I closed that ad a few days ago and it no longer displays for me. | |||
Zoffix | I closed it a few days ago and it still displays for me | 13:35 | |
You probably never restarted your browser :P | |||
13:35
vytas left
|
|||
MadcapJake | weird, no i do! | 13:35 | |
i open my browser every morning, but it saves my session, so maybe it keeps the cookie or something | 13:36 | ||
13:36
zakharyas joined
|
|||
xfix | perl6: say [\Z+] '^v^v^v^v^v'.comb.map:{{'>' => (0, 1), '<' => (0, -1), '^' => (1, 0), 'v' => (-1, 0)}{$_}} | 13:37 | |
Skarsnik | xfix, I don't get this, there is no time limit? it's infinite? x) | ||
camelia | rakudo-moar 09a3e3: OUTPUT«This Seq has already been iterated, and its values consumed(you might solve this by addding .cache on usages of the Seq, orby assigning the Seq into an array) in block <unit> at /tmp/tmpfile:1» | ||
..rakudo-jvm e3c591: OUTPUT«This Seq has already been iterated, and its values consumed in block <unit> at /tmp/tmpfile:1» | |||
xfix | Hm, I get a hint about .cache... | ||
Zoffix | Hm. Weird. Yesterday I had a different editor when I was writing my article. It wasn't a narrow landing strip and I could switch to raw HTML without having to scroll up | ||
mrf_ | Skarsnik: If you sign up you get a specific input. | 13:38 | |
Skarsnik | Oh make sense, thx | ||
Zoffix | Ah, firgured it out. You need to go to "wp admin" | ||
mrf_ | Skarsnik: or santa gets drunk on milk and cookies at some random point | 13:39 | |
13:40
vytas joined,
n0tjack left
13:41
n0tjack joined
|
|||
Zoffix | "Saw 1 occurrence of deprecated code. Method chars-supply (from IO::Socket::Async) seen at: spy-bot.pl6, line 9 Please use Supply instead." | 13:42 | |
huh? | |||
moritz | Zoffix: iirc you now pass the :bin or :binary or whatever to .new() | 13:43 | |
Zoffix | I don't have new: gist.github.com/zoffixznet/b2a09bc9e3a33c91a865 | ||
moritz | ah right | ||
.Supply() instead of .chars-supply | 13:44 | ||
and .Supply(:bin) instead of .bytes-supply | |||
Zoffix | ah, k. moritz++ | ||
Juerd | How do you alias a method? &connect := &new isn't allowed... | 13:49 | |
moritz | Juerd: I'm not sure we have something pretty for it, but you can always use the MOP | 13:52 | |
Juerd | If it's not pretty, I'll do without the alias for now... | ||
moritz | Juerd: ::?CLASS.^add_method('alias-name', ::?CLASS.^find_method('old-name')) | ||
brrrt | that's pretty much as evil, as it should be | 13:53 | |
gfldex | m: class A {method m(){}}; my $m1 := A.^methods[0] | ||
camelia | ( no output ) | ||
Zoffix | /j #evil | 13:57 | |
Zoffix blushes | |||
13:57
zakharyas left
|
|||
Zoffix | To give context: I'm writing a spy-themed bot... | 13:57 | |
:) | |||
13:58
Ven joined
|
|||
Woodi | Zoffix: yes, Wikipedia is amazing. by now every goverment should sponsor it... | 13:59 | |
13:59
empT joined
|
|||
Ven | o/, #perl6. | 13:59 | |
Zoffix | \o | ||
Woodi | hallo Ven :) | ||
nadim | What's the status of local variables? and is it possible to localize a hash entry? | 14:00 | |
Skarsnik | moritz, should I merge my PR for DBIish or should I wait for all the curli stuff get fixed so DBIish build again? x) | ||
DrForr | o/' They call it Spy Hard / You're watching Spy Hard / It's the theme to Spy Haaaaaaaaaard o/' | ||
moritz | Skarsnik: please wait 'til it's fixed | ||
jnthn | m: my %h = foo => 42; { temp %h<foo> = 69; say %h<foo> }; say %h<foo> | 14:02 | |
camelia | rakudo-moar 09a3e3: OUTPUT«6942» | ||
jnthn | nadim: ^^ | ||
14:02
cdg joined
|
|||
Zoffix | Why isn't this matching? | 14:02 | |
m: my $channel = '#perl6-recon'; say so ':Zoffix!~Zoffix@unaffiliated/zoffix PRIVMSG #perl6-recon :Test' ~~ /^':' <-[:]>+ 'PRIVSMG ' $channel ' :' (.+)/ | |||
camelia | rakudo-moar 09a3e3: OUTPUT«False» | ||
moritz | m: my $channel = '#perl6-recon'; say so ':Zoffix!~Zoffix@unaffiliated/zoffix PRIVMSG #perl6-recon :Test' ~~ /^':' <-[:]>+ 'PRIVSMG '/ | 14:04 | |
camelia | rakudo-moar 09a3e3: OUTPUT«False» | ||
moritz | m: my $channel = '#perl6-recon'; say so ':Zoffix!~Zoffix@unaffiliated/zoffix PRIVMSG #perl6-recon :Test' ~~ /^':' <-[:]>+ 'PRIVSMG'/ | ||
camelia | rakudo-moar 09a3e3: OUTPUT«False» | ||
moritz | m: my $channel = '#perl6-recon'; say so ':Zoffix!~Zoffix@unaffiliated/zoffix PRIVMSG #perl6-recon :Test' ~~ /^':' <-[:]>+ / | ||
camelia | rakudo-moar 09a3e3: OUTPUT«True» | ||
Juerd | The whole new/BUILD thing is incredibly frustrating. I don't understand what goes where, I keep running into errors that I can't explain and can only fix by trial and error, and it really feels that Perl 6 here makes the easy things very hard, and sometimes even impossible. | ||
14:04
ir2ivps4__ left
|
|||
Skarsnik | ' PRIVMSG' maybe? | 14:04 | |
jnthn | Becuse you typo'd PRIVMSG and PRIVSMG in the regex | ||
Zoffix | I don't get it | ||
-_- | |||
jnthn++ | |||
And that's why I don't work at a nuclear reactor :P | 14:05 | ||
Juerd | I have thus far not succesfully been able to write any custom constructor or even something that properly initializes my objects. | ||
jnthn | Juerd: You only write a new if you want to change the interface for construction to be something other than taking named params | ||
You write a submethod BUILD to initialize attributes | |||
nadim | jnthn: great, thank you. Are you still hanging around in Lund? | ||
14:05
empT left
|
|||
jnthn | nadim: No, I live in Prague nowadays | 14:06 | |
Juerd | I had a submethod BUILD, and I wanted to add a call to .connect in there, so I did. Result: everything broke | ||
Skarsnik | Zoffix, why not simply split on blank for the first 2? | ||
nadim | Lucky you, you are not missing on the great weather ;) | ||
Juerd | So, okay, I'll write my own 'new' method and see what happens... I get error messages about passing 1 parameter when more were expected. No idea where this 1 parameter is, because everything passes 2 or 3. | ||
jnthn | Well, I'm up in Skellefteaa teaching this week, so I'm moslty missing out on the great sun ;) | ||
The invocant counts as a parameter. | 14:07 | ||
Juerd | So I hard-code the values, for now, and move on. Now, it turns out that my custom 'new' can't bless, because $!foo no longer works in BUILD's signature | ||
Zoffix | Skarsnik, first 2 what? | ||
jnthn | Huh? | ||
moritz wouldn't even know how to pronounce Skellefteaa, much less how to get there :-) | |||
Juerd | jnthn: I'm passing 2 or 3, depending on whether you count the invocant. But it's complaining I'm passing only 1 thing. I have no code at that point that passes 1 thing. | ||
I'm not specifically crying for help, I'm hoping that there will be a simpler way of doing the easy things. | 14:08 | ||
Skarsnik | Zoffix, If i remember right IRC stuff is separated with blank until you get the command | ||
jnthn | I don't tend to find it problematic, I guess it's just getting the right mental model of how construction works | ||
Juerd | jnthn: I find having my defaults in 3 different places highly problematic. | 14:09 | |
jnthn thought there was a doc that explained it fairly well somewhere | |||
Juerd | Some defaults are in "has", some are in "BUILD"'s signature, and some I have to put in BUILD's body. | ||
jnthn | Then...put them all in one place? :) | ||
Juerd | The only place where they can all be, is in BUILD, but not in its signature | ||
jnthn | What keeps you from putting them in the signature? | 14:10 | |
Skarsnik | build override the one in has if I remember correctly, there was a ticked about it? (or has it been fixed?) | ||
jnthn | Skarsnik: If you touch the thing in BUILD then yeah, you initlaized it, so the one in has will be ignored | ||
Juerd | jnthn: Some are private. | ||
Mostly I don't really understand why you can put defaults in 'has', but not if you use the same thing in BUILD | 14:11 | ||
14:11
YP-QMUL-W left
|
|||
jnthn | m: class C { has $!a; submethod BUILD(:$!a) { }; method m { say $!a } }; C.new(a => 42).m | 14:11 | |
camelia | rakudo-moar 09a3e3: OUTPUT«42» | ||
jnthn | m: class C { has $!a = 3; submethod BUILD(:$!a) { }; method m { say $!a } }; C.new(a => 42).m | ||
camelia | rakudo-moar 09a3e3: OUTPUT«42» | ||
jnthn | m: class C { has $!a = 3; submethod BUILD(:$!a) { }; method m { say $!a } }; C.new().m | ||
camelia | rakudo-moar 09a3e3: OUTPUT«(Any)» | ||
jnthn | Like that? | 14:12 | |
m: class C { has $!a; submethod BUILD(:$!a = 3) { }; method m { say $!a } }; C.new().m | |||
camelia | rakudo-moar 09a3e3: OUTPUT«3» | ||
jnthn | m: class C { has $!a; submethod BUILD(:$!a = 3) { }; method m { say $!a } }; C.new(a => 42).m | ||
camelia | rakudo-moar 09a3e3: OUTPUT«42» | ||
jnthn | Can just move the default to the BUILD sig, though. | ||
Juerd | Yes, like that | ||
14:13
Ven left
|
|||
Juerd | That the ' = 3' is just ignored without warning makes it seem like a somewhat useless feature. | 14:13 | |
jnthn | How is it ignored? | ||
It was used | |||
Juerd | Same for objects... has $!buf = Buf.new doesn't really work | ||
15:11 < jnthn> m: class C { has $!a = 3; submethod BUILD(:$!a) { }; method m { say $!a } }; C.new().m | |||
15:11 < camelia> rakudo-moar 09a3e3: OUTPUT«(Any)» | |||
jnthn | Yes, I said, you need to put it in the signature in that case. | ||
Juerd | Yes, so the one in 'has' is ignored. | 14:14 | |
Putting it in the signature feels like a work-around, because now you have your defaults in 2 places | |||
jnthn | Why? | ||
Juerd | And that becomes 3 if you also have objects that you want to instantiate | ||
jnthn | If you put it in the signature, why would you also put it on the attribute too? | ||
Juerd | Defaults for attributes that aren't in BUILD => has | ||
Defaults for attributes that are in BUILD => BUILD's signature | 14:15 | ||
Defaults for attributes that are objects => BUILD's body | |||
jnthn doesn't get the last one at all...you can instantiate objects in a signature defualt or a has initializer | |||
Juerd | It's not about "if you have it at B, why also at A?", but about wanting everything at either A, B, or C, but not spread over different places of the code | ||
I'll try .new in 'has' again, but when I used it previously, it was just ignored and I was left with a type object. | 14:16 | ||
That works now | 14:17 | ||
Might have been a temporary bug, or some other mistake | |||
jnthn | I guess the other option we have is to introduce a discontinuity in the signature binder that doesn't bind the automatic default value to an attribute | ||
14:17
raiph joined
|
|||
jnthn | So :$!a would never assign to $!a if nothing is passed, which would be differnet to :$a which gets Any | 14:17 | |
That'd fix it, though maybe be differently surprisng. | 14:18 | ||
Juerd | If a default was already specified, I'd expect that to be carried over to other places, so after "has $!foo = 3;" I'd expect "submethod BUILD ($!foo)" to have an implicit "= 3" there, or at least warn me that the other one's now no longer useful. | ||
Having them in two places bothers me, but it's not really a big problem. What is, is that the other default is overwritten and it takes time to debug that. | 14:19 | ||
jnthn | Well, it's a lang design question by this point, so...for TimToady :) | ||
Juerd | As for connecting to the socket in the constructor, I can't get that working. | 14:20 | |
So I'll keep the .new, then .connect for now. | |||
Wanted to combine them because there's no good reason to have a non-connected object for something that represents a connection :) | |||
14:23
bpmedley left
|
|||
Juerd | TimToady: Can BUILD get either implicit defaults on instance attributes that are in the signature, or if not, a warning that has-defaults will be ignored/overwritten? See discussion ^ | 14:23 | |
14:24
sno left
|
|||
jnthn | teaching again & | 14:25 | |
Juerd | Have fun :) | ||
14:28
ir2ivps4 joined
14:30
ely-se left,
brrrt left
|
|||
Juerd | jnthn: Ah, found why the 'has' default wasn't useful for objects: they're created after my BUILD is run, so not available in BUILD yet. | 14:31 | |
sergot | is there any fast solution to get only odd/even-indexed elements in an array? | ||
14:32
abraxxa left
|
|||
sergot | I mean, like, every second element of an array | 14:32 | |
14:33
zengargoyle joined
|
|||
Juerd | sergot: @foo[0, 2 ... *] and @foo[1, 3 ... *] | 14:33 | |
llfourn | m: my @a = ^10; say @a[0,2 ... *] | 14:34 | |
camelia | rakudo-moar 09a3e3: OUTPUT«(0 2 4 6 8)» | ||
14:34
skids joined
|
|||
sergot | ooh, why I didn't think about this, thanks a lot Juerd++ ! | 14:34 | |
llfourn++ | |||
Juerd | Or, if you don't care about the order, hash(@foo).keys and hash(@foo).values ;) | 14:35 | |
14:35
iH2O joined
|
|||
donaldh | PR unbusts build on JVM github.com/rakudo/rakudo/pull/615 | 14:35 | |
14:37
n0tjack left,
xpen joined,
RabidGravy joined
|
|||
Juerd | jnthn: I just realised that having something that comes completely after object construction, so even after BUILD, would elegantly solve all problems I've been having, because by that time, all the attributes are available anyway. | 14:40 | |
jnthn: It wouldn't need any signature | |||
MadcapJake | is there a monochrome or svg version of camelia? | 14:41 | |
lucasb | .oO( fifty shades of camelia ) |
||
Juerd | en.wikipedia.org/wiki/File:Camelia.svg was the first hit in duckduckgo | 14:42 | |
With Inkscape you could easily turn that into a monochrome version | |||
MadcapJake | yeah, thanks Juerd++ | ||
iH2O | butterflies probably can see UV light like birds so make sure to include this tint even if you cant see it | 14:43 | |
Juerd | My printer is out of UV toner | ||
MadcapJake | lol, can monitors even do uv light?! :P | ||
Juerd | Not by design :P | 14:44 | |
But they may leak some UV :) | |||
iH2O | test your printout with a wood lamp 365nm | ||
on amazon.com | 14:45 | ||
MadcapJake | what we really need is to make glow-in-the-dark camelia stickers! That'd one-up every other programmer laptop sticker by a wide margin! | ||
mspo | those laptop stickers are more expensive to produce than you think | ||
Juerd | OOoh | 14:46 | |
I think for free, so yea. | |||
mspo | at least the last time I looked for european sticker printing | ||
iH2O | butterfly wing colors probably include UV thats what i mean | ||
for must butterflies | |||
you want to print something realistic | |||
MadcapJake | lol, i'm pretty sure camelia isn't really going for "realistic" :P but still uv stickers would be sweet B) | 14:47 | |
14:47
bpmedley joined
|
|||
iH2O | that will radiate "fluorescent colors" where there is UV | 14:47 | |
MadcapJake | mspo: www.stickermule.com/products/die-cut-stickers | ||
llfourn | m: my \x = 5; my @a = ^30; say @a[(^*).grep(not *%x)]; # get all the indexes that are multiples of x including 0 | 14:48 | |
camelia | rakudo-moar 09a3e3: OUTPUT«(0 5 10 15 20 25)» | ||
llfourn | sergot: pretty cool ^^ | 14:49 | |
though I suppose 0 ... would work as well | |||
retupmoca | .botsnack | 14:50 | |
yoleaux | 07:43Z <nine> retupmoca: excellent! | ||
:D | |||
synbot6 | om nom nom | ||
14:52
n0tjack joined
|
|||
nadim | is possible to type a single hash value? or does one have to create a derived hash class that does that? | 14:53 | |
sergot | llfourn: nice! :) | ||
ilmari | nadim: what do you mean by "type a single hash value"? | 14:54 | |
llfourn | sergot: it would make way more sense to use ... but if you every element except those that are multiples of 5 you can remove the not :) | ||
ilmari | you can assign to a hash from a list: my %hash = (key => 'value', otherkey => 'something'); | ||
llfourn | if you want* | ||
14:54
raiph left
|
|||
nadim | %h<specific_key> can only contain a specific type of value | 14:54 | |
sergot | llfourn++ : :)) thanks | ||
ilmari | oh, sorry, wrong chan | ||
Juerd | MadcapJake: juerd.nl/tmp/Camelia_mono.svg | 14:55 | |
ilmari | nadim: are arbittrary other keys allowed? | ||
nadim | that's what I'd like | 14:56 | |
MadcapJake | Juerd: thanks! was just about to bunker down and read some inkscape guides xD | ||
14:57
MadcapJake left
|
|||
nadim | something like %h = (Str title => 'gone with the wind', Int year => 1956); then changing the title would only allow strings as input. | 14:57 | |
|Tux| | m: my Bool $x = True; my IO $fh = open "test.xxx", $x ?? :r !! :w; | ||
camelia | rakudo-moar 09a3e3: OUTPUT«open is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting:1 in sub open at src/RESTRICTED.setting:9 in block <unit> at /tmp/YLjafs2sxc:1» | ||
14:57
MadcapJake joined
|
|||
|Tux| | Too many positionals passed; expected 1 argument but got 2 | 14:57 | |
14:58
crux left,
iH2O left
15:00
ely-se joined,
crux joined
|
|||
arnsholt | |Tux|: That probably passes a Pair as a positional argument | 15:01 | |
dalek | p: 16ab6ee | donaldh++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java: Handle null objects in nqp::istrue on JVM. |
||
arnsholt | I think what you want is open $path, :r(?$x), :w(!$x) | ||
|Tux| | my IO $fh = $pass | ||
?? open "test.csv", :w | |||
!! open "test.csv", :r; | |||
also fails :( | |||
both are butt-ugly | 15:02 | ||
arnsholt | What's the error for the second one? | ||
|Tux| | Failed to open file | ||
15:03
empT joined
|
|||
arnsholt | Well, that sounds like a problem of the file not being there, or some such | 15:03 | |
15:03
cygx joined
|
|||
cygx | |Tux|: you're looking for open "test.xxx", |($x ?? :r !! :w); | 15:03 | |
|Tux| | yes I am :) cygx++ | 15:04 | |
RabidGravy | cygx, been loving the argument pipe thing over the last few days | 15:06 | |
15:07
empT left
|
|||
dalek | rl6-roast-data: 920e967 | coke++ | / (9 files): today (automated commit) |
15:08 | |
15:09
raiph joined
|
|||
mrf_ | has the syntax for class FOO {also does X;} changed recently | 15:11 | |
TimToady | not that I know of | 15:12 | |
but X is an existing class, if you meant that literally | 15:13 | ||
15:13
n0tjack left
|
|||
mrf_ will need to find a better example class :) | 15:13 | ||
Ok. (X was just an example) | |||
TimToady | or example role, in this casse :) | ||
mrf_ | :D | ||
Juerd | MadcapJake: /me just ordered a Camelia rubber stamp :) | ||
MadcapJake | haha nice! | 15:14 | |
15:14
n0tjack joined
|
|||
Zoffix | :D\ | 15:15 | |
mrf_ | m: grammar Foo { also does Bar; }; | 15:16 | |
camelia | rakudo-moar 09a3e3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/t3WxQlmlfjInvalid typename 'Bar'. Did you mean 'Bag'?at /tmp/t3WxQlmlfj:1------> 3grammar Foo { also does Bar7⏏5; };» | ||
mrf_ | TimToady: ^ | ||
TimToady | well, Bar has to be defined first... | ||
MadcapJake is sad that fontastic.me turns camelia_mono.svg into gobbledygook :( | 15:17 | ||
15:17
xpen left
|
|||
mrf_ | TimToady: gist.github.com/ungrim97/2c8382b379802bfacb5a | 15:18 | |
cygx | so, Christmas is coming which means I need to pick up my own slack and document/test github.com/cygx/rakudo/commit/36f7...37a6061d15 | ||
should I augment S16-filehandles/open.t, S16-io/basic-open.t or create S32-io/open.t? | |||
mrf_ | This is from existing code that seems to work find the other week but now throws the above error. | ||
RabidGravy | there may be some load order changes which I haven't quite tracked down | 15:19 | |
[Coke] wonders if TimToady fixed RT #126771 while he was in there. | |||
m: $_="Bruce Gray"; my $x="Andrew Egeler"; m:i:m/$x/; | 15:20 | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Invalid string index: max 4, got 5 in block <unit> at /tmp/LxwxtPTFr1:1» | ||
Zoffix | :S | 15:21 | |
15:23
ssflying left
|
|||
[Coke] | TimToady: ^^ | 15:25 | |
mrf_ | m: role Bar {}; grammar Foo { also does Bar; }; | 15:26 | |
camelia | ( no output ) | ||
mrf_ | hmm | ||
ugexe | thats not quite the same though. use Bar::Module; will do the precomp dance and `does Bar` would then be using precomp code. could be related to the transistive dependency thing nine mentioned he was trying to fix | 15:28 | |
Zoffix | What's the proper way proceed to next iteration of react {} ? I've got react { whenever $sock.Supply { .say; next unless /foobar/ } }; but it seems to stop reacting unless I remove that "next unless" bit | 15:29 | |
15:30
ely-se left
|
|||
Juerd | MadcapJake: I can provide a simplified svg, maybe that works... | 15:31 | |
MadcapJake | well i had some look with icomoon actually | ||
jdv79 | Zoffix: its an event loop | ||
events make it move... | |||
15:32
_mg_ left
|
|||
mrf_ | if you do action 'resolve' that should resolve the ticket (which I believe is the same as closing it) | 15:32 | |
Zoffix | jdv79, how do I exit from whenever {} ? | ||
mrf_ | wrong window sorry | ||
jdv79 | its not a routine is it? | ||
oh maybe - llast | |||
ugexe | done() ? | 15:33 | |
jdv79 | *last | ||
jnthn wrote about this stuff somewhere | |||
ugexe | i guess that would leave the react wouldnt it | ||
jdv79 | whenever is like a for loop kinda - is that correct? | ||
Zoffix | Yes, done() leaves the react | ||
Same thing with `last` as with `next` | 15:34 | ||
jdv79 | irclog.perlgeek.de/perl6/2015-11-27#i_11611563 | 15:35 | |
may be slightly relevant | |||
15:36
n0tjack left
|
|||
Zoffix | none help though. I think if I call a sub in whenever {} and inside that sub do a return unless ...; then I'd get the effect I desire | 15:37 | |
Zoffix changes the next unless /foobar/; to if /foobar/ { ... } | |||
jdv79 | so simple | ||
Zoffix | An extra indent level though :P | 15:38 | |
nine | arnsholt: sure! | ||
yoleaux | 13:11Z <brrrt> nine: why not pygmentize or Text::VimColour? | ||
TimToady | m: say nqp::ordbaseat("foo", 42) | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Invalid string index: max 2, got 42 in block <unit> at /tmp/fpIB_25LEL:1» | ||
mspo | is there an option or something to get more readline-type features in the repl? | 15:40 | |
up arrow and whatnot | |||
TimToady | install Linenoise | ||
or rlwrap | |||
mrf_ | Is there a workaround for the Pod::Coverage isntall issue? | 15:42 | |
ilmari | Linenoise doesn't do unicode at all | ||
15:42
zakharyas joined
|
|||
Juerd | MadcapJake: juerd.nl/tmp/Camelia_mono_1path.svg | 15:42 | |
MadcapJake | oh sweet, thanks Juerd! | 15:43 | |
15:43
csd_ joined
15:44
empT joined
|
|||
stmuk_ | last Cannot unbox a type object | 15:46 | |
oops | |||
15:48
empT left
|
|||
lucasb | if you stare enough this big monochromatic camelia, it looks spooky, hypnotizing... | 15:49 | |
sjn | \o | ||
flussence | mrf_: no signs of life on that front :( | 15:50 | |
sjn | quick question; can I make a lazy grid (2-dimentional array) which handles negative indices? | ||
(a coordinate system with negative numbers) | |||
15:51
aigan left
|
|||
[Coke] | arrays don't have negative indices. | 15:51 | |
sjn | allright, is there another way to manage it then? | 15:52 | |
Zoffix | sjn, just use [*-$index] instead of [$index] ? :) | ||
[-$index] even | |||
zengargoyle | map positive to even, negative to odd indices? | ||
sjn | m: my @grid = [ -Inf .. Inf ][ -Inf .. Inf ]; @grid[*-12][29]; say @grid.perl; | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Cannot coerce Inf or NaN to an Int in block <unit> at /tmp/x4O2q6oABI:1Actually thrown at: in block <unit> at /tmp/x4O2q6oABI:1» | ||
[Coke] | Zoffix: that overlaps index values. | ||
lucasb | sjn: probably a hash would work | 15:53 | |
[Coke] | then if .elems is 10, 5 would be equal to *-4 or so. | ||
use a class. | |||
Zoffix | I assumed it was negative only or zero | ||
mrf_ | flussence: :( | ||
Zoffix | Like PDF stuff | ||
Zoffix goes back to writing... | |||
d^_^b | hi | ||
whoops | |||
mrf_ | flussence: can we not remove it as a dep from Linenoise. Surely its only used for testing? | 15:54 | |
Zoffix | [Coke], would you know how to exit from whenever {} block? | ||
15:54
raiph left
|
|||
dj_goku | hi | 15:54 | |
is there a .messages option to get messages? | 15:55 | ||
ugexe | /.+/ | 15:56 | |
moritz | dj_goku: you automatically get messages when you speak up | ||
zengargoyle | .botsnack | ||
yoleaux | :D | ||
synbot6 | om nom nom | ||
zengargoyle | plus warm fuzzies for feeding the bot. | 15:57 | |
15:57
hankache joined
|
|||
Zoffix | "feeding the bot"... You know you live in the future when... | 15:57 | |
MadcapJake | Juerd: are you on twitter? | 15:58 | |
15:58
empT joined
|
|||
hankache | Hello #perl6 | 15:58 | |
Zoffix | \o | 15:59 | |
cygx | m: my $a = 42; LEAVE say $a; END say $a | 16:00 | |
camelia | rakudo-moar 09a3e3: OUTPUT«42(Any)» | ||
cygx | ^is that by design? | ||
16:02
empT left
|
|||
lucasb | m: my $a = 42; END { say $a } | 16:03 | |
camelia | rakudo-moar 09a3e3: OUTPUT«42» | ||
16:04
nige1 left
|
|||
[Coke] | Zoffix: not without digging into docs. | 16:04 | |
Zoffix | k | 16:05 | |
MadcapJake | Camelia file icons: twitter.com/MadcapJake/status/6724...3682837505 | ||
Zoffix | MadcapJake, cool :) | 16:06 | |
Zoffix contemplates using camelia as the file extension :P | 16:07 | ||
MadcapJake | Juerd++ for the simplified mono svg | ||
jdv79 | is panda still broken? | ||
Zoffix | jdv79, was it? | ||
Works fine for me. | |||
flussence | mrf_: the problem is LibraryMake, which depends on Pod::Coverage directly and not as a test dep | ||
jdv79 | i installed a new rakudo, then "perl6 boostrap.pl" breaks | ||
that is still how to get panda setup? | 16:08 | ||
TimToady | [Coke]: I have a potential fix for #126771 that I'd like to ask jnthn++ about | ||
mrf_ | flussence: yeah just realised that. | ||
synbot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=126771 | ||
Zoffix | jdv79, I just ran it as ./bootstrap.pl | ||
jdv79 | same thing | ||
MadcapJake | not sure how easy this would be to box up and deliver to people but I could explain how to add it at least! | ||
nine | jdv79: yes, is your panda up to date, too? | ||
jdv79 | they are both (rakudo and panda) fromm about 15 mins ago | 16:09 | |
nine | jdv79: how exactly does it break? | ||
jdv79 | gist.github.com/anonymous/3ab8aad4f9f0e9e69550 | 16:10 | |
TimToady | cygx: that looks reasonable to me, since the $a has gone out of scope, and hasn't been captured in a closure as in what lucasb++ did | ||
retupmoca | flussence, mrf_: I just removed the Pod::Coverage dep from LibraryMake | 16:11 | |
mrf_ | \o/ | ||
flussence | thanks! | ||
retupmoca | (well, I think I did anyway - my panda bootstrap isn't working yet either) | ||
zengargoyle | does LibraryMake still use @*INC? | 16:12 | |
hankache | MadcapJake++ | 16:13 | |
jdv79 | panda is at 491cc83 and rakudo is at 1533b2f | ||
retupmoca | the only thing it would have used @*INC for was the find-bundled function call, which is deprecated anyway | ||
the "new thing" is Find::Bundled | |||
which...might be using @*INC :( | |||
(I know I merged at least one PR about the new module stuff, but I don't recall exactly what it was) | 16:14 | ||
zengargoyle | ah, maybe it's Find::Bundled (whatever module it is that replaced the thing built-in to LibraryMake) that bombed on me. | ||
16:14
nadim left,
uruwi left
16:15
khw joined
|
|||
retupmoca | I plan on getting that straightened out once I get panda sorted on my machine, but I'll merge PRs :) | 16:15 | |
cygx | TimToady: ok, I figured that it could be the expected behaviour | ||
not the most newbie-friendly semantics, though... | |||
zengargoyle | retupmoca++ | 16:16 | |
retupmoca 's panda bootstrap seems to just hang or give "Unable to write bytecode" errors, so I'm guessing there are a couple of windows issues yet | |||
16:16
nadim joined
|
|||
TimToady | cygx: if we automatically assumed {} around blockless phasers, that would prevent BEGIN my $x = 42; from working | 16:17 | |
hankache | m: say -!True; | 16:18 | |
camelia | rakudo-moar 09a3e3: OUTPUT«0» | ||
TimToady | requiring {} to get closure semantics seems not unreasonable to me | ||
hankache | m: say ?-!True; | ||
camelia | rakudo-moar 09a3e3: OUTPUT«False» | ||
nine | jdv79: can you please give me the output of perl6 -e 'dd $*REPO.repo-chain; dd %*CUSTOM_LIB;' | 16:19 | |
16:20
pmurias left
|
|||
cygx | TimToady: it's just that visually, the (blockless) END statement appears to be within the surrounding code | 16:20 | |
so naively, lexicals should be available | 16:21 | ||
TimToady | sure, which is why $a is recognized, but the lifetime is different from the scope | ||
cygx | I huess in this cse, it's more about lifetimes | ||
*guess | |||
16:21
nadim left
|
|||
cygx | ;) | 16:21 | |
jdv79 | gist.github.com/anonymous/e90b997e6e711c7fdc63 | ||
TimToady | hmm | ||
m: state $a = 42; LEAVE say $a; END say $a | 16:22 | ||
camelia | rakudo-moar 09a3e3: OUTPUT«42(Any)» | ||
TimToady | aww | ||
stmuk_ | m: y @installations = $*REPO.repo-chain.grep(CompUnit::Repository::Installable); my @binaries = flat @installations.map: { .files('foo')}; say :@binaries.perl; | 16:23 | |
camelia | rakudo-moar 09a3e3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/hvtfKkXILYUnsupported use of y///; in Perl 6 please use tr///at /tmp/hvtfKkXILY:1------> 3y7⏏5 @installations = $*REPO.repo-chain.grep» | ||
stmuk_ | m: my @installations = $*REPO.repo-chain.grep(CompUnit::Repository::Installable); my @binaries = flat @installations.map: { .files('foo')}; say :@binaries.perl; | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Cannot unbox a type object in block <unit> at /tmp/CM89swi3r4:1» | ||
hoelzro | o/ #perl6 | ||
Zoffix | \o | 16:24 | |
hankache | o/ hoelzro | ||
hoelzro | o/ hankache, Zoffix | ||
dalek | kudo/precomp-singleprocess: 104623a | arnsholt++ | src/core/ (5 files): Initial sketch of precompilation in a single process. Unfortunately this doesn't quite work yet, as a circular dependency chain is falsely detected when precompiling the NativeCall libraries. |
||
retupmoca | oh hey, I had a ~/.perl6 folder I didn't know about - blew that away and panda bootstrap looks happy | 16:25 | |
nine | jdv79: your rakudo is 46 commits behind! Including those necessary for panda. | 16:26 | |
arnsholt | nine: That branch is what I've got so far. Unfortunately it breaks when precomping NativeCall. Somehow the list of loaded modules persists between each thing we precomp, so when NativeCall.pm is precomped NativeCall::Types gets loaded, and then when precomping NativeCall::Types it borks, because ::Types is already marked as loaded | ||
Or at least, that's what it looks like to me | |||
jdv79 | wut?! | ||
nine | jdv79: current nom is 09a3e3deae81c4946afa5f1debdc351fa82c86fe | ||
16:27
nadim joined
|
|||
Zoffix | .u 1F64C | 16:27 | |
yoleaux | U+1F64C PERSON RAISING BOTH HANDS IN CELEBRATION [So] (🙌) | ||
jdv79 | oh, man. sorry. i copied the curli branch by accident | ||
thanks! | |||
well, i'll try that then | 16:28 | ||
nine | jdv79: I love it when issues are that simple to fix :) | ||
arnsholt: yes, we have to precompile NativeCall::Types before NativeCall. Yet the only way to know that is by trying to precompile NativeCall and encountering the "use" statement. So to make this work, we have to be able to do multiple precompilations concurrently in one process. | 16:30 | ||
moritz | concurrently? | 16:31 | |
16:31
empT joined
|
|||
jdv79 | i waited a few days to try to avoid the mess and i accidentally stepped right into it:( | 16:32 | |
i guess i checked out the curli branch to take a peek and forgot to switch back | 16:33 | ||
16:33
n0tjack joined
|
|||
hankache | who is chromatic? his comments about Perl 6 are always negative. Any reason? | 16:33 | |
jdv79 | kind of a longish story i think | ||
Zoffix | hankache, based on the stuff he wrote that I've read, he used to do dev on parrot | ||
hankache, he also the author of Perl 5's Modern Perl book | 16:34 | ||
jdv79 | hankache: i think a few posts on his blog lay it out prety well | ||
mst | hankache: his comments about almost everything are always negative | ||
Zoffix | heh | ||
jdv79 | modernperlbooks.com i think somwehre | ||
mst | he successfully delayed perl 5.10 by making the pumpking quit with a series of passive aggressive posts | 16:35 | |
etc. etc. | |||
jdv79 | ah, panda now straps in. nice. | ||
Zoffix | \o/ | ||
dj_goku | moritz: haha I guess I just start saying .messages when I come back from afk. | ||
16:36
empT left
|
|||
hankache | i see. i was wondering where all that negative vive was coming from (comments on reddit and HN) | 16:36 | |
vibe* | 16:37 | ||
[Coke] | TimToady: glad to hear it, thanks. | ||
jdv79 | and installs stuff and stuff runs like precomp it working (faster). its like a whole new world! | 16:38 | |
flussence | hankache: the tl;dr is he's 5.8 backward compatibility in person form ¯\_(ツ)_/¯ | ||
dj_goku | hankache: if you do some googling you can find his perspective of why he is negative. | ||
jdv79 | *is | ||
nadim | What's the status of AUTOLOADING and Ties? | 16:39 | |
stmuk_ | m: my $a = CompUnit::Repository::Installation.new(); | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Parameter '$prefix' requires an instance of type Str, but a type object was passed. Did you forget a .new? in block <unit> at /tmp/BOASD3k1S7:1» | ||
nine | retupmoca: it's very much possible that the file locking we use since curli doesn't work as intended on Windows. I'm assuming POSIX semantics since I don't have any information on what exactly to expect. | ||
diakopter | nadim: those are Perl 5 concepts | ||
stmuk_ | should that work? or I am missing something? | ||
16:39
n0tjack left
|
|||
stmuk_ | m: my $a = CompUnit::Repository::Installation.new(:prefix("foo")); | 16:41 | |
camelia | ( no output ) | ||
retupmoca | nine: yeah, it hung during the tests for panda on that bootstrap, and I haven't gotten it even that far again | 16:42 | |
lucs | m: say (^20).grep(.is-prime) # What's missing here please? | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Method 'is-prime' not found for invocant of class 'Any' in block <unit> at /tmp/8YVdPyM3jP:1» | ||
stmuk_ | m: say $*REPO.perl | 16:43 | |
camelia | rakudo-moar 09a3e3: OUTPUT«CompUnit::Repository::Installation.new('/home/camelia/.perl6/2015.11-330-g09a3e3d')» | ||
retupmoca | nine: I'll take a look at the file locking stuff | ||
nadim | Maybe but there was a discussion about them, IE perl6.org/archive/rfc/200.html, Now I don't mind those concepts gone but if there are new concepts then I'd like to know their statuses | ||
retupmoca | m: say (^20).grep(*.is-prime) # lucs | ||
camelia | rakudo-moar 09a3e3: OUTPUT«(2 3 5 7 11 13 17 19)» | ||
16:43
n0tjack joined,
llfourn left
|
|||
stmuk_ | m: my $foo = CompUnit::Repository::Installation.new('/home/camelia/.perl6/2015.11-330-g09a3e3d') | 16:43 | |
camelia | rakudo-moar 09a3e3: OUTPUT«Too many positionals passed; expected 1 argument but got 2 in block <unit> at /tmp/GrOLKE_ixx:1» | ||
lucs | retupmoca: Oh, hmm... What does the * do? (ref to docs?) | 16:44 | |
Zoffix | lucs, it's called Whatever Star | ||
Not sure which docs its in tho | |||
lucs | Ah, I remember seeing that. | ||
16:44
empT joined
|
|||
lucs | I'll find it, thanks. | 16:44 | |
Zoffix | lucs, probably this: doc.perl6.org/type/Whatever | ||
TimToady | [Coke]: on that RT, the problem with blindly changing s/lc/fc/ is that fc can change the length, and current lc code assumes not | ||
lucs | Zoffix: Danke | 16:45 | |
arnsholt | nine: Oh, so the failure is expected? That might explain things | ||
And probably handleable with appropriate exception handling | |||
[Coke] | TimToady: we can push the .fc to a different ticket, that's fine. | ||
but I think .fc is the -right- way to do that, yes? | 16:46 | ||
lucs is gonna cry! | |||
[Coke] | my immediate problem is that it fails horribly. I'll settle for "not every weird case insensitive is handled quite right" | ||
lucs | Perl6 is so beautiful | ||
! | |||
[Coke] | lucs: you're welcome. :) | ||
japhb | .botsnack | 16:48 | |
synbot6 | om nom nom | ||
yoleaux | 2 Dec 2015 23:50Z <timotimo> japhb: how about i ask another person who can perl5 to implement that feature? | ||
:D | |||
16:48
nige1 joined
|
|||
[Coke] | ETOOMUCHBOT | 16:48 | |
japhb | timotimo: Well sure, just ask them to do a PR so I can sanity-check. Not that I'm claiming the Perl 5 code in perl6-bench is particularly sane mind you ... more like "optimized for JFDI" | 16:49 | |
Zoffix | hm | ||
Why am I getting first emission right away instead of after 2 secs? | 16:50 | ||
m: Supply.interval( 2 ).tap({ say "42" }); sleep 1 | |||
camelia | rakudo-moar 09a3e3: OUTPUT«42» | ||
japhb | [Coke]: synbot6 probably shouldn't eat the snacks, and yoleaux probably shouldn't smile if it's delivering messages. Or we could just get the yoleaux owner to add a .messages. | ||
16:50
WizJin joined
|
|||
Zoffix | m: Supply.interval( 2 ).tap({ say "SUP: {now}" }); sleep 1; say now | 16:51 | |
camelia | rakudo-moar 09a3e3: OUTPUT«SUP: Instant:1449161503.478914Instant:1449161504.479570» | ||
japhb | Zoffix: sleep 5. | ||
Zoffix | japhb, ? | ||
japhb | m: Supply.interval( 2 ).tap({ say "SUP: {now}" }); sleep 5; say now | ||
camelia | rakudo-moar 09a3e3: OUTPUT«SUP: Instant:1449161540.900171SUP: Instant:1449161542.901709SUP: Instant:1449161544.903744Instant:1449161545.900828» | ||
16:52
n0tjack left
|
|||
Zoffix | japhb, not sure what I'm meant to get from that :/ | 16:52 | |
16:52
empT left
|
|||
japhb | The spacing is indeed every 2 seconds ... but it starts at 0, not 2. | 16:52 | |
Zoffix | That's terrible and IIRC it wasn't the case before the recent Supply rewrite. | ||
16:53
hankache left
|
|||
[Coke] | japhb: I just do a "." if I know I need to emit messages. | 16:53 | |
jdv79 | Zoffix: are your bots self aware yet? | ||
japhb | [Coke]: Sigh, I suppose so. | ||
Zoffix | jdv79, yes | ||
japhb | Speaking of messages, I should have probably sent mine as one ... | 16:54 | |
.tell timotimo Well sure, just ask them to do a PR so I can sanity-check. Not that I'm claiming the Perl 5 code in perl6-bench is particularly sane mind you ... more like "optimized for JFDI" | |||
Zoffix | Ah ok | ||
yoleaux | japhb: I'll pass your message to timotimo. | ||
jdv79 | so they will write the advent post? | ||
TimToady | [Coke]: we should just have a ticket for a general lc vs fc review, I think, if we don't have one already | ||
Zoffix | m: Supply.interval( 2, 2 ).tap({ say "SUP: {now}" }); sleep 1; say now | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Instant:1449161713.624202» | ||
16:54
n0tjack joined
|
|||
Zoffix | There's a "delay" there | 16:54 | |
[Coke] | TimToady: ok. opening. | ||
TimToady | and we probably need to do it before xmas | ||
Zoffix | jdv79, yup :P | 16:55 | |
jdv79 | super ^H | ||
16:55
atweiden joined
|
|||
Zoffix | jdv79, you probably wouldn't want to read that post tho: [11:23:51] <Zoffix> P6NotABot, test [11:23:51] <P6NotABot> When they met up outside the town, he listened to the other group explaining how it all went bad right from the beginning because there were a pair of constables keeping a sharp eye on the target maki | 16:56 | |
^_^ | |||
16:56
telex left
|
|||
jdv79 | needs more IQ | 16:56 | |
lucasb | having multiple-keyed hashes makes sense? is it planned for the far future? the idea is something like this: my %h{Int;Str;Bool}; %h{42;"foo";True} = $some-value; | ||
Zoffix | :o | 16:57 | |
n0tjack | I'd love to see multi-key hashes | ||
16:57
empT joined
|
|||
Zoffix can't think of a valid usecase | 16:57 | ||
[Coke] | m: say π | ||
camelia | rakudo-moar 09a3e3: OUTPUT«3.14159265358979» | ||
n0tjack | m: say pi^(e*i); | 16:58 | |
camelia | rakudo-moar 09a3e3: OUTPUT«one(3.14159265358979, 0+2.71828182845905i)» | ||
n0tjack | m: say e^(pi*i); | ||
camelia | rakudo-moar 09a3e3: OUTPUT«one(2.71828182845905, 0+3.14159265358979i)» | ||
Zoffix | m: say 2^2 | ||
camelia | rakudo-moar 09a3e3: OUTPUT«one(2, 2)» | ||
[Coke] | ** not & | ||
diakopter | heh since when does ^ work like that | ||
[Coke] | er, not ^ | ||
16:58
telex joined
|
|||
diakopter | yeah ** | 16:58 | |
Zoffix | I'm just wondering wtf ^ is? | ||
lucasb | xor? | ||
n0tjack | I'm used to spelling ** as ^ | 16:59 | |
diakopter | disjunction | ||
n0tjack | sorry | ||
Zoffix | :o | ||
[Coke] | docs.perl6.org/routine/(%5E)#langua..._and_Mixes | ||
Zoffix | Thanks | ||
gfldex | m: my %h{Any}; %h{42;'zwoundvierzig'} = 'universe'; say %h{42;'zwoundvierzig'} | ||
camelia | rakudo-moar 09a3e3: OUTPUT«(universe)» | ||
[Coke] | ... wait, notpe | ||
gfldex | lucasb: ^^^ | ||
vytas | m: say 2xB2; | ||
camelia | rakudo-moar 09a3e3: OUTPUT«4» | ||
16:59
synbot6 left
|
|||
diakopter | m: say e**(pi*i); | 16:59 | |
camelia | rakudo-moar 09a3e3: OUTPUT«-1+1.22464679914735e-16i» | ||
colomon | [Coke]: right, junctions not sets bags etc | ||
vytas | m: say √4; | 17:01 | |
camelia | rakudo-moar 09a3e3: OUTPUT«5===SORRY!5===Argument to "say" seems to be malformedat /tmp/dLzG4ckOtS:1------> 3say7⏏5 √4;Bogus postfixat /tmp/dLzG4ckOtS:1------> 3say 7⏏5√4; expecting any of: infix infix stopper …» | ||
TimToady | m: say e**(pi*i).narrow | ||
camelia | rakudo-moar 09a3e3: OUTPUT«Attempt to divide 3.14159265358979 by zero using / in block <unit> at /tmp/99Ygzai4UY:1Actually thrown at: in block <unit> at /tmp/99Ygzai4UY:1» | ||
17:01
empT left
|
|||
TimToady | heh | 17:01 | |
diakopter | m: say (e**(pi*i)).narrow | ||
camelia | rakudo-moar 09a3e3: OUTPUT«-1» | ||
TimToady | right | 17:02 | |
lucasb | gfldex: oh, it works already, cool :) | ||
moritz | m: say e ** pi\i .narrow | ||
camelia | rakudo-moar 09a3e3: OUTPUT«-1» | ||
nine | moritz: concurrently as in start one precompilation while another one was already started and resume the first one after the other is finished. Not as in threads | ||
diakopter | moritz: waaaaaaat is that | ||
[Coke] | colomon: sadly, couldn't find ^ at docs.p6 | 17:03 | |
colomon | [Coke]: :( | ||
17:04
nadim left
17:05
n0tjack left
|
|||
stmuk_ | probably known but an installed script $*EXECUTABLE-NAME is a sha hash | 17:05 | |
lucasb | colomon, [Coke]: junction operators & | ^ are there in the docs. is this what you are talking about? | 17:06 | |
cygx | wait, the proper way to rewind a file is now .seek(0, SeekFromBeginning) | ||
that's I bit longwinded, I'd argue | |||
*a bit | |||
17:07
zakharyas left
|
|||
[Coke] | lucasb: search for ^ - which of those entries is the junction one? | 17:08 | |
the junction page probably needs to be rewritten to list those as operators, and then the indexing will pick it up | 17:09 | ||
lucasb | doc.perl6.org/language/operators#infix_^ | 17:10 | |
[Coke] | how often is seek used? Longwinded seems ok. | ||
17:10
nadim joined
|
|||
[Coke] | lucasb: ok, but can you search for it? | 17:10 | |
lucasb | strangely enough, I can't directly type a "^" character in the search box | ||
dunno what JS magic is that | 17:11 | ||
Zoffix can | |||
17:12
sno joined
|
|||
cygx | [Coke]: looks more like Java than Perl to me | 17:12 | |
I'd probably have added some multi candidates using libc terminology, ie :cur, :set, :end | |||
dalek | p: 6057310 | TimToady++ | tools/build/MOAR_REVISION: bump moar to get RT #126771 fix |
17:13 | |
zengargoyle | cygx: that was my first thought when i got warnings on Text::Fortune... what is this? Java? | ||
mrf_ -> home | 17:14 | ||
17:14
n0tjack joined
|
|||
nine | cygx: if it weren't for :end, I'd have a hard time figuring out what the other two mean | 17:15 | |
Juerd | MadcapJake: Yes, I am on Twitter. @Whreq | 17:17 | |
dalek | kudo/nom: 34b87d5 | TimToady++ | tools/build/NQP_REVISION: bump nqp to get RT #126771 fix |
||
zengargoyle | i'd still expect something shorter... seed( SeekFromXxxx ) seems redundant. | ||
s/seed/seek/ | |||
dalek | ast: 0d2a5c0 | TimToady++ | S05-modifier/ignorecase-and-ignoremark.t: add test for RT #126771 |
17:18 | |
17:18
empT joined
|
|||
cygx | nine: simple solution - force everyone to do some C programming before letting them touch Perl6 ;) | 17:19 | |
zengargoyle | expected a bit more like Order::Less|Same|More type thing... SeekFrom::Begin ... | ||
17:20
_nadim joined
|
|||
japhb | panda can't currently install Term::termios or Inline::Perl5 (though oddly Inline::Python seems to install fine). Between panda, curli, and the modules themselves, I'm not sure who to file tickets with .... | 17:20 | |
zengargoyle | they still have to know to use +/- for forward/backward | ||
17:20
nadim left
17:21
nige1 left
|
|||
stmuk_ | I'm getting an unbox error with the shim for p6doc-index as well | 17:21 | |
zengargoyle tho still better than having to lookup 0,1,2 *every single time* :) | 17:22 | ||
stmuk_ | there seems to be another(?) unbox error which is intermitaint as well | ||
17:25
mohij left
|
|||
japhb | .ask nine Can you fix "things" so that Inline::Perl5 can install via panda again? | 17:26 | |
yoleaux | japhb: I'll pass your message to nine. | ||
17:26
patrickz joined,
n0tjack left
|
|||
diakopter | Swift is now open-source apple/swift | 17:27 | |
17:28
nadim joined
|
|||
TimToady | which probably means apple doesn't care about it so much anymore... | 17:28 | |
[Coke] | I could see an argument made for using an adverbial rather than an enum there, but I'm more concerned about our inconsistent kebob casing. | ||
17:29
_nadim left
|
|||
stmuk_ | swift.org seems /' ed | 17:30 | |
nine | I guess physicists really are not familiar with tauday.com/ | 17:31 | |
yoleaux | 17:26Z <japhb> nine: Can you fix "things" so that Inline::Perl5 can install via panda again? | ||
17:31
dakkar left
|
|||
nine | japhb: I already started work on that yesterday. It just would be much easier if arnsholt++ manages to make in-process precompilation work | 17:32 | |
[Coke] | Pretty sure we have all the people we're going to have in the credits section of the release announcement now. Please make sure your favorite sixer is in the list and that their preferred name is used. (Still some work to be done to eliminate a few dupes, and pick better preferred names) | ||
gist.github.com/coke/63c7bbb82f075c7bb1f5 | 17:33 | ||
17:33
Ch0c0late joined
|
|||
[Coke] | lizmat+- for suggesting this task. :) | 17:33 | |
cygx | .oO( who's that cvsdummy guy ) |
17:34 | |
jdv79 | m: my @a="adsf"; say "@a[0]{'foo'}" | 17:36 | |
camelia | rakudo-moar 34b87d: OUTPUT«Type Str does not support associative indexing. in block <unit> at /tmp/I4NIgjeOew:1Actually thrown at: in block <unit> at /tmp/I4NIgjeOew:1» | ||
[Coke] | cygx: adding him to the TODO... | ||
jdv79 | is there no way to have a subscripting followed by a block in a string interp? | 17:37 | |
[Coke] | cygx: updated README | ||
cygx | [Coke]++ | ||
[Coke] | m: my @a="adsf"; say "{ @a[0]{'foo'} }" | ||
camelia | rakudo-moar 34b87d: OUTPUT«Type Str does not support associative indexing. in block <unit> at /tmp/fvBCFVeckE:1Actually thrown at: in block <unit> at /tmp/fvBCFVeckE:1» | ||
jdv79 | another block i guess... | ||
m: my @a="adsf"; say "{@a[0]}{'foo'}" | 17:38 | ||
camelia | rakudo-moar 34b87d: OUTPUT«adsffoo» | ||
donaldh is tirelessly pimping his PR that unbusts the JVM build github.com/rakudo/rakudo/pull/615 | |||
Zoffix | First draft of Advent post done: 2094 words. | ||
jnthn | pimpin' ain't easy... | ||
[Coke] | donaldh: one sec. | ||
TimToady | m: my @a="adsf"; say "@a[0]$('foo')" | ||
camelia | rakudo-moar 34b87d: OUTPUT«adsffoo» | ||
dalek | kudo/nom: 3140c62 | donaldh++ | src/core/Str.pm: Unbust build on JVM - make samemark moar only. |
||
kudo/nom: de7cb07 | jnthn++ | src/core/Str.pm: Merge pull request #615 from donaldh/unbust-jvm Unbust build on JVM - define samemark to be moar only. |
|||
TimToady | another way | ||
[Coke] | jnthn beat me to it! | ||
jnthn | ;) | ||
[Coke] | donaldh++ Thanks! | ||
jdv79 | TimToady: nice | ||
17:39
Amnez777- joined
|
|||
timotimo | so much backlog ... | 17:39 | |
yoleaux | 16:54Z <japhb> timotimo: Well sure, just ask them to do a PR so I can sanity-check. Not that I'm claiming the Perl 5 code in perl6-bench is particularly sane mind you ... more like "optimized for JFDI" | ||
donaldh | thanks jnthn++ and [Coke]++ | ||
17:39
Amnez777 left
17:40
Amnez777 joined,
Amnez777 left,
Amnez777 joined,
ChoHag joined
|
|||
donaldh | also github.com/rakudo/rakudo/pull/608 which adds awesomeness to USAGE | 17:40 | |
cygx | re USAGE, github.com/rakudo/rakudo/pull/549 is also still open | 17:43 | |
17:43
cpage_ left
|
|||
jnthn | TimToady: Any feeling on rt.perl.org/Ticket/Display.html?id=126005 ? Basically, things like loops sink their last statement, so the loop block evaluates to Nil, so the UNDO phaser fires. | 17:43 | |
ChoHag | How's the release by Christmas looking? | 17:44 | |
cygx | m: sub MAIN(42, *%foo) {} | ||
camelia | rakudo-moar 34b87d: OUTPUT«Usage: /tmp/LkRKXlKH72 =<Associative> 42 » | ||
17:44
Amnez777- left
|
|||
[Coke] | ChoHag: on target | 17:45 | |
ChoHag | 2015.11 builds cleanly by the way. ISTR some problem building individual components to a non-standard prefix some time ago. | ||
[Coke] | cvsdummy & unknown are gone | 17:47 | |
17:47
Actualeyes left
17:52
ChoHag left
17:56
donaldh left
|
|||
TimToady | jnthn: perhaps sink should be returning Empty intead of Nil? | 17:57 | |
but the thing is, UNDO isn't really intended for blocks that don't return anything anyway, unless we tweak our definition of success | 17:58 | ||
so I'm willing to spec nasal unicorns unless someone gives me a real use case | 18:00 | ||
Zoffix | :o | 18:02 | |
diakopter | nasaly unicorns sing off-key | 18:05 | |
18:06
JimmyZ_ joined,
lucasb left
|
|||
dalek | p: 01aba47 | TimToady++ | tools/build/MOAR_REVISION: bump moar for moar ord tweaks |
18:06 | |
18:07
ChoHag joined
|
|||
dalek | kudo/nom: 3f85666 | TimToady++ | tools/build/NQP_REVISION: bump nqp for moar ord tweaks |
18:07 | |
18:08
espadrine left
|
|||
El_Che | I know this is a designed, but I don't care much about it: | 18:10 | |
m: class Foo { has $.bar }; my $foo = Foo.new( baz => "blah") | |||
camelia | ( no output ) | ||
El_Che | that will happily create a "Foo.new(bar => Any)" | 18:11 | |
I would rather see the new call die | |||
18:11
zoosha left
18:12
JimmyZ_ left
|
|||
ilmari | has Any:D $.bar is required; | 18:13 | |
i see 'is required' now suppresses the "Variable definition of type Any:D requires an initializer" error | |||
El_Che | ilmari: what if it isn't? I am talking about supplying nonsense parameters (typos) at class creation time | 18:14 | |
MadcapJake | If anyone is interested in having camelia file icons: madcapjake.github.io/2015/perl6-file-icons/ | ||
ilmari | El_Che: what do you mean nonsense? Anyy is perfectly cromulent value (a type object) | ||
s/yy/y/ | |||
ah, you mean unknown attributes | 18:15 | ||
El_Che | ilmari: yes | ||
ilmari: class Foo { has Bool $.verbose }; my $foo = Foo.new( verboose => True) | |||
verboose instead of verbose | |||
ilmari | I guess could could write a class trait that rejects unknown constructor arguments | 18:16 | |
class Foo is strict { ... } | 18:17 | ||
like MooseX::StrictConstructor | |||
mst | on the whole, I have not found that to be an advantage | ||
El_Che | ilmari: sure p6 is flexible enough to do that. I don't see the use case for the default | ||
is there a use case to pass invalid attributes to a constructor? | 18:18 | ||
mst | (1) it might not be invalid, something in BUILD might use it | ||
(2) it lets you pass an object a hash of params, and it understands the ones it understands, and ignores the others | |||
El_Che | mst: I get case 2 | 18:19 | |
gfldex | it's ignored for subs too, what allowes chaining of subs that pass named arguments on to a sub that can handle them | ||
El_Che | so there are valid cases, but I think it also has the potential to be the cause for difficult to spot bugs | 18:20 | |
18:21
cognominal left,
mephinet left
18:24
n0tjack joined
18:25
cognominal joined
18:27
hankache joined
18:28
empT left
18:30
mephinet joined,
empT joined
|
|||
El_Che | thx for the answer, they make sense | 18:30 | |
s | |||
dalek | kudo/nom: c6cc8a8 | coke++ | docs/announce/2015.12.md: add most of TimToady++'s thanks update Remove the list of repositories to go over; That work is being done in a gist, we'll pull it in shortly. |
||
zostay | how do i fix it if panda is installed, but when i run panda it can't find Shell::Command, etc.? | 18:31 | |
lizmat hopes TimToady will be able to decide on github.com/rakudo/rakudo/pull/614 | 18:32 | ||
aka, do we support tau ? | 18:33 | ||
18:33
zoosha joined
|
|||
n0tjack | m: say pi/2; | 18:33 | |
camelia | rakudo-moar 3f8566: OUTPUT«1.5707963267949» | ||
n0tjack | oh wait tau is 2*pi | ||
hankache | m: say 2*pi; | 18:34 | |
camelia | rakudo-moar 3f8566: OUTPUT«6.28318530717959» | ||
n0tjack | do I need rakudobrew to upgrade rakudo* easily? | 18:35 | |
lizmat wonders it would make sense to have an Inline::Swift | |||
zostay | ah, figured it out... had to cd into the panda dir inside of rakudobrew and run: perl6 -I ext/Shell__Command/lib -I ext/File__Find/lib -I ext/JSON__Fast/lib bin/panda install File::Find Shell::Command JSON::Tiny | 18:36 | |
18:37
ribasushi left
|
|||
zostay | n0tjack, i would recommend rakudobrew if you are interested in easily updating to the latest build | 18:37 | |
hankache | m: sub τ {2*pi}; say τ; | 18:38 | |
camelia | rakudo-moar 3f8566: OUTPUT«6.28318530717959» | ||
[Coke] | I think I had asked for tau at some point, but am now convinced it doesn't belong in v6.c - if it gets more mindshare, we can add it to v6.d | ||
18:39
zengargoylew joined
|
|||
n0tjack | zostay: I'm only really interested in the monthly R* builds. Currently, I'm unsure of how to easily upgrade from 2015.09 to 2015.11 . As much as possible I'm trying to be a pure "user". | 18:39 | |
m: constant \τ = 2*pi; say τ; | 18:40 | ||
camelia | rakudo-moar 3f8566: OUTPUT«6.28318530717959» | ||
cygx | m: sub postfix:<pi> { $^v * pi }; say 2pi | 18:41 | |
camelia | rakudo-moar 3f8566: OUTPUT«6.28318530717959» | ||
hankache | n0tjack what does the backslash before a variable declaration do? | ||
Skarsnik | mess up with your brain | ||
n0tjack | hankache: makes it sigilless; may actually not be required for constants, but is required for mutable vars | 18:42 | |
MadcapJake | doc.perl6.org/language/variables#Si..._variables | ||
lizmat | afk until after have seen Deep Purple getting oxygenated& | ||
MadcapJake | lizmat: o_O | ||
18:43
ribasushi joined
|
|||
zostay | rakudobrew can build the monthly R* distro if you specify the tags you want to build from, i think, but it doesn't include the modules R* includes, so it's probably not what you want in that case | 18:43 | |
lizmat | |||
n0tjack | zostay: what is the recommended way to upgrade r* on OSX? brew uninstall & brew install ? | ||
MadcapJake | zostay: panda install Task::Star | ||
timotimo | zostay: fortunately we have Task::Star to give you the modules. however, it doesn't give you the modules at the exact version star shipped. | 18:44 | |
zostay | i don't know... i was just answering what rakudobrew does... that's all i really need since i just need to build and test my mods against the bleeding edge | 18:45 | |
n0tjack | cool | ||
hankache | so sigiless variables and constants are the same thing? | ||
i mean the same behavior | 18:46 | ||
n0tjack | hankache: no | ||
hankache: any variable, constant or mutable, can be sigilless | |||
m: my \foo = 42; foo = 43; say foo; | |||
camelia | rakudo-moar 3f8566: OUTPUT«Cannot modify an immutable Int in block <unit> at /tmp/9q_bitkHOh:1» | ||
n0tjack | wait, is that right? | ||
flussence | m: say unival('𓂅') # gucharmap tells me this has a numeric value of 1/32, but perl6 doesn't recognise it. should it? | ||
camelia | rakudo-moar 3f8566: OUTPUT«NaN» | ||
n0tjack | m: my \foo = 42; foo := 43; say foo; | ||
camelia | rakudo-moar 3f8566: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NIsGMRDfb7Cannot use bind operator with this left-hand sideat /tmp/NIsGMRDfb7:1------> 3my \foo = 42; foo := 437⏏5; say foo;» | ||
n0tjack | ok, I need to refresh myself on sigilles vars | 18:47 | |
forget everything I've said :) | |||
[Coke] | .u 𓂅 | ||
yoleaux | U+13085 EGYPTIAN HIEROGLYPH D015 [Lo] (𓂅) | ||
hankache | n0tjack the documentation says that sigiless == immutable | ||
18:48
vendethiel joined
|
|||
cygx | m: my \foo = my $ = 42; say foo; foo = 23; say foo | 18:48 | |
camelia | rakudo-moar 3f8566: OUTPUT«4223» | ||
zostay | there are several loopholes like that | 18:49 | |
m: my \foo = 42; foo := 43; say foo | |||
camelia | rakudo-moar 3f8566: OUTPUT«5===SORRY!5=== Error while compiling /tmp/f1pzuPp7mACannot use bind operator with this left-hand sideat /tmp/f1pzuPp7mA:1------> 3my \foo = 42; foo := 437⏏5; say foo» | ||
zostay | m: my Int \foo = 42; foo := 43; say foo | ||
camelia | rakudo-moar 3f8566: OUTPUT«43» | ||
n0tjack | zostay: Ah! That's what I had remembered. | ||
zostay | i'm not sure if they are intentional or not | ||
cygx | zostay: that last one looks like a bug to me | 18:50 | |
[Coke] | flussence: fileformat.info doesn't think the hieroglyph has a numeric value. | ||
flussence shrugs | 18:51 | ||
Skarsnik | m: sprintf("hello", 42); | ||
camelia | rakudo-moar c6cc8a: OUTPUT«Directives specify 0 arguments, but 1 argument was supplied» | ||
18:51
rurban1 joined
|
|||
Skarsnik | Should it be more explicit which Directive? | 18:51 | |
flussence | maybe they removed that info in a later version of unicode, this program's pretty out of date... | ||
[Coke] | flussence: from www.unicode.org/Public/9.0.0/ucd/Un....0.0d1.txt | ||
2153;VULGAR FRACTION ONE THIRD;No;0;ON;<fraction> 0031 2044 0033;;;1/3;N;FRACTION ONE THIRD;;;; | |||
timotimo | n0tjack: sigil-less variables are pretty much Single Static Assignment, but you can still bind a scalar into a sigilless variable and then you can modify it | 18:52 | |
[Coke] | 13085;EGYPTIAN HIEROGLYPH D015;Lo;0;L;;;;;N;;;;; | ||
so, yes, perl6 seems to have this right. | |||
18:52
ab6tract joined
18:53
ollej joined,
rurban left
|
|||
Skarsnik | m: sprintf("hello", 42); printf("Hello", 42); | 18:54 | |
camelia | rakudo-moar c6cc8a: OUTPUT«Directives specify 0 arguments, but 1 argument was supplied» | ||
18:54
rurban1 left
|
|||
flussence | huh, I wonder where gucharmap gets its info from then... | 18:54 | |
Skarsnik | m: printf("Hello", 42); | ||
camelia | rakudo-moar c6cc8a: OUTPUT«Directives specify 0 arguments, but 1 argument was supplied» | ||
Skarsnik | should I fill a bugrepport to have like the name of the function? x) | ||
flussence | oh, ucd/NamesList.txt. | 18:55 | |
[Coke] | Skarsnik: that's an NQP error, not a rakudo error, methinks | ||
18:55
empT left
|
|||
[Coke] | I think printf is basically passing the buck to NQP. | 18:55 | |
Skarsnik | make me lost 20 min wondering what was wrong xD | 18:56 | |
n0tjack | timotimo: makes sense, thanks | 18:57 | |
18:57
JimmyZ__ joined
|
|||
Skarsnik | hm, this message is both in npq and Moar | 18:59 | |
19:01
rurban joined
|
|||
nine | zostay: I wonder what advantages rakudobrew gives with regards to updating? I usually just git pull && make install in rakudo to update | 19:01 | |
ChoHag | Coming back to me weird and wonderful perl 6 project after a couple of months. | ||
Initial conclusion: I don't comment my code enough. | 19:02 | ||
hankache | use MONKEY-TYPING; lol!! | ||
19:03
zakharyas joined
19:05
JimmyZ__ left,
cpage_ joined,
lestrrat left
|
|||
mst | ChoHag: nobody ever comments their code enough | 19:06 | |
DrForr | I just use the 'rakudobrew nuke...' method. So far haven't had a problem. | ||
19:07
empT joined
|
|||
nine | I most of the time manage to comment my code if lifes depend on it. Well, at least often. Ok, sometimes... | 19:07 | |
Zoffix | m: &foo = &CORE::<say>; foo 42 | 19:08 | |
camelia | rakudo-moar c6cc8a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/eal4OWT1J3Undeclared name: CORE used at line 1Undeclared routine: foo used at line 1» | ||
Zoffix | What was the right syntax to "rename" core functions? | ||
TimToady | thing is, you can never get it right; it just switches from having too few comments to having too many :) | ||
timotimo | m: my &foo = CORE::('&say'); foo 42 | ||
camelia | rakudo-moar c6cc8a: OUTPUT«42» | ||
19:08
lestrrat joined
|
|||
Zoffix | It's like driving: those who are slower than you are idiots and those who are faster are maniacs :) | 19:08 | |
timotimo++ thanks | |||
timotimo | Zoffix: it's important to put the "my" there, too ;) | ||
m: my &foo = &CORE::<say>; foo 42 | |||
camelia | rakudo-moar c6cc8a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_jmcfKmrgnUndeclared name: CORE used at line 1» | ||
TimToady | Zoffix: it's worse, because you're both an idiot and a maniac | 19:09 | |
timotimo | but that doesn't work :| | ||
Zoffix | TimToady, lmao :D | ||
m: my &বলা = CORE::('&say'); বলা 42 | |||
camelia | rakudo-moar c6cc8a: OUTPUT«42» | ||
masak | "comments are echoes along the timeline from future refactorings, pleading to be born" | ||
-- Kent Beck | |||
Zoffix | Cool. We can actually make "translation" modules and let people use Perl 6 in their native tongue! | ||
El_Che | what does "Read-only binding" (::=) mean? doc.perl6.org/routine/%3A%3A%3D | ||
m: my $a = 1 ; my $b ::= $a; $b++; $a.perl | |||
camelia | ( no output ) | ||
El_Che | m: my $a = 1 ; my $b ::= $a; $b++; say $a.perl | ||
camelia | rakudo-moar c6cc8a: OUTPUT«2» | ||
El_Che | I don't see the difference with := | 19:10 | |
ChoHag | I try to follow Knuth's advice (was it merely advice?) that code should be for humans and only incidentally for compilers^Wbutterflies. | ||
masak | El_Che: means you can see updates, but can't update the alias :) | ||
timotimo | m: my $a = 1; my $othera = 2; my $b := $a; $b := $othera; say $b; | ||
camelia | rakudo-moar c6cc8a: OUTPUT«2» | ||
masak | m: my $a = 1; my $b := $a; $b++; say $a | ||
camelia | rakudo-moar c6cc8a: OUTPUT«2» | ||
ChoHag | But unfortunately butterflies are faster. | ||
19:10
leont joined
|
|||
timotimo | m: my $a = 1; my $othera = 2; my $b ::= $a; $b ::= $othera; say $b; | 19:10 | |
camelia | rakudo-moar c6cc8a: OUTPUT«2» | ||
timotimo | huh | ||
m: my $a = 1; my $othera = 2; my $b ::= $a; $b := $othera; say $b; | |||
camelia | rakudo-moar c6cc8a: OUTPUT«2» | ||
ChoHag | And compared to some humans I've met. Smarter. | ||
timotimo | NYI? | ||
19:10
vendethiel left,
spider-mario joined
|
|||
masak | you can always rebind | 19:10 | |
that's not what "readonly" means here | 19:11 | ||
cygx | m: my $a = 42; my $b ::= $a; $b = 23; | ||
camelia | ( no output ) | ||
masak | m: my $a = 1; my $b ::= $a; $b++; say $a | ||
camelia | rakudo-moar c6cc8a: OUTPUT«2» | ||
El_Che | masak: I am still trying to digest the answer :) | ||
masak | hrm. | ||
nine | masak: I guess it's no accident that I'm reminded of Yeats by that quote ;) | ||
El_Che | masak: so far, I don't see the difference | ||
jnthn | TimToady: I wrote up a rejection of rt.perl.org/Ticket/Display.html?id=125400 fwiw. | 19:12 | |
_sri_ started working on a new perl6 logo, derpy the snail :p i.imgur.com/KtxYJvi.png | 19:13 | ||
masak | El_Che: I'm stumped too, now | ||
_sri_ | to balance out the perl5 hate here recently ;) | ||
19:13
rurban left
|
|||
Zoffix | perl5 hate? | 19:13 | |
masak | _sri_: :P | ||
19:13
rurban joined
|
|||
Zoffix | _sri_, lol, love the logo :) | 19:13 | |
hoelzro | hahahha | 19:14 | |
Zoffix | _sri_, kerning sucks on "Perl 6" tho :) | ||
masak | _sri_: my first reaction to "performance isn't everything" is that it sounds like making excuses. and we do actually care about performance, it's just coming along step-by-step... | ||
_sri_ | Zoffix: everyone's a critic! | ||
jnthn | _sri_: I have no hate for Perl 5, but you're doing pretty well earning some... :P | ||
Zoffix | _sri_, hey, at least I didn't say anything about the sucky font :P | 19:15 | |
masak | _sri_: my second reaction was "ugh, Comic Sans" :P | ||
_sri_ | masak: 100% intentional choice ;) | ||
Zoffix | :) | ||
flussence prefers Ubuntu.ttf for that kind of use these days | |||
masak | _sri_: that's supposed to make me feel better about it? :P | ||
nine | I see Perl 5 as a strict subset of Perl 6, so I read it as "use these language constructs for performance" ;) | ||
Zoffix | _sri_, do you mind if I post it on Twitter? I think it's funny | 19:16 | |
masak | ok, ok, we'll be derpy the snail. fine. | ||
Zoffix | _sri_, with credit to you that is :) | ||
japhb | The only hate I have is for the term "derpy". Possibly because my eldest overuses it to extremes. | ||
Zoffix | That logo actually reminds me of the 100-Year Language essay: paulgraham.com/hundred.html | 19:17 | |
And the whole talk about expressing yourself first, without worrying about efficiency\ | |||
diakopter | what p5 hate | 19:19 | |
nine | Where would be a good place to read an ENV var and stuff it into a dynamic to be accessed during compilation in Perl6::Actions? | ||
masak | I wonder what the dual to that logo would be | 19:20 | |
diakopter | _sri_: srsly, against which sentiments are you reacting | ||
ChoHag | Efficiency is a financial problem these days. | ||
19:20
empT left,
Peter_R joined
19:21
zacts left,
cdg left
|
|||
TimToady | m: constant τ = 2*pi; say τ; | 19:22 | |
camelia | rakudo-moar c6cc8a: OUTPUT«6.28318530717959» | ||
TimToady | in case nobody pointed it out, you never need \ on a constant | ||
19:23
gtodd joined,
rurban left
|
|||
gtodd | m: say grep( { $_ ne (9 and 7) }, (1..10) ); | 19:24 | |
camelia | rakudo-moar c6cc8a: OUTPUT«(1 2 3 4 5 6 8 9 10)» | ||
Hotkeys | TimToady: what if I like the slash | ||
19:24
ChoHag left,
ChoHag joined
|
|||
gtodd | m: say grep( { ($_ ne 9 ) and ($_ ne 7) }, (1..10) ); | 19:24 | |
camelia | rakudo-moar c6cc8a: OUTPUT«(1 2 3 4 5 6 8 10)» | ||
19:26
asdfasdf joined
|
|||
El_Che | masak: what is the expected behaviour of :== when updating the alias? die? exeption? I am updating the documentation | 19:26 | |
(expected as "not now") :) | |||
19:26
asdfasdf left
|
|||
masak | El_Che: after failing to correctly demonstrate what the "read-only" part of the binding consists of, I think I'm the wrong person to ask for further explanation ;) | 19:27 | |
jnthn | It's more "signature bind" semantics than readonly these days | ||
dalek | kudo/nom: 887c937 | TimToady++ | src/ (16 files): please return Nil for no value, not a typeobject We didn't clarify this till recently, so I assume these are mostly fossils. |
||
El_Che | masak: I thought it was a bug or something not implementing yet | ||
masak | maybe ask someone else on the channel to demonstrate an observable difference between := and ::= | ||
TimToady | Hotkeys: are you a mad slasher? :P | 19:28 | |
19:29
b7j0c joined
|
|||
japhb | .oO( I will slash you *forwards*, and then I will slash you *backwards*! Mua-ha-ha-haaaaa .... ) |
19:29 | |
El_Che | while I am writing something in p6, I try to make a habit to change the doc if needed. I changed my local fork to provide an example like used in := (with the assumption that read-only meant 'read-only' :) ) | ||
gtodd | it's a bad example but in general does a construct like: grep { ($_ ne 9 ) and ($_ ne 7) } , (1..10) telling me "Hey you should use junctions" | ||
19:29
vendethiel joined
|
|||
gtodd | m: grep { $_ ne any(7, 9 ) } , (1..10) ; | 19:29 | |
camelia | ( no output ) | ||
gtodd | m: say grep { $_ ne any(7, 9 ) } , (1..10) ; | 19:30 | |
camelia | rakudo-moar c6cc8a: OUTPUT«(1 2 3 4 5 6 8 10)» | ||
TimToady | m: say ord "" | ||
camelia | rakudo-moar c6cc8a: OUTPUT«(Int)» | ||
jnthn | gtodd: It's a good place for them, yes | ||
b7j0c | are there predefined subsets? seems like we will have a ton of people constantly redefining `subset Pos of Int where * > 0`; | ||
El_Che | I'll hold the bug report about ::= until someone here confirms read only means something else. In that case I'll change the wording of the documentation. | 19:31 | |
nine | www.addedbytes.com/blog/if-php-were-british/ | ||
TimToady | m: say ord "" | 19:32 | |
camelia | rakudo-moar 887c93: OUTPUT«Nil» | ||
japhb | My strategy of "outlast the rainstorm before heading to dinner" seems to have succeeded! \o/ | ||
japhb thus heads to dinner ... | |||
jnthn | b7j0c: Not really, but no reason somebody can't make a module of common ones, if there's demand. | ||
El_Che | jnthn: sorry, I didn't get the signature bind thing. | ||
b7j0c | jnthn: cool, okay, guess i could be first and claim my place in perl6 lore.... | 19:33 | |
gtodd | jnthn: thanks ... going through the docs thinking of where/how one line use cases could be added to things ... a "$self documentation" patch that helps me learn/remember | ||
19:34
empT joined
19:35
pwd_ left
|
|||
b7j0c | what are people's feelings about threadsafety? should modules with mutable state try to guarantee their own safe concurrent use? or would people be happier for the caller to manage that on their own? in Go-land, package writers tend to take on responsibility for safe concurrency in their libs... | 19:36 | |
Skarsnik | hm, I don't get why something like (json) {"roles": [{"managed": false, ...cut }]} make me iterate over roles with for %data<roles>[0] -> %role; | ||
MadcapJake | nine: that was hilarious | 19:37 | |
b7j0c | i feel like it hasn't sunk in with people that perl6 is fully capable in this regard....i'm expecting a lot of people to write modules that are just perl5+better syntax | ||
Hotkeys | TimToady: I prefer hash-slinging slasher | ||
TimToady wants hash for lunch, but the leftover chinese food is probably healthier... | 19:38 | ||
jdv79 | b7j0c: so blog about it:) | ||
19:39
Deepak joined
|
|||
b7j0c | jdv79: :) ....but also, i wonder if we should have a "is-threadsafe" column on modules.perl.org | 19:39 | |
jdv79 | real corned beef hash would be nive | ||
mspo | s3-media4.fl.yelpcdn.com/bphoto/dIH...Frfw/o.jpg | ||
jdv79 | but idk about in berlin | 19:40 | |
*nice | |||
TimToady | Mary Kitchen is the best cbh here in CA | ||
MadcapJake drools | |||
El_Che | b7j0c: threadsafe is nice :) | ||
mspo | that's short rib hash from cafe cluny in nyc, though | ||
jdv79 | i know a place in nnj. i need to sesrch tomorrow | ||
that makes their own i mean | 19:41 | ||
mspo | the poached eggs really do it | ||
TimToady | alas, can't have that part | ||
ChoHag | Previously (twoish months ago) I could write $method.wrap(sub ($instance:) { ... } }, but now I'm told that I can 'only use the : invocant marker in the signature for a method'. | ||
colomon | huh. do we have an idiom for reading a file in stages? I use for lines() { when /* something */ } for files where it’s all the same, but that seems like it would get awkward for a file which has distinct sections. | ||
gtodd | I've always been a hacker of manual pages ... using groff to add MY NOTES sections etc. this got me thinking it might be neat (possibly already proposed) if people could personalize their p6docs by having a POD section that links to notes/snippets/examples/internal projects and other resources that appears as a llink under See Also or something ... but only if the notes exist | 19:42 | |
TimToady | ChoHag: just s/sub/method/ and it should work | ||
mspo | TimToady: egg allergy? | ||
TimToady | yup | ||
mspo | sucks | ||
jdv79 | mspo: u in nyc? | ||
TimToady | sucks eggs! | ||
ChoHag | Is that error wrong? The anonymous sub in this instance is a method. | ||
Heh bad choice of words. | |||
mspo | jdv79: I had to leave about 18 months ago | ||
jdv79 | :( | ||
mspo | jdv79: but still think about breakfast at cafe cluny :) | ||
jdv79: I could only afford one 3x expense (rent) but not two (rent + childcare) | 19:43 | ||
leont | Anyone got a clue what «Unhandled exception in code scheduled on thread 6 Can only perform big integer operations on concrete objects» means? | ||
TimToady | m: method ($instance:) { say "Hi, I'm anonymous" } | ||
camelia | ( no output ) | ||
leont | --ll-exception doesn't add any information | ||
ChoHag | The anonymous sub in this case is a method. | ||
gtodd | it would work with p6doc and with the app.pl plack webserved variety ... perhaps people could push / share additions to the official docs p6notes would gradually eat evernote's market share etc. | ||
TimToady | m: my $m = method ($instance:) { say "Hi, I'm anonymous" }; 42.$m | 19:44 | |
camelia | rakudo-moar 887c93: OUTPUT«Hi, I'm anonymous» | ||
ChoHag | Gah! Is freenode still under attack or is my ISP's admin still fucking up with routers he doesn't understand? | ||
TimToady | freenode weather has been stormy lately | ||
masak .oO( there ain't no such thing as a free node ) | 19:45 | ||
ChoHag | Thanks TimToady. | ||
Skarsnik | sprintf error are quite not fun, you never get the number of the line that fail :( | ||
masak | Skarsnik: probably because it's thrown from nqp | 19:46 | |
colomon | I see if I do for lines() { } and exit the loop at some point, the next time I call lines() starts from the next line of the file. Is that a feature or an accident? | ||
TimToady | feature | 19:47 | |
if we don't have a test for it, we oughta | |||
colomon | TimToady++ | ||
19:47
uruwi joined
|
|||
jnthn | masak: Many are, but that doesn't stop them getting backtraces... | 19:48 | |
masak | jnthn: *nod* | ||
jnthn | So not sure what's up with it. Agree it totally should be getting one. | ||
Skarsnik | Type check failed in binding $format; expected Cool but got Any | ||
in method throw at /root/.rakudobrew/moar-nom/install/share/perl6/runtime/CORE.setting.moarvm:1 | |||
in method guild-channels at /root/piko/Discord/lib/Discord.pm6:133 | |||
the sprintf is at line 134 | 19:49 | ||
TimToady | lines appears to be rather thoroughly tested | ||
19:49
yqt joined
19:50
n0tjack left,
kaare_ left
19:51
uruwi left
|
|||
mspo | what does 'deadly parasitic' mean in raw.githubusercontent.com/perl6/mu...tsheet.txt | 19:52 | |
19:53
hankache left,
uruwi joined
|
|||
TimToady | it means it kills its host rather than just making it sick | 19:54 | |
DrForr | nine: 'use Inline::Perl5' is throwing "No such method 'abpath' for invocant of type 'CompUnit::Repository::FileSystem'". There's an abspath attribute in IO::Local, and it's used in the core in DIR-GATHER. | 19:56 | |
Zoffix | I'm done with my Advent post that's going live in 4 hours. If anyone wants to review it and see whether it's sane that's welcome :) perl6advent.wordpress.com/?p=2885&...eview=true | ||
jnthn | lizmat: re rt.perl.org/Ticket/Display.html?id=126789 your expectations are wrong; CATCH is a phaser and so block-level, it doesn't matter where textually it is in the sub. | ||
Zoffix | It's a bit off from what I imagined it being when I first planned it, but that's what you get when you write part of a piece drunk and part of it hungover :P | 19:57 | |
cognominal | well, it replace organs instead of merely augmenting the host. I don't think it is supposed to be deadly. | ||
19:58
n0tjack joined
|
|||
mspo | who knew the comma was so deadly | 19:59 | |
dalek | line-Perl5: 256b14a | (Stefan Seifert)++ | lib/Inline/Perl5.pm6: Fix "No such method 'abpath' for invocant of type 'CompUnit::Repository::FileSystem'" Thanks to DrForr++ for the heads up! |
||
cygx | can someone check that github.com/perl6/roast/pull/82 is sane? | ||
DrForr | Now *that's* what I call service :) | ||
nine++ # fast turnaround :) | |||
Zoffix | nine++ :) | 20:00 | |
El_Che | MadcapJake: looking forward to your atom perl6 linter and autocomplete work. I tried atom recently for perl6 and went back to vim because it didn't do more thatn vim. I will give it a go again then :) | 20:02 | |
DrForr | There's also a circular module loading in t/v6.t but I've been bypassing testing. | 20:03 | |
jdv79 | nine++ | ||
TimToady | huh, this makes no sense at all: return 0.5 if nqp::uc($ac) eq nqp::lc($bc); | 20:04 | |
20:05
Deepak left
|
|||
cognominal | github.com/rakudo/rakudo/blob/nom/....nqp#L4554 <== I have trouble to understand this line. The goal is to lexically augment the grammar. It is lexically augmented because o github.com/rakudo/rakudo/blob/nom/....nqp#L4554 sets a lexical %*MAIN That, I get. But I don't understand the purpose of :my $stub The $stub var not being used, I would guess it is to avoid a closure. But why?. | 20:05 | |
ho, the getlex ! | 20:06 | ||
cygx | should the comparison of C, Perl5 and Perl6 open modes from github.com/rakudo/rakudo/commit/36f773eb0 be included in the user-level documentation? | 20:07 | |
(ie docs.perl6.org/routine/open ) | |||
flussence | TimToady: I've no idea if it's meant to be this, but that line reads to me as «return 0.5 if $ac eq $bc and none($ac, $bc) ~~ any(@case-flippable-chars)» | ||
cognominal | if no teddybear or poulp available, ask the question in an IRC channel :) | 20:08 | |
DrForr | Beware of poulp fiction though. | ||
TimToady | I think it is intended to treat case changes as less cost, but it fails at that | ||
cognominal | DrForr++ | 20:09 | |
TimToady is changing it to: return 0.1 if nqp::fc($ac) eq nqp::fc($bc); | |||
Zoffix begins operation TTIAEMATTFTTF | 20:10 | ||
Try To Install All Ecosystem Modules And Try To Fix Those That Fail. Running this 1-liner: perl -MMojo::UserAgent -wlE 'open my $fh, ">", "errors.txt" or die $!; for (@{Mojo::UserAgent->new->get("modules.perl6.org/")->res->do...to_array}) {my $o = `panda install $_`; say $o; $o =~ /Successfully installed/ or do { say "FAILED: $_"; say $fh $_; }}' | |||
DrForr | Doesn't panda have a 'smoke' or 'all' option? | 20:11 | |
20:12
pwd_ joined
|
|||
Skarsnik | Zoffix, have fun! | 20:13 | |
dalek | kudo/nom: c8bd575 | TimToady++ | src/Perl6/World.nqp: make levenshtein treat caps differences as cheap The code tried before, but failed by comparing a uc with an lc. Also, .5 isn't cheap enough to catch a capslock failure. :) |
||
20:13
n0tjack left
|
|||
ab6tract | if i use lib './lib' | 20:14 | |
is there any precomp going on there? | |||
20:14
darutoko left
|
|||
Zoffix | DrForr++ Indeed it does! "smoke Tests and installs all packages. (Not for typical use.)" | 20:14 | |
Zoffix tries that instead | |||
TimToady | m: COMPLEX | 20:15 | |
DrForr | I just reinstalled it, only reason I noticed it. | ||
jdv79 | ab6tract: why are you six and not five? | ||
camelia | rakudo-moar 887c93: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VLhZDmpFd8Undeclared name: COMPLEX used at line 1» | ||
flussence | I'm looking at CompUnit::Repository::FileSystem and noticed line 33 passes an IO::Path to IO::Path.new-from-absolute-path while line 46 passes a string. The latter works, former explodes. Bug in that IO::Path method? | ||
ab6tract | TimToady: it took a year, but I've got something resembling a matrix-y screensave with Terminal::Print :D | ||
DrForr | jdv79: We want... information. | ||
ab6tract | jdv79: I'm on my laptop | ||
flussence | (fixing this would restore META6.json reading to working order) | 20:16 | |
nine | ab6tract: yes | ||
flussence: the IO::Path.new-from-absolute-path seems redundant | 20:17 | ||
ab6tract | nine: but does it re-comp the precomp when i've changed a file? :) | ||
nine | flussence: I replaced most of the Str usage by IO::Path but may have overlooked some not tested places | ||
ab6tract: yes | |||
flussence | nine: yeah, I wouldn't be surprised if I was the only person using that codepath regularly :) | 20:18 | |
20:18
n0tjack joined
|
|||
ab6tract | nine: great :D | 20:18 | |
colomon just spent a very frustrating five minutes trying to figure out why his code wasn’t working, when it turned out that the actual bit that wasn’t working was the “say” statement that was supposed to print the results. :\ | 20:20 | ||
DrForr | There's also a bug at t/precomp.t line 13 - "Too many positionals passed; expected 1 argument but got 2" and a circular module loading in t/v6.t - Haven't looked at it in any depth though. | 20:21 | |
jdv79 | colomon: thatd be like one half hour for me;) | ||
colomon | jdv79: the actual problem was that I forgot the “say” part of the say statement. <sigh> | 20:22 | |
jdv79 | cinco minuten. pfft. | ||
:) | 20:23 | ||
20:23
n0tjack left
20:24
Ch0c0late left
20:25
hankache joined
|
|||
Skarsnik | Zoffix, you will probably have issue with the C binding module :) | 20:28 | |
20:28
cpage_ left,
geraud joined
|
|||
TimToady | someone needs to update the cheatsheet; for instance, there's no parcels anymore | 20:28 | |
m: COMPLEX | 20:31 | ||
camelia | rakudo-moar c8bd57: OUTPUT«5===SORRY!5=== Error while compiling /tmp/zM_zZ6RQx0Undeclared name: COMPLEX used at line 1. Did you mean 'Complex'?» | ||
TimToady | there we go | ||
20:32
ollej left
|
|||
timotimo | TimToady: if we put a check for the "original" value into the levenshtein routine (that is, distance 0), we should be able to get rid of bogus levenshtein errors where it suggests something else and when you use that something else, it'll suggest what you just typed ... or something like that | 20:32 | |
the places where i put the <typo_typename> (or what i called it) aren't 100% robust to other failure scenarios | 20:33 | ||
so a parse error after a type can sometimes trigger the levenshtein erroneously | |||
my Complex"" $a; | |||
m: my Complex"" $a; | |||
camelia | rakudo-moar c8bd57: OUTPUT«5===SORRY!5=== Error while compiling /tmp/RV2LpuOKK1Malformed myat /tmp/RV2LpuOKK1:1------> 3my Complex7⏏5"" $a;» | ||
timotimo | hm. | ||
i don't have a good way to provoke it now for testing | |||
TimToady | yeah, I fixed some of those a few weeks ago, but probably not all | 20:34 | |
20:34
espadrine joined
|
|||
timotimo | oh, very good | 20:34 | |
MadcapJake | Zoffix++ # great advent post! Love the theme and code explanations are very informative! | ||
ChoHag | Is there any way to declare circular class dependencies other than by creating them all in the same file? | 20:35 | |
Skarsnik | what is the best way to clear an array? | 20:36 | |
TimToady | = () is fine | ||
stmuk_ | the cheatsheet in star is updated the mu one probably needs deleting | 20:37 | |
TimToady | +1 | 20:38 | |
but there might be links to it that need a redirect | 20:39 | ||
20:40
Calibellus joined,
hankache left
|
|||
stmuk_ | AFAIK it's not on the web | 20:42 | |
mspo | perl6 --doc=cheat ? | 20:43 | |
timotimo | even if it's not on the web, people may link to the github directory directly, or to the raw itself? | ||
moritz | let's hope they'll ask here when it becomes a 404 | 20:44 | |
mspo | I noticed perl6 (the command) lost -a and -0 | ||
moritz | mspo: I don't think it ever had them | ||
stmuk_ | it probably should be under doc TBH | ||
p6doc | |||
20:44
lostinfog joined
|
|||
mspo | moritz: well vs perl(1) | 20:44 | |
stmuk_ | and star use that one | ||
20:46
rindolf left
|
|||
Skarsnik need someone to write a module that save a http session with http::ua. is bored of waiting for the webserver he is playing around* | 20:47 | ||
flussence | Skarsnik: is your complaint there, that someone else's server is too slow? | 20:48 | |
ChoHag | What does 'is required' actually do? Previously I could declare an attribute is required and provide a default. | 20:49 | |
flussence | what I'd do in that case is set up a local proxy and have it aggressively cache everything | ||
ChoHag | In theory the default should make the required trait superfluous, but semantically I prefer to have it. Now, however, I am told that a required attribute does not have a value provided. | 20:50 | |
dalek | ast: bfcd27b | cygx++ | S32-io/open.t: add S32-io/open.t that tests extended open modes |
||
ast: 20303fe | jnthn++ | S32-io/open.t: Merge pull request #82 from cygx/master add S32-io/open.t that tests extended open modes |
|||
stmuk_ | lol is dead isn't it? | ||
Skarsnik | flussence, that could be an idea x) | ||
moritz | Skarsnik: yes | ||
TimToady | stmuk_: yes | 20:51 | |
moritz | erm yes, meant stmuk_ | ||
flussence | ChoHag: «is required» makes it required at constructor time. «is default» just changes the default value (when uninitialized or $.var = Nil) to something other than an undefined type object | ||
moritz must remember to type at least two characters before hitting the tab key | |||
ChoHag | So the required trait specifically refers to object construction and nothing else? | 20:52 | |
Skarsnik | but should not be to hard to have like a $ua.saveSession("file"); do request; and next time you can do a $ua.playsessoin("file"); | ||
stmuk_ | ok I'm going to try and merge the two cheatsheets | ||
ChoHag | ie. I could remove an attributes value afterwards despite the trait's presense? | ||
flussence | ChoHag: yep | ||
stmuk_ | "v5" | ||
ChoHag | Right. | ||
flussence | and if you want it to *stay* defined, you'd need a type constraint instead | 20:53 | |
mrf_ | ok pl6 and pod6 should be recognised as the correct filetype in vim. pr was merged | ||
timotimo | nice | ||
mst | and pm6 as well? | 20:54 | |
or are we still doing "let's have plain .pm files with no 'use v6;' so we screw over anybody trying to do hybrid projects" ? | |||
mrf_ | mst: p6 and pm6 already did the right thing | ||
20:55
raiph joined
|
|||
flussence circumvented that whole problem, years ago apparently, by having ~/.vim/filetype.vim check for 'perl6' in the path instead | 20:55 | ||
mst | mrf_: awesome | ||
flussence | (and a whole bunch of other ugly stuff I really ought to clean up from there) | 20:56 | |
if I can finally get rid of this monkey-patched s:FTpl() that'd be nice, though... | 20:58 | ||
stmuk_ | is KeyHash dead? | 21:03 | |
[Coke] | mst: use v6 is no longer really helpful now that we have use v6.c | 21:04 | |
(as far as for p5 interop goes) | |||
flussence | oh, hang on... I've got vim-perl installed and it already does all this ftdetect stuff correctly, gah | ||
[Coke] | perl5 -e 'use v6' #helpful | ||
perl5 -e 'use v6.c' #boom | |||
21:05
uruwi left,
ab6tract left
|
|||
timotimo | stmuk_: do you mean SetHash? | 21:07 | |
jnthn | [Coke]: Yes, a tad unfortunate... | ||
mst | [Coke]: hmm? | ||
21:07
bjz left
|
|||
mst | [Coke]: 'use v6;' is still useful for static analysis, at least | 21:08 | |
stmuk_ | timotimo: I think SetHash used to be KeyHash | ||
21:08
n0tjack joined
|
|||
hoelzro | MadcapJake++ # advent post | 21:08 | |
moritz | doc.perl6.org/ # we have ssl here too | ||
flussence is just going to stick to writing code with an unadorned 'use v6;' for as long as practical, same as with '<!doctype html>' | 21:09 | ||
nine | [Coke]: there's still: use v6; use v6.c; # but of course thats horrible | 21:10 | |
jnthn | mst: Yes, but since Perl 6 language versions look like 6.c, 6.d, etc. to placate certain Perl 5 people (as opposed to 6.0, 6.1, etc) then folks will write `use v6.c` and so forth. And `use v6.c` doesn't (yet? :)) get a useful error out of Perl 5. | ||
21:10
bpmedley left
|
|||
jdv79 | is use v6.*; going to work? | 21:10 | |
moritz | m: use v6.*; say 42 | 21:11 | |
camelia | rakudo-moar c8bd57: OUTPUT«42» | ||
mst | jnthn: I would be perfectly happy with .pm6 instead | ||
jdv79 | id like use v6 for lang detect but "cur ver" | ||
21:11
cdg joined
|
|||
stmuk_ | vimdiff++ # good for merging forked files (like cheatsheet) into one | 21:11 | |
moritz | jdv79: it seems to work already | ||
mst | jnthn: but 'use v6' as a thing to regexp for seems useful for tooling to know which highlighter to use | ||
jdv79 | jnthns pist didmt address it | ||
mst | jnthn: even if the perl5 VM doesn't co-operate as well as we'd like | ||
jdv79 | why im asking | ||
post | 21:12 | ||
jnthn | mst: Yes, I was thinking of the "accidentally fed Perl 6 code to perl5" case. | ||
Zoffix doesn't think that case is all that important | |||
jnthn | Possibly not. | ||
mst | jnthn: sure. and I'm thinking about all the other cases that I actually care about :) | ||
leont | well, if it contains a full perl6 shebang, it should redirect correctly in 5.24 and up | ||
mst | aha, the shebang regexp has been tweaked? | ||
'regexp' | 21:13 | ||
leont | Yeah, but I was slightly too late for 5.22 | ||
mst | welp, #!/usr/bin/rakudo it is then | ||
21:13
n0tjack left
|
|||
flussence was going to suggest something silly, but /use v6s+S/ seems to be a flat syntax error in perl5 | 21:14 | ||
mst | yep | ||
moritz | design.perl6.org/ # more SSL goodness | ||
mst still finds 6.c really weird | |||
Zoffix | m: v6.b before v6.c | 21:15 | |
camelia | rakudo-moar c8bd57: OUTPUT«WARNINGS:Useless use of "before" in expression "v6.b before v6.c" in sink context (line 1)» | ||
Zoffix | m: say v6.b before v6.c | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
Zoffix | :) | ||
flussence | must be special-cased in the parser, because /use $anything_that_isnt_v_plus_number/ throws a different error | ||
mst | yes, because 5.014002 and v5.14.2 are a special case of 'use' syntax | 21:16 | |
leont | Well, all of use is special in p5, really | 21:17 | |
21:17
n0tjack joined
|
|||
flussence | I was kinda hoping we could bury the 6.c bit in an import argument and everyone's binaries would be happy then, looks like it'll just have to be another special case | 21:17 | |
21:17
Zoffix left,
vendethiel- joined
|
|||
jdv79 | ~~~~p | 21:18 | |
oops | |||
timotimo | :!p | ||
vendethiel- | gfldex: nice advent post... maybe a bit too fast, but good nevertheless :) | ||
dalek | c: e210721 | (Claudio Ramirez)++ | doc/Language/io.pod: Add info exclusion new line reparator by .lines |
||
c: b03fe29 | (Claudio Ramirez)++ | doc/Type/IO/Handle.pod: Add info exclusion new line reparator by .lines + fix typo in example |
|||
c: e647af5 | moritz++ | doc/ (2 files): Merge pull request #221 from nxadm/master Add info exclusion new line reparator by .lines + fix typo in example |
|||
21:19
vendethiel left,
uruwi joined
21:21
n0tjack left
21:25
bjz joined
|
|||
[Tux] | Added the basic EOL tests now that the two EOL tickets have been fixed. (forgot to re-enable the tests at the moment of fix) | 21:25 | |
All tests successful. | 21:26 | ||
Files=26, Tests=19960, 40 wallclock secs ( 3.18 usr 0.18 sys + 100.74 cusr 1.85 csys = 105.95 CPU) | |||
Result: PASS | |||
only 40 more tests for 20000 | |||
<travis-ci> Tux/CSV#170 (master - 7cc6fde : H.Merijn Brand - Tux): The build passed. | |||
test 50000 23.107 22.996 | 21:28 | ||
test-t 50000 16.626 16.515 | |||
16.6 :):) | |||
sleep tight | |||
dalek | : 82cd343 | (Steve Mynott)++ | docs/Perl6/Cheatsheet/ (2 files): Update the txt cheatsheet based on the different forked version in the star repo. Both versions contained outdated info and this version should be definitive for the moment Add a README to warn against this happening again |
||
cygx | flussence: masak: gist.github.com/cygx/96350b691d622d5b4ac1 | 21:29 | |
leont | What's the most convenient way to get the "\r\n" synthetic into a character class? | 21:30 | |
nine | \o/ | ||
dalek | : 78598df | ab5tract++ | misc/perl6advent-2015/schedule: Adjust schedule I cannot make the deadline for the 6th. |
||
cygx | leont: I'm guessing \v is not an option? | 21:31 | |
nine | I think I've got the hardest part of %?RESOURCES figured out | ||
leont | No, I need \n, \r or \r\n | ||
\v is more than that | |||
moritz | m: say so "\r\n" ~~ /^<[\r\n]>$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
[Coke] | leont: I'd probably make it an alternation with the class. | ||
21:31
ab6tract joined
|
|||
moritz | m: say so "\r\n" ~~ /^<[\n\r\n]>$/ | 21:32 | |
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
moritz | m: say so "\n" ~~ /^<[\n\r\n]>$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
moritz | m: say so "\r" ~~ /^<[\n\r\n]>$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
moritz | m: say so "\r" ~~ /^\n$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
moritz | m: say so "\r\n" ~~ /^\n$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
jnthn | \n is logical | ||
moritz | m: say so "\n" ~~ /^\n$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
moritz | leont: it seems simply \n does exactly what you want | ||
ab6tract | moritz: in the end I can't do a post for the 6th :( | ||
leont | I thought \n also matched some unicode line endings | ||
moritz | ab6tract: :( | ||
ab6tract: can you do it for later? | 21:33 | ||
ab6tract | i can still do the 10th tho | ||
moritz | ab6tract: ok | ||
leont | (as in, when outside a character class) | ||
ab6tract | i updated mu already | ||
jnthn | afaik it's logical inside a char class too | ||
cygx | m: say "\r\n" ~~ /^<[\n]>$/; say "\r\n" ~~ /^<[\v]>$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«「 | ||
cygx | huh | 21:34 | |
leont | m: say so "\r\n" ~~ /^<[\n]>$/; say so "\r\n" ~~ /^<[\v]>$/ | ||
camelia | rakudo-moar c8bd57: OUTPUT«TrueFalse» | ||
21:34
uruwi left
|
|||
cygx | what's up with that? | 21:34 | |
moritz | ShimmerFairy: would you like to do an advent post about Grammar::Parsefail? | ||
21:35
bjz left
|
|||
leont | m: say so "\x{2028}" ~~ /^<[\n]>$/; | 21:35 | |
camelia | rakudo-moar c8bd57: OUTPUT«5===SORRY!5=== Error while compiling /tmp/V_JtO9UmiGUnsupported use of curlies around escape argument; in Perl 6 please use square bracketsat /tmp/V_JtO9UmiG:1------> 3say so "\x{7⏏052028}" ~~ /^<[\n]>$/;» | ||
leont | m: say so "\x[2028]" ~~ /^<[\n]>$/; | ||
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
leont | :-( | ||
moritz | m: say so "\r\n" ~~ /^ <[ \r\c[LF] ]> $/ | 21:36 | |
camelia | rakudo-moar c8bd57: OUTPUT«True» | ||
stmuk_ | github.com/rakudo/star/pull/58 | ||
[Coke] | if you want to match explicit code points, use them, not \n. | 21:37 | |
moritz | m: say so m/^ <[ \r\c[LF]]> $/ for "\r", "\r\n", "\n", "\x[2028]" | ||
camelia | rakudo-moar c8bd57: OUTPUT«FalseTrueFalseFalse» | ||
[Coke] | more like that, aye. | ||
moritz | m: say so m/^ <[ \r \r\c[LF]]> $/ for "\r", "\r\n", "\n", "\x[2028]" | ||
camelia | rakudo-moar c8bd57: OUTPUT«TrueTrueFalseFalse» | ||
moritz | m: say so m/^ <[ \c[LF] \r \r\c[LF]]> $/ for "\r", "\r\n", "\n", "\x[2028]" | ||
camelia | rakudo-moar c8bd57: OUTPUT«TrueTrueTrueFalse» | ||
moritz | leont: ^^ that looks good | 21:38 | |
leont | Yes, that does look good :-) | ||
vendethiel- | well, looks like php 7 just got released :P | ||
dalek | ar: b1970f8 | (Steve Mynott)++ | docs/cheatsheet.txt: reimport from mu repo golden source |
||
ar: 5b7b267 | moritz++ | docs/cheatsheet.txt: Merge pull request #58 from stmuk/master reimport cheatsheet from mu repo golden source |
|||
leont | vendethiel-: surely their timing is deliberate :-p | ||
vendethiel- | leont: Definitely! :P | ||
cygx | it's not yet too late to rename Perl6 to Perl7 ;) | ||
[Coke] | cygx: ENOFUNNY | ||
moritz does find it amusing | 21:40 | ||
21:40
bjz joined
|
|||
moritz find it highly satisfactory that Perl 6 delivers on the Unicode promise, where PHP threw it out, along with the 6 in the version number | 21:40 | ||
stmuk_ | what about Swifter 7? | 21:41 | |
I'm sure Apple's lawyers would be fine :) | |||
colomon | do we have a baked-in grammar token (or whatever) for matching floating point numbers? | 21:42 | |
21:42
jpoehls_ joined
|
|||
moritz | colomon: no | 21:43 | |
colomon: I wrote my own for JSON::Tiny | 21:44 | ||
(which you can steal :-) | |||
colomon | moritz++ # enabling theft | ||
21:45
bjz left
21:47
atweiden left
|
|||
cygx | 'night o/ | 21:47 | |
21:47
cygx left
|
|||
vendethiel- | also, swift open source: github.com/apple/swift | 21:47 | |
colomon | \o | ||
moritz | exciting times for a language geek | 21:49 | |
time to sleep, to be precise :-) | |||
o/ | |||
colomon | o\ | 21:50 | |
21:50
jpoehls_ left
|
|||
dalek | c: 7c0d062 | (Steve Mynott)++ | doc/Type/Cool.pod: remove refs to KeySet and KeyHash |
21:56 | |
autarch | has there been any discussion on publicity plans for the Perl 6 release? | 21:57 | |
it'd be cool if someone could write an article for LWN, and I suspect they'd be interested in publishing it | 21:58 | ||
jdv79 | autarch: why can you not? | 21:59 | |
autarch | jdv79: I was hoping someone else would volunteer ;) | ||
they pay actual money! | |||
jdv79 | but youre good | ||
jfdi:) | 22:00 | ||
autarch | easy for you to say ;) | ||
I'll ask them | 22:01 | ||
... unless someone else really wants to do it, which I'm 110% okay with ;) | |||
jdv79 | i vote for autarch | ||
leedo | autarch: i'm trying to get an article up on Ars Technica for the release | ||
autarch | I note for !autarch | ||
vote* | 22:02 | ||
jdv79 | haha | ||
autarch | maybe just nautarch | ||
jdv79 | wut | ||
autarch | it's a new operator I'm defining in Perl 6 - it resolves to "not me" | ||
22:02
skids left
|
|||
jdv79 | autarch: thanks! | 22:04 | |
22:06
raiph left
|
|||
mst | autarch++ # well volunteered | 22:07 | |
autarch writes the operator right now | |||
mst | TOO LATE | ||
22:10
lestrrat left
22:13
lestrrat joined
|
|||
jnthn | 'night, #perl6 | 22:15 | |
22:18
xfix left
22:31
cpage_ joined
|
|||
jdv79 | nite | 22:32 | |
22:32
cpage_ left
|
|||
jdv79 | autarch: we got your back. dont worry:) | 22:33 | |
dalek | kudo/nom: 446ea7b | (Stefan Seifert)++ | src/core/CompUnit/PrecompilationRepository.pm: Unlock precomp store even if loading a precomp file failed |
22:34 | |
22:34
cpage_ joined
22:38
AlexDaniel joined
22:39
lucasb joined
22:40
zakharyas left
|
|||
b7j0c | hello, earlier I discussed having a module for some common subset definitions. I created a module "Subsets::Common" following the directions on the 'Modules' documentation page as well as Travis CI integration for my test suite. The `Modules` documentation says I should come in here to have the upload to the modules.perl6.org site complete. The url is github.com/bradclawsie/Subsets-Common | 22:42 | |
could someone assist me with uploading this to the modules site or point me at a guide to do so? | 22:43 | ||
22:45
Peter_R left
|
|||
leont | You have to fork the ecosystem repo, and add a link to your repo | 22:46 | |
22:47
Peter_R joined
|
|||
b7j0c | thanks leont | 22:47 | |
leont | github.com/perl6/ecosystem/ | ||
22:48
vendethiel- left
|
|||
colomon is getting very frustrated trying to use panda post-curli. :\ | 22:49 | ||
leont had to get rid of all previously install modules before it would work normally | 22:51 | ||
AlexDaniel | colomon: you are not alone! | ||
22:52
AlexDaniel left
|
|||
colomon tries blowing away the entire .rakudobrew directory on his Linux boz | 22:53 | ||
box | |||
b7j0c | thanks again leont, i made a PR for ecosystem | 22:54 | |
22:58
AlexDaniel joined,
nadim left
|
|||
tony-o_ | is there a way to manually install modules.. | 23:00 | |
23:01
Amnez777 left
23:02
nadim joined,
cpage_ left
23:08
Amnez777 joined
23:09
aindilis left
23:10
aindilis joined
|
|||
leont | Not that I know, but I suspect it wouldn't be too hard to write | 23:10 | |
23:13
nadim left
23:14
nadim joined
23:16
b7j0c left
|
|||
Skarsnik | Should forcing like having a test with the use Test::Meta for each new module? (And maybe have Test::Meta check if all pm6 file in lib are provided) could be a good idea to ensure a sort of koalitee? x) | 23:17 | |
tony-o_ | great | ||
23:20
kid51 joined
|
|||
dalek | osystem: 8a9c332 | (brad clawsie)++ | META.list: Add Subsets::Common |
23:21 | |
osystem: 7c90a4e | (Steve Mynott)++ | META.list: Merge pull request #102 from bradclawsie/master Add Subsets::Common |
|||
lucasb | should Task::Star and rakudo star modules always be kept in sync? seems some modules exist in R* but are missing from Task::Star | 23:24 | |
diakopter | yes | 23:26 | |
lucasb | p6-Template-Mustache, p6-file-directory-tree, p6-File-Temp, library-make <-- these | 23:27 | |
tadzik: ^^^ | |||
flussence | aren't those just deps of other things? | ||
23:27
uruwi joined
|
|||
lucasb | flussence: indeed, it may be | 23:28 | |
flussence | I know the first is, because I had to use --notests to install Bailador because of it... | ||
tadzik | lucasb: yeah, Task::Star is too rarely updated | 23:40 | |
23:41
csd_ left,
zengargoyle left
23:42
Skarsnik left
23:44
zengargoyle joined
23:45
espadrine left
|
|||
tony-o_ | m: GLOBAL::.values.perl.say; | 23:46 | |
camelia | rakudo-moar 446ea7: OUTPUT«().Seq» | ||
tony-o_ | m: GLOBAL::.values.perl.say; require Test; | ||
camelia | rakudo-moar 446ea7: OUTPUT«().Seq» | ||
tony-o_ | m: GLOBAL::.values.perl.say; require Test; GLOBAL::.values.perl.say; | ||
camelia | rakudo-moar 446ea7: OUTPUT«().Seq(Test,).Seq» | ||
tony-o_ | m: GLOBAL::.values.perl.say; use Test; GLOBAL::.values.perl.say; | ||
camelia | rakudo-moar 446ea7: OUTPUT«(Test,).Seq(Test,).Seq» | ||
tony-o_ | is the rakudo moar old on camelia? | ||
ugexe | 446ea7 is the last commit | 23:47 | |
tony-o_ | m: $*VM.say; $*PERL.say; | ||
camelia | rakudo-moar 446ea7: OUTPUT«moar (2015.11.31.g.670.e.3.d)Perl 6 (6.b)» | ||
tony-o_ | i'm on the same version and doing that GLOBAL::.values dies on the second call | ||
guess i need to nuke | 23:48 | ||
23:50
rurban joined,
rurban left
|