»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:06
raiph left
00:08
ajr_ left
00:10
denis_boyun left
00:20
lizmat_ left,
lizmat joined
00:25
rurban left
00:28
[particle] left,
daniel-s joined
00:31
treehug88 left
00:33
berekuk left
00:34
raiph joined
00:36
vky left
00:39
rurban joined
00:53
Biohazard joined
01:01
hypolin joined,
hypolin left
|
|||
dalek | rl6-roast-data: 926db80 | coke++ | / (3 files): today (automated commit) |
01:04 | |
01:06
[particle] joined
01:09
Adriaaan left
|
|||
[Coke] | pugs has 4691 failures and could use some love. | 01:11 | |
01:12
cognominal left
01:21
skids joined
01:27
araujo joined
01:37
cognominal joined
01:46
kurahaupo__ left
|
|||
clsn__ | Some odd behavior when doing things I shouldn't be doing... | 01:48 | |
r: sub prefix:<]> ($x) { "-$x-" }; say "alive"; | 01:49 | ||
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«alive» | |||
clsn__ | whoa, that was weird. Didn't know JVM barfed. Anyway, that's at least normal (though the sub doesn't work, which is another issue). But look. | ||
r: sub prefix:<]> ($x) { ">x<" }; say "alive" # Note: differs only in contents of *string* in sub. | 01:50 | ||
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«alive» | |||
clsn__ | *blink*. It broke on my version. | ||
oh, wait, | 01:51 | ||
r: sub prefix:<]> ($x) { ">$x<" }; say "alive" # Note: differs only in contents of *string* in sub. | |||
camelia | rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnable to parse quote-words subscript; couldn't find right angle quoteat /tmp/tmpfile:1------> ers only in contents of *string* in sub.⏏<EOL>[…» | ||
..rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
clsn__ | Actually at least as puzzling, really; I thought it was the <>s in the string that broke it (and it apparently is), but the $ in $x seems to be necessary too. | ||
r: sub prefix:<]> ($x) { "-$x-" }; say ]"hello"; | 01:54 | ||
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnexpected closing bracketat /tmp/tmpfile:1------> sub prefix:<]> ($x) { "-$x-" }; say ⏏]"hello";» | |||
clsn__ | That's probably reasonable, I am being pretty evil here. ] won't work in prefix or postfix position, nor will ) or ]. Not-already-spoken-for closers like ﴿ or ⦄ work okay. Similarly, circumfix:<) (> doesn't work. Again, not really surprising. | 01:55 | |
01:55
araujo left
|
|||
clsn__ | Note however: | 01:56 | |
r: sub prefix:<)> ($x) { "--$x--" }; say \)"hello" | |||
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | 01:57 | |
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«hello» | |||
clsn__ | Without the \, fail. With the \, no error, but doesn't run the sub either. Curious. | ||
02:02
rurban left
02:03
FROGGS_ joined
02:06
FROGGS left
02:07
rurban joined,
rurban left
|
|||
clsn__ | Duh. OK, I see the problem with the ">$x<". The $x< looks like the beginning of "$x<something>". So nevermind, that error is correct. | 02:09 | |
BenGoldberg | r: sub prefix:<)> ($x) { "--$x--" }; say [)]"hello" | 02:19 | |
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnable to parse expression in array composer; couldn't find final ']' at /tmp/tmpfile:1------> sub prefix:<)> ($x) { "--$x--" }; say [⏏)]"hello…» | |||
BenGoldberg | r: sub prefix:<)> ($x) { "--$x--" }; say [\)]"hello" | 02:20 | |
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileYou can't backslash thatat /tmp/tmpfile:1------> ub prefix:<)> ($x) { "--$x--" }; say [\)⏏]"hello" expecting any of: argume…» | |||
BenGoldberg | "You can't backslash that"? | ||
clsn__ | Yeah, get that error a lot. Here's another weird one I just found: | 02:22 | |
r: say\("hi") | |||
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Bool' in any at gen/parrot/BOOTSTRAP.nqp:1692 in any at gen/parrot/BOOTSTRAP.nqp:1674 in block at /tmp/tmpfile:1» | |||
..rakudo-moar e4e862: OUTPUT«Cannot find method 'postcircumfix:<( )>' in block at /tmp/tmpfile:1» | |||
clsn__ | That's probably at least an LTA message. | ||
Spec says that \ should work as unspace even without spaces after it. It's fine with a space after it. | 02:23 | ||
r: \ say "x" | |||
camelia | rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«x» | ||
..rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
clsn__ | huh, I got You Can't Backslash That I think. But maybe I was in the REPL. | 02:24 | |
BenGoldberg | What's wrong the jakudo today? | ||
clsn__ | Dunno. I should stop using r: | ||
02:25
clsn__ is now known as clsn
|
|||
BenGoldberg | p: sub infix:<d> { "[" ~ @_.join(", ") ~ "]" }; say [d] 1..10 | 02:26 | |
camelia | rakudo-parrot e4e862: OUTPUT«[[[[[[[[[1, 2], 3], 4], 5], 6], 7], 8], 9], 10]» | ||
BenGoldberg | p: sub infix:<d> { "[" ~ @_.join(", ") ~ "]" }; say [Rd] 1..10 | ||
camelia | rakudo-parrot e4e862: OUTPUT«[10, [9, [8, [7, [6, [5, [4, [3, [2, 1]]]]]]]]]» | ||
BenGoldberg | If d were list assoc, the R version would problably, fail, but I forget the syntax :( | 02:27 | |
'is assoc(List)'? | |||
02:28
raiph left
|
|||
BenGoldberg | p: say [R,] 1..10 | 02:29 | |
camelia | rakudo-parrot e4e862: OUTPUT«Too many positional parameters passed; got 10 but expected 2 in block at gen/parrot/CORE.setting:16713 in sub at gen/parrot/CORE.setting:16820 in block at /tmp/CigNEozzxl:1» | ||
clsn | um. I just looked it up today. | 02:31 | |
BenGoldberg is looking it up presently. | |||
clsn | p: sub infix:<d> is assoc<list> { "[" ~ @_.join(", ") ~ "]" }; say [d] 1..10 | ||
camelia | rakudo-parrot e4e862: OUTPUT«[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]» | ||
clsn | p: sub infix:<d> is assoc<list> { "[" ~ @_.join(", ") ~ "]" }; say [Rd] 1..10 | 02:32 | |
camelia | rakudo-parrot e4e862: OUTPUT«Too many positional parameters passed; got 10 but expected 2 in block at gen/parrot/CORE.setting:16713 in sub at gen/parrot/CORE.setting:16820 in block at /tmp/UkNVzYdFBh:1» | ||
clsn | Guess you're right. | ||
clsn didn't realize/forgot you got a slurpy *@_ for free if you use it; I've been typing it in the signature always. | 02:33 | ||
BenGoldberg | p: sub infix:<d> is assoc('list') { "[@_]" }; say [Rd] 1..4 | ||
camelia | rakudo-parrot e4e862: OUTPUT«Too many positional parameters passed; got 4 but expected 2 in block at gen/parrot/CORE.setting:16713 in sub at gen/parrot/CORE.setting:16820 in block at /tmp/WN3bXKIRQm:1» | ||
BenGoldberg | p: sub infix:<d> is assoc('list') { "[@_]" }; say [d] 1..4 | 02:34 | |
camelia | rakudo-parrot e4e862: OUTPUT«[@_]» | ||
BenGoldberg | p: sub infix:<d> is assoc('list') { "["~@_.join(", ")~"]" }; say [d] 1..4 | ||
camelia | rakudo-parrot e4e862: OUTPUT«[1, 2, 3, 4]» | ||
BenGoldberg | p: sub infix:<d> is assoc('list') { "["~@_.join(", ")~"]" }; say [Rd] 1..4 | ||
camelia | rakudo-parrot e4e862: OUTPUT«Too many positional parameters passed; got 4 but expected 2 in block at gen/parrot/CORE.setting:16713 in sub at gen/parrot/CORE.setting:16820 in block at /tmp/d35JhyyvxK:1» | ||
BenGoldberg | p: sub infix:<d> is assoc('list') { "["~@_.join(", ")~"]" }; say [Rd] 1..2 | ||
camelia | rakudo-parrot e4e862: OUTPUT«[2, 1]» | ||
BenGoldberg | n: sub infix:<d> is assoc('list') { "["~@_.join(", ")~"]" }; say [Rd] 1..2 | 02:35 | |
camelia | niecza v24-109-g48a8de3: OUTPUT«[2, 1]» | ||
BenGoldberg | n: sub infix:<d> is assoc('list') { "["~@_.join(", ")~"]" }; say [Rd] 1..4 | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Excess arguments to ANON, used 2 of 4 positionals at /tmp/4XCcsaB85y line 0 (ANON @ 1)  at /home/p6eval/niecza/lib/CORE.setting line 2767 (reduceop @ 12)  at /tmp/4XCcsaB85y line 1 (mainline @ 4)  at /home/p6eval/n…» | ||
BenGoldberg | n: srand(42); print 'Ps c,uret neet AJohrkHalr'.comb.pick(*) | 02:38 | |
camelia | niecza v24-109-g48a8de3: OUTPUT«Just Another Perl Hacker,» | ||
clsn | whoa... | ||
BenGoldberg | magic! :) | 02:39 | |
clsn | p: sub infix:<m> is assoc<non> { "<@_.join(', ')>" }; say 7 m 8 | ||
camelia | rakudo-parrot e4e862: OUTPUT«<7, 8>» | ||
clsn | That's fine. | ||
p: sub infix:<m> is assoc<non> { "<@_.join(', ')>" }; say 7 m 8 m 9 | |||
camelia | rakudo-parrot e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/FIIiv9k_aUOperators 'm' and 'm' are non-associative and require parenthesisat /tmp/FIIiv9k_aU:1------> c<non> { "<@_.join(', ')>" }; say 7 m 8 ⏏m 9 expecting an…» | ||
clsn | that's also fine. | ||
p: sub infix:<m> is assoc<non> { "<@_.join(', ')>" }; say [m] 1..5 | |||
camelia | rakudo-parrot e4e862: OUTPUT«<<<<1, 2>, 3>, 4>, 5>» | ||
clsn | That's weird. | ||
If it's non-associative, how can we reduce over it? | 02:40 | ||
BenGoldberg | Bug? | ||
clsn | I'm thinking maybe... I'm just exploring edge cases here. | ||
BenGoldberg | m: srand(42); ('a'..'z').pick(*).print | 02:41 | |
camelia | rakudo-moar e4e862: OUTPUT«wrpmxatygiqsuflonvjedhbzkc» | ||
BenGoldberg | Good | ||
p: srand(42); ('a'..'z').pick(*).print | |||
camelia | rakudo-parrot e4e862: OUTPUT«ipbxqyuowgzcfmhlvndatjsekr» | ||
rakudo-parrot e4e862: OUTPUT«dqhxmjskpytvigawfbczrleuno» | |||
BenGoldberg | Not good. Still not fixed. | ||
clsn | srand doesn't srand? | ||
BenGoldberg | On parrot, srand only affects rand, not pick | 02:42 | |
clsn | Ah. | ||
BenGoldberg | If I wanted to, I could make a japh like one I did for niecza, above, but for moar. | 02:43 | |
But until parrot's srand affects pick, I can't do it for parrot. | |||
clsn | Yeah, once you know the sequence you can just work it backwards. | ||
BenGoldberg | Exactly | 02:44 | |
Here's another bug: | |||
rn: say (1e-14).fmt('%.18f') | |||
camelia | niecza v24-109-g48a8de3: OUTPUT«0.000000000000010000» | ||
..rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«0.000000000000009984» | |||
BenGoldberg | That's ok | ||
rn: say (1e-14).fmt('%.19f') | |||
That's not | |||
camelia | rakudo-parrot e4e862: OUTPUT«0.0000000000000100352» | ||
..rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
..niecza v24-109-g48a8de3: OUTPUT«0.0000000000000100000» | |||
..rakudo-moar e4e862: OUTPUT«0..92233720368548e+19» | |||
BenGoldberg | 0.92233 ... | 02:45 | |
Err, 0..92233 | |||
clsn | Yeah, but formatting of floats is a catastrophe in rakudo from what I've seen. | ||
BenGoldberg | parrot's output is... well, not perfect, but at least not horribly wrong, considering how many significant bits I'm asking it to output. | 02:47 | |
jvm's, iirc, wasn't horrible either. | 02:48 | ||
clsn | p: say pi.fmt('%.20f') | ||
camelia | rakudo-parrot e4e862: OUTPUT«3.01.4159265358979e+19» | ||
BenGoldberg | But that ".." in the formated string, that's just Wrong | ||
clsn | That's slightly horrible. | ||
m: say pi.fmt('%.20f') | |||
camelia | rakudo-moar e4e862: OUTPUT«3.-1.09223372036855e+2» | ||
clsn | So is that. | ||
BenGoldberg | Yeah, that does suck | 02:49 | |
clsn | It's always the same string in moar; 92233720368548 | ||
Looks like List.pick uses nqp::rand_I and not rand, and I guess that doesn't respect srand. | |||
BenGoldberg | You're right, I just noticed that. Betcha there's an off by one error in moar, and it's reading beyond the end of the number. | 02:50 | |
clsn | I don't know why nqp::rand_I and not rand; maybe there's a good reason. | ||
n: say pi.fmt('%.19f') | 02:51 | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«3.1415926535897900000» | ||
japhb__ | rand usually has very few actual random bits in many libc's? | ||
BenGoldberg | p6: say pi.Rat | ||
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862, niecza v24-109-g48a8de3: OUTPUT«3.141593» | |||
BenGoldberg | nqp::rand returns a num, nqp::rand_I returns an int | 02:52 | |
Notice how turning a Num into a Rat throws away so many significant digits? That's pretty suckey ;) | 02:53 | ||
p6: say pi.Str.Rat | |||
camelia | rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«3.14159265358979» | ||
..rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | |||
..niecza v24-109-g48a8de3: OUTPUT«3.141593» | |||
02:53
regreg joined
|
|||
BenGoldberg | Converting to Str first improves the situation on rakudo, but not niecza | 02:54 | |
02:55
[particle]1 joined
02:57
[particle] left
|
|||
japhb__ | p6: say ~pi.Rat | 03:07 | |
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862, niecza v24-109-g48a8de3: OUTPUT«3.141593» | |||
japhb__ | p6: say pi.Rat.perl | ||
camelia | rakudo-jvm e4e862: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | 03:08 | |
..rakudo-parrot e4e862, rakudo-moar e4e862, niecza v24-109-g48a8de3: OUTPUT«<355/113>» | |||
japhb__ | Well, at least they're consistent | ||
03:08
rurban joined
03:11
jnap left,
skids left
03:15
Timbus joined
03:27
skids joined
03:41
rurban left
03:58
thou left
04:01
cbk joined
04:06
[particle] joined
04:09
[particle]1 left
|
|||
cbk | What would be the best way to search a line of strings for \#\w+ ( example: #someWord) and put ALL of the matches into an array? | 04:17 | |
I have the following but it only works on the first match... | 04:18 | ||
if $data ~~ m/ (\#\w+) / { @findings.push($/.Str); say "found: $/"; } say @findings; | |||
04:19
ArmBears joined
04:21
ArmBears_ joined
04:23
[particle]1 joined,
[particle] left
04:27
ArmBears left
04:31
[particle] joined
04:33
[particle]1 left
04:38
rurban joined
|
|||
japhb__ | p: my $data = "There are some #hashTags in this #string and I #want_them"; $data ~~ m:g/(\#\w+)/; $/.perl.say | 04:52 | |
camelia | rakudo-parrot e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/58YqdqoenOUnspace not allowed in regexat /tmp/58YqdqoenO:1------> ring and I #want_them"; $data ~~ m:g/(\#⏏\w+)/; $/.perl.say» | ||
japhb__ | p: my $data = "There are some #hashTags in this #string and I #want_them"; $data ~~ m:g/('#'\w+)/; $/.perl.say | ||
camelia | rakudo-parrot e4e862: OUTPUT«Match.new(orig => "There are some #hashTags in this #string and I #want_them", from => 47, to => 57, ast => Any, list => (Match.new(orig => "There are some #hashTags in this #string and I #want_them", from => 47, to => 57, ast => Any, list => ().list, ha…» | ||
japhb__ | p: my $data = "There are some #hashTags in this #string and I #want_them"; $data ~~ m:g/('#'\w+)/; $/.say | 04:53 | |
camelia | rakudo-parrot e4e862: OUTPUT«「#want_them」 0 => 「#want_them」» | ||
japhb__ | p: my $data = "There are some #hashTags in this #string and I #want_them"; .say for $data ~~ m:g/('#'\w+)/; | 04:54 | |
camelia | rakudo-parrot e4e862: OUTPUT«False» | ||
04:57
lue left
|
|||
japhb__ | p: my $data = "There are some #hashTags in this #string and I #want_them"; $data ~~ m/[.*? ('#'\w+)]+/; $/.say | 04:57 | |
camelia | rakudo-parrot e4e862: OUTPUT«「There are some #hashTags in this #string and I #want_them」 0 => 「#hashTags」 0 => 「#string」 0 => 「#want_them」» | ||
japhb__ | There you go. | 04:58 | |
cbk: ^^ | |||
cbk | japhb_, ok so that IS what I was looking for. I was looking into writing a grammar for it... making things harder then they needed to be. | 05:02 | |
Thank you very much. | |||
Wish I knew more about perl6 regex and grammars! | 05:03 | ||
japhb_++ | 05:05 | ||
or is that still a thing? (the ++) | |||
05:09
lue joined
|
|||
cbk | japhb_, YES this is working real good: if $data ~~ m/[.*? ('#'\w+)]+/ { @findings.push($0); } say @findings.Str; | 05:14 | |
japhb_, Thanks again! | |||
05:23
[Sno] left
|
|||
moritz | j: say 42 | 05:27 | |
camelia | rakudo-jvm e4e862: OUTPUT«42» | ||
05:30
regreg left
05:39
LingeringSouls joined
05:40
grondilu left
05:58
BenGoldberg left
|
|||
lue | what does WAT stand for? I can't watch the video S99 links to. | 06:06 | |
moritz | lue: it's short what WHHAAAAAAAAAAAAAAAAAAAAAAT | 06:11 | |
lue | ah, I thought it might be "Why All This?" or something :) | ||
06:17
dayangkun left
|
|||
japhb__ | cbk, you're quite welcome. :-) | 06:18 | |
06:31
dayangkun joined
06:46
rurban left
06:47
[Sno] joined
07:00
berekuk joined
07:01
erkan joined
07:11
berekuk left
07:13
FROGGS_ left
07:25
FROGGS_ joined
|
|||
masak | morning, #perl6 | 07:31 | |
masak .oO( Why All This Life, Universe, and Everything? ) | 07:32 | ||
07:35
darutoko joined
07:43
SamuraiJack__ joined
07:47
rurban joined
07:50
daniel-s left
|
|||
pmichaud | morning, masak /o | 07:59 | |
er, o/ | |||
08:02
zakharyas joined
|
|||
pmichaud | off to bed, here | 08:02 | |
08:04
denis_boyun joined
08:07
frettled_ is now known as frettled
|
|||
frettled | masak morning pmichaud, good. | 08:08 | |
08:09
berekuk joined
08:13
dmol joined
08:15
SamuraiJack__ left
08:17
raiph joined
|
|||
jnthn | o/ | 08:20 | |
08:21
rurban left
|
|||
jnthn | clsn, BenGoldberg: Note that r-m still has failing tests in sprintf.t, which may well relate to the issues you're seeing. Also that it wasn't much more than a month ago when it didn't even run the spectests at all. :) | 08:25 | |
FROGGS_ | o/ | ||
08:36
kaleem joined
|
|||
timotimo | o/ | 08:39 | |
jnthn | commute & | 08:40 | |
Ulti | headphones | tee <(commute --in park) > work | 08:42 | |
08:43
denis_boyun left
08:52
berekuk left
08:56
rindolf joined
08:57
sqirrel joined
08:58
raiph left
09:07
regreg joined
09:17
rurban joined
09:34
SamuraiJack__ joined
09:46
dayangkun left
09:48
kivutar joined
09:50
rurban left,
kst left
10:04
kivutar left
|
|||
Ulti | out of interest what is meant to happen with the ... operator when the interval you pick only fractionally fits the final number in the sequence? | 10:08 | |
FROGGS_ | it should complain about that I think | ||
Ulti | at the moment it just hangs for me rather than complaining or just giving you all the numbers upto before the end | 10:09 | |
gist.github.com/MattOates/8860147 an example | 10:13 | ||
oh if you wait long enough insane numbers come out | 10:14 | ||
I must really really reall be doing something super dumb | |||
jnthn | You have to *match* the end point, not pass it... | 10:19 | |
I think you can use * < 100 or so as an end point, though. | 10:20 | ||
10:25
pecastro joined
10:28
regreg left
|
|||
moritz | probably * >= @list.end | 10:32 | |
timotimo | the end point is supposed to give true for "this is the end" | 10:36 | |
so for an increasing series, you'd want something like * > $foo | |||
why did i even start watching the ken ham / bill nye debate? | 10:37 | ||
jnthn | timotimo: 'cus you miss your headache and want it back? :) | 10:39 | |
timotimo | that must be it | ||
there's something i find insanely unsettling about mr. ham's claims that we cannot assume that natural laws have been valid in the past, or at least have been the same way they are now | 10:40 | ||
he demonstrates this in many pieces of his argumentation, like "you can't trust radiometric dating, because you have to assume 1) ... 2) ... 3) that the rate of radioactive decay was the same back then as it is now" | 10:41 | ||
or "you can't trust the rings of a tree as proper information, because you weren't there when they formed!" | |||
also, i find it incredibly irritating that he claims that "the laws of logic" could only exist because there is some kind of creator | 10:44 | ||
that's just .... what ?! | |||
moritz | that's indeed WTF | 10:45 | |
though there is indeed some serious physics/astronomy research that tries to find out if coupling constants have changed in the past | 10:46 | ||
timotimo | interestingly, he says we have to be extra cautious about natural laws being not valid a few thousand years ago, but somehow the translation of the bible is absolutely, completely exact over the same amount of time? | ||
moritz | (so far there's no evidence for that) | ||
timotimo | it's a good thing that such an experiment has been started | ||
moritz | also, xkcd.com/386/ :-) | 10:47 | |
timotimo | xkcd.com/154/ | ||
but somehow it seems to me that no matter how much ground we can take away from people with such extraordinary beliefs (and pitifully few pieces of evidence), they *always* find something they can cling to and convince others with their rethoric capabilities | 10:48 | ||
Ulti | timotimo: its true you can't assume evolution has always been the way it is now though, but really thats more of an argument of making it work faster further back in time :) | ||
10:48
crab2313 joined
|
|||
timotimo | Ulti: this isn't only about evolution ... tree rings forming, bubbles in ice cores from drillings near the poles ... | 10:48 | |
Ulti | timotimo: what I dont understand is why they care so much... you can just say God invented evolution and from the start of the Earth knew that humans would come out as a product | 10:49 | |
timotimo | following this line of beliefs leads down an *incredible* rabbit-hole | ||
yes, you *could*, but that's not what's in Genesis | |||
and this person is the CEO of Answers in Genesis | |||
Ulti | timotimo: yeah the young earth concept is fairly crazy, but thats what I mean there is nothing saying they have to think that | ||
timotimo | well, apparently if you follow the bible literally (litterally? haha), you find not only the 6 24-hour days interpretation of the creation of the universe, but also the life times of all the major characters would line up to give a figure of about 6000 years age of the universe | 10:50 | |
Ulti | timotimo making Adam out of clay is consistent with Evolutionary theory :) | 10:51 | |
10:51
fhelmberger joined
|
|||
timotimo | yeah. "if eve wasn't formed from a rib stolen off of adam, why do men have one fewer rib than women?" | 10:52 | |
Ulti | there is a nice bit of the Bible that also says that a day for God is like a thousand days for humans too | ||
timotimo: we do | |||
well one fewer than many other male mammals | |||
timotimo | that's amusing, but besides the point :) | 10:53 | |
anyway, i'll dig into moarvm smallint work now | |||
hoelzro | morning Perl6 folk | 10:54 | |
masak .oO( the reclusive Perl 6 folk, hiding in caves in the mountains ) | 11:02 | ||
11:04
SamuraiJack__ left,
SamuraiJack__ joined
|
|||
Ulti | I can't see anything about something like 1,4...*<9 in perlcabal.org/syn/S03.html#Range_an..._semantics | 11:07 | |
does 1,4...9 do what anyone expects? | 11:08 | ||
jnthn | But ... is about sequences, not ranges | ||
Ulti | sure but I can't do :by on a range | ||
and if you want to segment up a list this is nice syntax that's kind of not for you even if you expect it to be | |||
11:26
Ven joined
11:38
FROGGS_ left
|
|||
Ven | Uuuh. The bug that I noticed last time with perl6-debug disappeared. And I didn't even restart the comp ._. (I guess that's good news, though) | 11:52 | |
good news is that my program still can't run with perl6-debug. Need a new test case ... | 11:53 | ||
12:01
denis_boyun joined
12:09
dalek left
12:10
dalek joined,
ChanServ sets mode: +v dalek
12:15
sqirrel left
12:22
Adriaaan joined
12:29
zakharyas left
12:31
crab2313 left
12:32
zakharyas joined
12:34
zakharyas left
12:35
zakharyas joined
12:38
stevan_ joined
|
|||
timotimo | got some LHF for someone | 12:38 | |
12:39
ArmBears_ left
|
|||
timotimo | the nqp test suite is lacking bigint tests for radix_I and tonum_I | 12:39 | |
corecatcher: ^ sounds interesting? | |||
also lacks tests for mod_I | 12:40 | ||
i just got a full rakudo compile with smallbigint support | 12:43 | ||
12:43
SamuraiJack__ left,
SamuraiJack__ joined
12:44
SamuraiJack__ left,
SamuraiJack__ joined
|
|||
timotimo | now i made it through the test suite, but forgot to use the summary script, so i won't see if any bigint related fails are happening m) | 12:46 | |
12:46
SamuraiJack__ left,
SamuraiJack joined
|
|||
hoelzro | what determines which perl6-? is installed as perl6? | 12:51 | |
yakudza | hoelzro, #which perl6 maybe ? | 12:53 | |
hoelzro | yakudza: sorry? | ||
timotimo | whichever is the first one in --backend= or whichever is found first (usually jvm) | 12:54 | |
hoelzro | ahhhh | ||
timotimo | but it's just a symlink, so AFAICT you can just redirect that | ||
hoelzro | I'm looking at ufo (I'm trying rakudo-star modules with perl6-m and seeing which don't work), and I'm wondering how the case should be handled when the user has multiple backends installed | 12:55 | |
(although that's probably very infrequent for regular users) | |||
12:56
skids left
12:57
xinming_ joined
|
|||
hoelzro | so if the backend is parrot, ufo should write a makefile that generates pir files | 12:57 | |
hmm | |||
I'm guessing that it should just correspond to the backend that's running | 12:58 | ||
and if a user wants to explicitly install for a given backend, they can just do perl6-j ufo | |||
timotimo | the GSoC project "let rakudo handle precomp" would be helpful here | 12:59 | |
hoelzro | timotimo: link? | ||
timotimo | wiki.enlightenedperl.org/gsoc2014/ideas | ||
13:00
xinming left
|
|||
hoelzro | timotimo: so would that entail a backend-agnostic way of generating precompiled modules from an input? | 13:01 | |
ex. perl6 --compile-module Module.pm > Module.pmc | |||
(.pmc is taken though, right?) | |||
jnthn | Well, in the end it's just gonna be perl6 --install Foo.pm, once we get the comp unit repo stuff in place? | 13:02 | |
timotimo | hoelzro: i think so | 13:03 | |
with what jnthn said | |||
hoelzro | I see | ||
so ufo will go away? | |||
timotimo | if rakudo will handle dependencies, as well, yeah | 13:05 | |
but setting up a little test runner and stuff would still be neat | |||
13:10
kaare_ left
|
|||
hoelzro | for the time being, though, ufo is the way to go, right? | 13:12 | |
jnthn | hoelzro: yes | ||
hoelzro | ok | ||
now I know what to work on tomorrow =) | 13:13 | ||
13:13
telex left
13:14
telex joined
13:19
ajr joined,
sqirrel joined,
FROGGS joined,
ajr is now known as Guest89848
13:20
Guest89848 is now known as ajr_,
kivutar joined
13:29
kbaker joined
13:32
kurahaupo_mobile joined
13:54
mtk left
13:57
mtk joined
|
|||
timotimo | if someone wants to spent a little bit of time with moarvm, the jnthn_bigint_opt branch causes a few test failures in the rakudo spectest suite: t/spec/S03-operators/arith.t tests 2-3 (the rest fail in master, too); t/spec/S03-operators/numeric-shift.t (only new failures); t/spec/integration/lazy-bentley-generator.t (1 failure on the branch, 0 on master) | 13:57 | |
you would have to look at src/math/bigintops.c; especially the bigint_shl and bigint_shr opcodes seem to be pretty terribly wrong when it comes to negative numbers | 13:58 | ||
14:01
sqirrel left
14:06
mavcunha joined
14:18
SamuraiJack left,
SamuraiJack joined
14:22
SamuraiJack left,
SamuraiJack joined,
Alina-malina left
14:23
kaleem left,
prevost joined
14:24
Alina-malina joined
14:29
skids joined
14:32
thou joined
14:34
jnap joined
14:40
fhelmberger left
14:41
treehug88 joined
14:43
sqirrel joined
14:46
johnmilton joined,
johnmilton left
14:48
bluescreen10 joined
14:49
denis_boyun left,
ggoebel1115 joined
14:53
ggoebel1114 left,
stevan_ left
14:56
btyler joined
14:57
tengignick joined
14:59
tengignick left
15:06
benabik joined
15:13
regreg joined
15:28
benabik left
|
|||
timotimo | d'oh | 15:33 | |
i started the benchmark run and it immediately failed | |||
i wrote nqp-moar instead of nqp-moarvm | |||
so it didn't even build a single backend :( | |||
masak | from the bright side, it ran very quickly :> | 15:34 | |
timotimo | i ran somewhat quickly, too | 15:35 | |
5.3 km/h average | |||
PerlJam | 5.3km/h isn't much of a run. More like a fast walk. | 15:37 | |
timotimo | yes | 15:38 | |
it was a walk | |||
i'm not very good at walking slowly, or at a "normal" pace | |||
15:44
sqirrel left
|
|||
moritz just got the "jQuery Cookbook", and its author is literally "jQuery community Experts". | 15:49 | ||
moritz likes that | 15:50 | ||
15:54
Woodi___2 joined,
Woodi___2 left
15:58
Woodi joined
15:59
Psyche^_ joined
16:02
Psyche^ left
16:08
mtk left
|
|||
timotimo | hm, surprisingly little activity in perl6land today | 16:10 | |
seems like i'll have to look into these test failures myself later :\ | 16:11 | ||
jnthn | timotimo: Well, I'm doing $dayjob bits today :) | ||
16:14
mavcunha left
16:18
SamuraiJack left
16:19
denis_boyun joined
16:21
mtk joined
16:24
[Sno] left
16:41
fhelmberger joined
16:45
fhelmberger left
16:46
zakharyas left
16:53
smls joined
|
|||
masak | sorry, I've been stealing jnthn today ;) | 16:55 | |
smls | jnthn: "in the end it's just gonna be perl6 --install Foo.pm" ... Are you sure it's wise to tie module distribution/installation so closely to the language implementation? | 16:56 | |
Doesn't experience with other languages suggest that packaging/distribution/installation tools will want (need?) to evolve even long after the language is stable? | 16:57 | ||
timotimo | you have? | 16:58 | |
TimToady | smls: that's just a SMODI | 16:59 | |
smls | A what? | 17:00 | |
nwc10 | bad masak, no curry | ||
TimToady | or a SMOIOC | 17:01 | |
which I guess is a SMOCLONE | |||
timotimo | small matter of dependency injection? | 17:02 | |
and inversion of control for the second one? | |||
jnthn | iirc the design is such you can change what --install means | 17:04 | |
smls | ah | 17:06 | |
TimToady | jnthn: but who is "you" there? | 17:07 | |
some days it's much easier for me to play the part of a confused person... | 17:10 | ||
this would be one of those days | |||
colomon is not playing a part far too often... | |||
17:11
pecastro left,
prevost left
|
|||
jnthn | TimToady: "somebody other than Rakudo compiler devs" :) | 17:14 | |
smls | For what it's worth, I think Python has arrived at a pretty good set of distribution/installation tools (pip, virtualenv, ...). | 17:17 | |
But that wasn't always the case; it evolved separately from the language and asserted itself against competing solutions "in the market", so to speak. | |||
btyler | althougn not without some growing pains (easy_install, etc) | ||
*although | |||
smls | The point is, some of the use-cases covered by the moden tools were probably not even anticipated by the original creators of Python. | 17:18 | |
17:18
ajr_ left
|
|||
geekosaur | what is this "-s" | 17:18 | |
17:19
ajr joined,
ajr is now known as Guest28458,
Guest28458 is now known as ajr_
17:25
denis_boyun left
|
|||
timotimo | i would really love to see rakudo come with a nice virtualenv-like solution | 17:29 | |
17:35
ajr_ left
17:39
alester joined
|
|||
raydiak | morning | 17:47 | |
17:49
molaf joined
17:52
[Sno] joined
|
|||
timotimo | benchmarking rakudo-jvm takes sooooo looooooong >_< | 17:55 | |
actually, i think after that i still have set it up to benchmark nqp-{moarvm,parrot,jvm} | 17:56 | ||
raydiak | I have tried for a couple days to answer this question on my own, but I feel like I'm just wasting time spinning my wheels: is there any way to control how my class behaves in list/item/sink context? specifically I want a subclass of Array to not flatten | 18:10 | |
moritz | raydiak: well, sink context simply calls method sink | 18:11 | |
controlling flattening isn't that easy, I fear | 18:12 | ||
I'll think about it a bit; dinner first& | |||
timotimo | aye, that indeed seems like a problematic spot | ||
raydiak | moritz: thanks, I'll add that to my notes; I guess my question assumed the answer would be the same for any context...list is the one I have problems with | ||
timotimo | would "is Positional" be a big contributor to that? | ||
18:13
rurban joined
|
|||
timotimo | i seem to recall at least one piece of code checking for istype Positional before flattening | 18:13 | |
raydiak cannot figure out what positional even does...the content of core/Positional.pm is not helpful | |||
of course I mean "does" from an internals standpoint...I understand what the specs say about it | 18:14 | ||
List and Array have methods and private attributes for flat and flattens and such, but overriding them in my class seems to have no effect | |||
and reading the comments, it looks like $!flattens has more to do with whether it flattens it's contents, not whether it itself flattens | 18:15 | ||
18:16
telex left,
ajr joined
18:17
ajr is now known as Guest9937
|
|||
timotimo | well, accessing a private variable will never cross class boundaries | 18:17 | |
18:17
Guest9937 is now known as ajr_
|
|||
timotimo | if you access $!flattens in a subclass, you'll get an error, if you define $!flattens in your subclass, it'll be a separate attribute | 18:17 | |
you can nqp::bindattr(self, ParentClass, '$!flattens', 1) and see if that helps any | 18:18 | ||
but that's rakudo-specific unfortunately | |||
raydiak | erm...duh; thank you...guess I'm losing track of the "little" stuff in the hunt for my big white whale :P | 18:19 | |
timotimo | ;) | ||
ajr_ | apropos this morning's discussion of distribution tools, I have a little script for downloading & installing rakudo* | ||
timotimo | er, hold on | ||
ajr_ | If anyone wants it, they're welcome to it. | ||
timotimo | i seem to remember a discussion very recently about calling private methods in your parent (or child) class | ||
i think it didn't work for attributes, though | 18:20 | ||
raydiak | yeah, using trusts | ||
timotimo | i thought it would work without trusts | ||
raydiak | oh that'd be neat | ||
timotimo | ah, no, that's only for if you're in the same class, but try to access a private method of a different instance of your same class | ||
i think you're right | |||
i think i ought to organise some dinner and maybe do some $dayjob afterwards | 18:21 | ||
still benchmarking rakudo-jvm >_> | |||
FROGGS | I am done with $dayjob \o/ | ||
raydiak | but again, I don't think $!flattens actually does what I want anyway, if I'm reading correctly | 18:22 | |
timotimo | may be, aye | ||
raydiak | thank you for the advice timotimo, enjoy dinner :) | ||
timotimo | you can inspect instances with .DUMP, btw | ||
it should display the value of flattens and other private attributes clearly | |||
it's not too late to go to the less distant grocery store \o/ | 18:23 | ||
i'ma gettin' me some cukes, aaaaaw yiss! | |||
raydiak | cool, I'll try DUMP while I'm poking around at things | ||
nwc10 | FROGGS: is qx{} the only pipe related thing that Panda needs? Or does it use others, but only for rare things? | ||
18:26
SamuraiJack joined
18:31
SamuraiJack left
18:38
smls left
|
|||
raydiak | r: class Foo is Array { method mkfoo(|a) { my $self = self.new(|a); nqp::bindattr($self, List, '$!flattens', False); return $self; } }; my @foo = (^3).map: {Foo.mkfoo($_,$_)}; say @foo.perl; | 18:40 | |
camelia | rakudo-moar e4e862: OUTPUT«P6opaque: no such attribute '$!flattens' in method mkfoo at /tmp/tmpfile:1 in block at /tmp/tmpfile:1» | ||
..rakudo-parrot e4e862: OUTPUT«Can not bind attribute '$!flattens' declared in class 'List' with this object in method mkfoo at /tmp/tmpfile:1 in block at /tmp/tmpfile:1» | |||
..rakudo-jvm e4e862: OUTPUT«java.lang.RuntimeException: No such attribute '$!flattens' for this object in method mkfoo at /tmp/tmpfile:1 in block at /tmp/tmpfile:1» | |||
18:41
zakharyas joined
|
|||
raydiak | what am I doing wrong? | 18:41 | |
18:47
araujo joined
|
|||
timotimo | does Array derive from List? | 18:53 | |
p: say Array.mro; | |||
camelia | rakudo-parrot e4e862: OUTPUT«No such method 'mro' for invocant of type 'Array' in block at /tmp/leSYYYnZaK:1» | ||
timotimo | p: say Array.^mro; | ||
camelia | rakudo-parrot e4e862: OUTPUT«(Array) (List) (Iterable) (Cool) (Any) (Mu)» | ||
timotimo | ah, indeed. | ||
huh. | |||
raydiak | I can at least feel good that I didn't waste all this time on an easy problem :) sometimes I get in these jams and when I finally ask, someone has the answer in 5 seconds | 18:56 | |
timotimo | i know that feel | 18:57 | |
i also often feel bad for nagging other perl6ers with my problems ;) | |||
TimToady | trying to make a non-flattening array type by derivation from Array just feels all wrong to me | 18:58 | |
arrays naturally are itemized by the itemizing process of putting them in a $ container | |||
18:59
nsh joined
|
|||
TimToady | that's a user decision, not the class decision | 18:59 | |
18:59
nsh left,
nsh joined
|
|||
TimToady | at best, you could do a has instead, possibly delegation to an Array | 18:59 | |
19:00
grondilu joined
|
|||
raydiak | when I put it in a $, that works fine...just not when I do @ary.push: DontFlattenMe.new() | 19:00 | |
grondilu | std: say { { $a ~ $^b }($^a) }("foo"); | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===Variable $a is not predeclared at /tmp/E6fDSa03vD line 1:------> say { { ⏏$a ~ $^b }($^a) }("foo");Check failedFAILED 00:01 126m» | ||
TimToady | functions and methods (such as new()) return parcels, which are officially uncommitted | 19:01 | |
grondilu | std: say { .($^a) given { $a ~ $^b } }("foo"); | 19:02 | |
camelia | std 09dda5b: OUTPUT«ok 00:01 126m» | ||
grondilu | rn: say { .($^a) given { $a ~ $^b } }("foo"); | ||
TimToady | you could have the constructor itemize self, but then it'd probably leak out other places | ||
raydiak | wait, what if I just tack '.item' on to the return from the constructor...or all the methods? | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862, niecza v24-109-g48a8de3: OUTPUT«foofoo» | ||
raydiak | right | ||
TimToady | well, it's not "self" to the constructor, but what bless returns | 19:03 | |
skids | r: say uint111.^mro # on non-ICU star this gives "no ICU lib loaded" for any bogus uint size, but not for int. | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUndeclared routine: uint111 used at line 1» | ||
TimToady | that'd be more or less what [...] returns | ||
of course, you could also just return an ordinary array, put .item on where it's called, and then it's documented to the user :) | 19:05 | ||
raydiak | this is true :) | ||
TimToady | or define a .push-items | ||
which just push with a ** instead of a * | 19:06 | ||
or, if lol were implemented, push lol ... | |||
raydiak | I know we already had this discussion, but is there something more appropriate than Array, which does not flatten? | 19:07 | |
TimToady | what do you want it for? | ||
raydiak | vectors and matrices | ||
japhb's Math::ThreeD proposal...I've put a lot of work in on it | 19:08 | ||
TimToady | when *do* you want to trate them as plural rather than singular? | 19:09 | |
*treat | |||
raydiak | probably no time, except when they do a zen slice explicitly or something | 19:10 | |
TimToady | there are lots of objects that are mostly singular on the outside, and plural on the inside | ||
we don't generally try to force them into the Array mold | |||
19:11
darutoko left
|
|||
raydiak | it also needs to be fast and use native types when they are more fully working | 19:11 | |
TimToady | these guys sound like items that happen to have shaped arrays on the inside, but it's a has-a relationship, not an is-a relationship | ||
sure, I have no problem with speed :) | |||
the compiler is supposed to be smart about native attributes | 19:12 | ||
timotimo | .o( he doesn't have a problem with drugs^Wspeed, he just doesn't get them^Wit ) | ||
raydiak | :) | ||
TimToady | I think this will all become much clearer when we actually have shaped arrays | 19:14 | |
timotimo | i'm looking forward to that. and native/packed arrays | ||
TimToady | anyone wanna implement S09 this weekend? :D | ||
raydiak | that'd be great...right now the matrices are just implemented as a single array with overloaded subscripting to make it "look" 2D | 19:15 | |
PerlJam | I sometimes wonder how hard it would be to wire the C bits of PDL to rakudo | ||
timotimo | i wonder if we could do better than that :P | ||
TimToady | raydiak: well, that's basically all APLish languages ever do :) | ||
timotimo | (though all i know about PDL is that it's basically the NumPy equivalent in Perl land) | ||
PerlJam | timotimo: you mean NumPy is the PDL equivalent in python-land :) | 19:16 | |
raydiak | TimToady: thanks; I feel less like it's an ugly hack, then | ||
timotimo | PerlJam: whatever :) | 19:17 | |
TimToady | typical data in, say, J, is a number of dimensions, followed by the sizes of each dimension, followed by a flat list of all the values | ||
timotimo | i'm up to nqp-jvm now \o/ | 19:18 | |
TimToady | so a map over such a shaped array doesn't even have to consider the dimensionality, it just skips dimensional info and maps the flat part | 19:19 | |
raydiak | hmmm...that sort of structure might be good to put reusably in a separate module from this math stuff I'm working on | ||
TimToady | it is a view that is very antithetical to laziness, but we've already said that shaped arrays are probably not lazy at all | ||
it might be what we actually want under shaped arrays most of the time | 19:20 | ||
timotimo | i'm expecting the underlying data structure to look kind of like that | ||
numpy has a concept of "strides" | |||
which i believe will allow you to map any data ordering (C style or Pascal style, for example) without much extra code | 19:21 | ||
TimToady | yes, well, that's a way to optimize a dim map into a C-ish pointer-increment notion | ||
timotimo | you seem to already know more about it than i do :D | 19:22 | |
so i'll shut up and start cooking | |||
TimToady | when you think about it, the strides are just really cumulative dimensions small than this one | ||
raydiak | save me a piece of cucumber :) | ||
timotimo | cucumber is for breakfast tomorrow :) | ||
raydiak | well fine then...I seem to end up here every day lately anyway | 19:23 | |
TimToady | shaped arrays with extensible dimensions will, of course, need different treatment | ||
we can still do the full arrays of arrays thing internally at need, with loss of efficiency | 19:24 | ||
but the *semantics* of shaped arrays stay the same | |||
such as it being the natural leaf mapping for hypers | |||
TimToady is writing like his fever is going back up...which it probably is... | |||
raydiak | idk how fast it'd be, but you could do the same mapping over a variable-length list, and splice things in/out...would just have to keep track of where the dimension breaks are as they move | 19:25 | |
TimToady | sounds much slower than an appropriate AoA structure internally | 19:26 | |
would probably save memory though | |||
but that approach doesn't allow for ragged dimensions either | |||
raydiak | it'd get messy, that's for sure | 19:27 | |
what are arrays, internally? linked lists? lookup tables? or I suppose that's up to the specific backend...???... | 19:28 | ||
skids | I always wonders if DFAs for translating indices to scattered pointer/addresses could be compiled with JIT-like speed and reliable performance bounds. | ||
Where it matters of course is when you pass that array to a library with a continuous memory model for arrays. | 19:29 | ||
(last sentence IRT raydiak) | 19:30 | ||
raydiak | oh, right...I always forget that we have all these FFI/nativecall considerations | 19:31 | |
skids | Well, it also matters if you're compiler/JIT is mature enough to tackle SIMD instructions. | 19:32 | |
moritz | I'm pretty sure the parrot backend implements arrays as a continuous chunk of memory | ||
but if you don't use a natively typed array, the elements in there are containers, which means pointers | 19:33 | ||
raydiak | got it | ||
TimToady | pointers are just native containers :) | 19:35 | |
19:35
jnap left
|
|||
TimToady | well, C native, not JVM native :) | 19:35 | |
PerlJam | Is there a way to get a space in a character class? I thought <[ ' ' A..Z ]> might work, but it appears not. Do I have to use a different representation like hex or something? | 19:38 | |
moritz | \ maybe? | ||
r: say ' ' ~~ /<[\ ]>/ | |||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«「 」» | ||
PerlJam | doh! Overlooked the obvious again | 19:39 | |
thanks moritz++ | |||
raydiak | note to self: '\ ' is not an unspace in a regex | ||
raydiak goes to splatter '.item' all over the Math::ThreeD branch of Pray | 19:42 | ||
timotimo | test | 19:43 | |
FROGGS | ok 1 - | ||
moritz | plan 1..1; | ||
FROGGS | s/;// | ||
:P | |||
19:45
Sqirrel joined,
kst joined
|
|||
dalek | kudo/wip-openpipe: 90b3d61 | jnthn++ | tools/build/create-jvm-runner.pl: Fix JVM runner install on Win32. |
19:47 | |
kudo/wip-openpipe: 2ce599a | raydiak++ | docs/architecture.html: Fix typo |
|||
kudo/wip-openpipe: e4e8625 | moritz++ | docs/architecture.html: Merge pull request #251 from raydiak/nom Just a trivial typo fix |
|||
kudo/wip-openpipe: cdb7dfa | (Tobias Leich)++ | / (2 files): Merge branch 'nom' of github.com:rakudo/rakudo into wip-openpipe |
|||
19:49
jnap joined
19:51
nsh_ joined
19:52
nsh_ left
|
|||
timotimo | wat. | 19:53 | |
i thought my connection w | |||
yeah. it was. | |||
./bench time rakudo-moar/e4e8625 rakudo-parrot/e4e8625 rakudo-jvm/e4e8625 20070,57s user 499,63s system 155% cpu 3:40:35,32 total | |||
>_< | |||
19:53
nsh left
19:55
nsh_ joined
19:56
nsh_ left,
nsh_ joined
19:57
colomon left,
nsh_ left
|
|||
FROGGS | video.fosdem.org/2014/K3201/Saturday/ | 20:03 | |
20:04
xenoterracide_ left
|
|||
dalek | Heuristic branch merge: pushed 465 commits to rakudo/eleven by FROGGS | 20:08 | |
20:08
nsh_ joined,
nsh_ left,
nsh_ joined
|
|||
dalek | nda/eleven: 41a73f3 | tadzik++ | / (2 files): Merge pull request #60 from FROGGS/master use $*EXECUTABLE_NAME instead of hard-coded 'perl6' |
20:09 | |
20:09
dalek left,
nsh_ left
|
|||
FROGGS | sorry dalek | 20:09 | |
20:10
nsh_ joined,
dalek joined,
ChanServ sets mode: +v dalek
20:13
grep0r joined
|
|||
vendethiel | hahahaha | 20:13 | |
20:14
xenoterracide joined
|
|||
dalek | kudo/eleven: 1e9716d | (Tobias Leich)++ | tools/build/Makefile- (2 files): build CompUnitRepo on moarv/jvm too |
20:16 | |
20:17
regreg left
|
|||
dalek | nda/eleven: 2085f7b | (Tobias Leich)++ | lib/Panda/Fetcher.pm: moar does not like to take a substr OOB |
20:24 | |
20:24
rjbs joined
|
|||
rjbs | Whoops, I never came back after freenode's ddos! | 20:25 | |
Anyway, I just wanted to note that there's a .cool TLD now, and perl6.cool is probably available... | |||
dalek | nda/eleven: f1b0035 | (Tobias Leich)++ | lib/Panda/Common.pm: fix spello |
20:26 | |
timotimo | rjbs: that's not bad! | 20:29 | |
rjbs: is it prohibitively expensive? | |||
rjbs | I'm afraid I don't know any .cool registrars offhand. | ||
moritz knows a registrar that will try to sign up for any TLD | 20:30 | ||
timotimo | www.donuts.co/tlds/ - these people have .cool | ||
dalek | nda/eleven: 659b62b | (Tobias Leich)++ | lib/Panda/ (2 files): add comptarget(), and also moarvm fileext/target |
||
rjbs | Oops, a few weeks left. | ||
Well, now you've got the info to get in line! | |||
timotimo | it seems like the "sunrise" thing is an auction kind of deal | ||
i'd hazard a guess that if we go to the auction and say "we want perl6" someone's going "hey! someone wants perl6! i should get it for as expensive as they are willing to pay, add a bunch more and then offer them an even worse price for it!" | 20:31 | ||
20:32
zakharyas left
20:33
treehug88 left
20:36
treehug88 joined
20:38
xenoterracide left
|
|||
FROGGS | funny, panda fails on moar like it did once or twice on parrot | 20:40 | |
20:41
SamuraiJack joined
|
|||
moritz | "spectacularly"? | 20:45 | |
FROGGS | no | ||
it does not compile to mbc when invoked via bootstrap.pl | |||
but it does when I do the steps manually | |||
shell() return non-zero in the failing case | 20:46 | ||
but I don't know why yet | |||
20:49
nsh_ left,
nsh_ joined,
nsh_ is now known as nsh
20:50
xenoterracide joined
20:56
colomon joined,
Timbus left
20:58
Timbus joined,
xinming_ left
20:59
virtualsue joined
21:01
stevan_ joined,
rindolf left,
jnap left
21:02
Timbus left
|
|||
itz | grrr many (most?) of the FOSDEM videos are unwatchable | 21:06 | |
btyler | itz: for jnthn's the sound sorts itself out after 5 minutes or so | 21:07 | |
timotimo | yup | ||
after half an hour, there's some buzzing again | |||
btyler | also: jnthn - awesome FOSDEM presentation. a small request to repeat audience questions into the mic in the future :) | 21:08 | |
21:09
Timbus joined
|
|||
itz | I was at jnthn's talk and it was excellent and shall watch again | 21:09 | |
21:11
beastd joined
|
|||
grondilu | rn: say { .($^a) given { $a ~ $^b } }("foo"); | 21:11 | |
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862, niecza v24-109-g48a8de3: OUTPUT«foofoo» | ||
21:11
regreg joined
|
|||
grondilu | oops, bad history call | 21:12 | |
timotimo | ... huh? | ||
i don't understand that. | 21:13 | ||
grondilu | I pressed "upper-arrow + return" in the wrong screen window :/ | ||
sorry | 21:14 | ||
timotimo | i mean i don't understand why it doesn't complain about improper number of arguments | ||
i mean | |||
oh | |||
given actually sets the $_ to a block | |||
grondilu | yeah that's related to something I wanted to try for runge-kutta on RC | 21:15 | |
it won't work, though | |||
timotimo | mh | ||
21:16
regreg left,
treehug88 left
|
|||
grondilu | because apparently I can't put self-declared parameters at a non-first place | 21:17 | |
timotimo | huh? | ||
grondilu | std: say { $a + $^a } | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===Variable $a is not predeclared at /tmp/wg6uDlfNl9 line 1:------> say { ⏏$a + $^a }Check failedFAILED 00:01 125m» | ||
timotimo | well, there you just don't have a $a | ||
$^a will not cause a $a to plop into existence | 21:18 | ||
21:18
treehug88 joined
|
|||
timotimo | but you can write $^a as many times as you like | 21:18 | |
grondilu | std: say { $^a + $a } | ||
camelia | std 09dda5b: OUTPUT«ok 00:01 125m» | ||
timotimo | er ... huh? | ||
that doesn't seem sensible to me. | |||
grondilu | you don't have to use $^ several times. Only once is required | 21:19 | |
timotimo | i don't like that :( | ||
grondilu | well, it saves some characters | ||
timotimo | at other times, the twigil doesn't change so readily | ||
jercos | well there's the whole $.a/$!a thing... | 21:20 | |
timotimo | yes, but that's not just "removing a twigil" | ||
grondilu | the ^ is for declaring. You usually declare things only once, don't you? | 21:21 | |
lue | grondilu: where does it say that $^a is only needed once? | ||
timotimo | those are implicitly declared, though | ||
lue | note that say { $a + $^a } will never work, because one-pass parsing I believe. | ||
grondilu | lue: I don't know where it is specced, but that's how it currently works | 21:22 | |
TimToady | needing to repeat a parameter is a very good sign that it's time to declare a formal sig | ||
timotimo | hmm. | ||
lue | r: say {$^a + $a}(3) | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«6» | ||
lue | ew | ||
r: my $a = 5; say {$^a + $a}(3) | 21:23 | ||
grondilu | I could have used pointy block, but calling them requires parenthesis | ||
21:23
virtualsue left
|
|||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«6» | 21:23 | |
jercos | r: say {[+] $^a x 2}(3) | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«33» | ||
jercos | erm | ||
r: say {[+] $^a xx 2}(3) | |||
lue | r: my $b = 5; say {$^a + $b}(3) | ||
grondilu | r: say (-> $a { $a + $a })(2) | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«6» | ||
rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«8» | |||
rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«4» | |||
grondilu | ?? | ||
lue | r: my $b = 5; say {$^a + $b}(3) | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«8» | ||
jercos | or, y'know... | 21:24 | |
r: my $a = 5; say {$_ + $a}(3) | |||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«8» | ||
jercos | but that would be too easy >.> | ||
lue | TimToady: I really don't like how $^a clobbers outside $a vars. | ||
grondilu | jercos: that would not have worked with what I had in mind of runge-kutta | ||
jercos | lue: clobbers? | 21:25 | |
lue | r: my $a = 5; say {$^a + $a}(3); say {$^b + $a}(3); | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«68» | ||
jercos | ^ | ||
timotimo | agreed. | ||
jercos | Looks clobberless to me... | ||
timotimo | it ... does? | 21:26 | |
jercos | Ideantical to -> $a {} | ||
lue | if $^a were spelled my $a then I'd be fine, but that's a nasty side effect for a twigil | ||
$^a should always need to be spelled $^a, in my opinion. | |||
jercos | In my mind for it to "clobber", the second example there would have to return 6. | ||
timotimo | i agree with lue, fwiw | ||
lue | jercos: it does clobber what the name "$a" refers to | 21:27 | |
jercos | But only within the scope of that block. | ||
grondilu | that's fine, imho | ||
timotimo | there's a certain amount of WAT to that | ||
jercos | I mean, I can see what you're saying, but the term "clobber" doesn't seem like it applies here. | ||
timotimo | especially if perl6 doesn't warn if you repeat the $^a form | ||
lue | jercos: previous meaning replaced with new one unintentionally. Sounds like clobbering to me. | 21:28 | |
21:28
jnap joined
|
|||
lue | to me the ^ twigil means "implicit parameter", not "implicit declaration of parameter" | 21:28 | |
TimToady | if it hurts, DON'T DO THAT! | 21:29 | |
timotimo | i'm 100% with lue so far | ||
lue | don't imitate no strict when I didn't ask for it :) | ||
timotimo | TimToady: i think finding the cause of the hurt if you didn't run after every single line you've added to your program can be frustrating | ||
TimToady | don't use ^ parameters where they don't make complete sense, that's not what they're for | 21:30 | |
timotimo | oh well. | ||
vendethiel | agreed with lue | 21:31 | |
to me, it seems $^ and $ and two different variables | |||
lue | r: say {$:foo + $foo}(:foo(5)) | 21:32 | |
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«10» | ||
lue | at least rakudo's consistent | ||
n: say {$:foo + $foo}(:foo(5)) | |||
camelia | niecza v24-109-g48a8de3: OUTPUT«10» | ||
TimToady | look, both : and ^ say "autogen me a signature | 21:33 | |
they have to be smart about the signature in question | |||
std: sub foo() { $^a } | |||
camelia | std 09dda5b: OUTPUT«===SORRY!===Placeholder variable $^a cannot override existing signature () at /tmp/U9fdb6USi1 line 1:------> sub foo() { ⏏$^a }Check failedFAILED 00:01 125m» | ||
vendethiel | and that could be called $^a, simply | 21:34 | |
TimToady | the "upness" of ^ is to hoist $a into the sig | ||
lue | fwiw I could see why you'd want the current behavior, though I'm not a fan of the twigil not being a distinct type of variable (same reason for the lesser degree to which I dislike $.foo) | ||
TimToady | std: sub foo($^a) { ... } | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===You may not use the ^ twigil in a signature at /tmp/SIF1jh66XD line 1:------> sub foo($⏏^a) { ... } expecting twigilParse failedFAILED 00:01 123m» | ||
TimToady | not that simple | ||
vendethiel | TimToady: user restrictions doesn't impose compiler restrictions | 21:35 | |
timotimo | jnthn: i enjoyed your talk a whole lot :) | ||
aside from the buzzing, but that's not your fault | 21:36 | ||
lue | TimToady: my only objection to it is that I wouldn't expect {$^a} to have the same effects as sub foo($a){}; I expect $^a to always have to be referenced as $^a | ||
TimToady | well, it's a WAT either way you do that, so I have little sympathy here | 21:37 | |
there's lot's of other WATs as soon as you start abusing placeholders too | |||
they are in there specifically for a + b kinds of stuff | 21:38 | ||
they are not meant to be a general replacement for siggies | |||
grondilu | I whish there was a version of the pointy block where the arrow is inside the block. | 21:39 | |
something like: { -> $a, $b: $a + $b } | 21:40 | ||
PerlJam | grondilu: why? | ||
TimToady | Ruby envy? | ||
grondilu | because then it could be called without parenthesis | ||
TimToady | I think you work to hard sometimes to avoid parens :) | ||
*too | |||
lue | TimToady: agree with you on the WAT business, I just like my twigils to be a distinct kind of variable :) [$foo != $!foo != $~foo ...] | ||
grondilu | :) yeah, maybe | ||
TimToady | as long as I'm in a complete bitchy mood, I also don't like when you put whitespace on one side of infix:<*> and not the other | 21:42 | |
vendethiel | m: my @a = (); say $a.perl; | ||
camelia | rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/p33aGhvHauVariable '$a' is not declared. Did you mean '@a'?at /tmp/p33aGhvHau:1------> my @a = (); say $a.perl⏏; expecting any of: method arguments» | ||
TimToady | lessee, anything else I can complain about... | ||
vendethiel | If that doesn't work, I don't think $^a should work for $a | ||
lue | vendethiel: this isn't P5 :) | ||
vendethiel | lue: of course it isn't ! But it's all about consistency | 21:43 | |
skids | .oO(mmmm. hobgoblins.) |
||
lue | sigils refer to a type of container, the twigils refer to other details about the variable. | ||
PerlJam | skids++ my thoughts too | ||
lue | I don't agree entirely with how <[.^:]> operate, though I can live with it :) | 21:44 | |
TimToady | twigils usually mean "strange scoping" | ||
vendethiel | lue: definitely. It doesn't mean we can have a bit of consistency between var prefixes | ||
TimToady | note that $*ENV might end up finding PROCESS::ENV, where'd your * go? | 21:45 | |
skids thinks that the use of ^ (hat) is an adequate reminder that some masquerading is about to occur. | |||
lue | TimToady: obviously we need to invent package twigils: PROCESS:*:ENV , OUTER:~:RREGEX :P | 21:46 | |
TimToady | there's no consistency to achieve here, and $^a meaning $a in the sig is a very simple rule | ||
21:46
berekuk joined
|
|||
TimToady | std: my $a; { $a + $^a } | 21:47 | |
camelia | std 09dda5b: OUTPUT«===SORRY!===$a has already been used as a non-placeholder in the surrounding block, so you will confuse the reader if you suddenly declare $^a here at /tmp/pEH0v23tZh line 1:------> my $a; { $a + ⏏$^a }Check fai…» | ||
vendethiel | now that's nice | 21:48 | |
TimToady | it's a general thing | ||
std: my $a; { $a + 42; my $a = 43 } | |||
timotimo | that sounds like an LHF to port to rakudo | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===Lexical symbol '$a' is already bound to an outer symbol (see line 1); the implicit outer binding at line 1 must be rewritten as OUTER::<$a> before you can unambiguously declare a new '$a' in this scope at /tmp/r1onRgAtlS l…» | ||
lue | rakudo needs to do that :) | ||
21:49
kurahaupo_mobile left
|
|||
lue | std: my $a; { $^a + $a } | 21:49 | |
camelia | std 09dda5b: OUTPUT«ok 00:01 126m» | ||
TimToady | yes, we treat it as declaration, so all the other declarational mechanism works | ||
including "Oh, you changed the meaning of $a from earlier in this block" | 21:50 | ||
we don't allow much in the way of retroactive declaration | |||
only for things that can be parsed as listop functions | |||
21:51
stevan_ left
|
|||
TimToady | because mutual recursion is pertty darn useful, but we do it be reserving a syntax at the front, not by retroactively changing anything | 21:51 | |
lue | .oO(use retcons;) |
21:52 | |
TimToady | ss/do it be/do it by/ | 21:53 | |
clsn | I could have sworn I saw something in the spec that said that you had to use ^ on all instances of the parameter, not just the first. Can't find it now. | 21:54 | |
TimToady | if anything, it says the opposite, or it says "You *may* use ^ on all instances" | 21:55 | |
dalek | nda/moar-support: 359402d | (Tobias Leich)++ | lib/Panda/Fetcher.pm: moar does not like to take a substr OOB |
||
nda/moar-support: 3c47a06 | (Tobias Leich)++ | lib/Panda/Common.pm: fix spello |
|||
nda/moar-support: 1c97f0c | (Tobias Leich)++ | lib/Panda/ (2 files): add comptarget(), and also moarvm fileext/target |
|||
TimToady | S06:Placeholder_variables is the section | 21:56 | |
S06:2006 is the specific paragraph | 21:57 | ||
synopsebot | Link: perlcabal.org/syn/S06.html#line_2006 | ||
TimToady | ah, it even gives a justification for leaving out the ^ in the real variable | ||
TimToady forgets that he was sane once | 21:58 | ||
21:58
SamuraiJack left
|
|||
timotimo | oh! | 21:58 | |
that justification *is* sane, definitely | |||
PerlJam catches an odd bit he'd never noticed before | |||
std: { $^A + 5 } | 21:59 | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===Unsupported use of $^A variable; in Perl 6 please use Form module at /tmp/8BTRtB7lCa line 1:------> { $^A ⏏+ 5 }Parse failedFAILED 00:01 123m» | ||
TimToady | And Because I Said So!!! :) | ||
PerlJam | std: { $^X + 5 } | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===Unsupported use of $^X variable; in Perl 6 please use $*EXECUTABLE_NAME at /tmp/Rh6dkKIX68 line 1:------> { $^X ⏏+ 5 }Parse failedFAILED 00:01 123m» | ||
PerlJam | nice | ||
r: { $^A + 5 } | |||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnsupported use of $^A variable; in Perl 6 please use Form moduleat /tmp/tmpfile:1------> { $^A⏏ + 5 }» | ||
lue | timotimo: ^^^ another case for no P5 warnings :) | 22:01 | |
timotimo | that's not a warning, though | 22:02 | |
PerlJam | lue: I conclude exactly the opposite. | ||
timotimo | should it *allow* that as a variable if you no warnings :p5? | ||
TimToady | it's not something people run into often enough to worry about, I suspect | 22:03 | |
most people naturally use lowercase placeholders by preference | |||
plus there's always the workaround of using a real sig, or using more than one char | 22:04 | ||
22:05
skids left
|
|||
TimToady | I do expect a lot of Perl 5 programmers to come over eventually, and confuse themselves | 22:05 | |
22:05
Rotwang joined
|
|||
timotimo | i'm thinking no warnings :perl5 should only remove warnings, no errors | 22:06 | |
TimToady | r: ./viv -e 'say "$0 foo bar"' | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileBogus statementat /tmp/tmpfile:1------> .⏏/viv -e 'say "$0 foo bar"' expecting any of: dotty method or p…» | ||
TimToady | r: say "$0 foo bar" | 22:07 | |
PerlJam | I'm thinking we can wait until Perl 6.2 or so before we have to worry about "no warnings :perl5" :-) | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT« foo bar» | ||
TimToady | r: print "$0 foo bar\n" | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT« foo bar» | ||
TimToady | no undefined warning? | ||
that would be a good one to catch, if we could | 22:08 | ||
lue | std: say "$0 bar" | ||
camelia | std 09dda5b: OUTPUT«ok 00:01 123m» | ||
lue | r: say $0.WHAT; | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«Nil» | ||
TimToady | r: say $/.WHAT | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«Nil» | ||
lue | PerlJam: What I meant was that it's another thing to put in the "I don't know P5, don't act like I do" command I want :) | 22:09 | |
22:09
bluescreen10 left
|
|||
TimToady | r: $/ := Match; say "$0 foo" | 22:09 | |
lue | (Though I suppose one possible implementation of such a command could be Perl 6.1 ...) | 22:10 | |
camelia | rakudo-moar e4e862: OUTPUT«Invocant requires an instance, but a type object was passed in method at_pos at src/gen/m-CORE.setting:6679 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2361 in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2325 in block at /tm…» | ||
..rakudo-jvm e4e862: OUTPUT«Cannot look up attributes in a type object in method at_pos at gen/jvm/CORE.setting:6681 in sub postcircumfix:<[ ]> at gen/jvm/CORE.setting:2361 in sub postcircumfix:<[ ]> at gen/jvm/CORE.setting:2325 in block at /tmp/tmpfile:1» | |||
..rakudo-parrot e4e862: OUTPUT«Invocant requires an instance, but a type object was passed in method at_pos at gen/parrot/CORE.setting:6683 in sub postcircumfix:<[ ]> at gen/parrot/CORE.setting:2365 in sub postcircumfix:<[ ]> at gen/parrot/CORE.setting:2329 in block a…» | |||
22:10
itz__ joined,
itz left
22:11
itz_ left
|
|||
timotimo | i've got a maybe LHF; in perl6-bench, fix nqp/richards so that it works on moarvm; there's some native int/list/object/whatever confusion going on | 22:12 | |
might have to replace all list_i with list or something? | 22:13 | ||
22:13
itz joined
|
|||
TimToady --> Dr to hopefully cure his grumpiness | 22:20 | ||
FROGGS | :/ | ||
PerlJam | There's a cure for grumpiness?!? | ||
TimToady | depends on the cause :) | ||
& | 22:21 | ||
PerlJam | TimToady: good luck! | ||
22:27
benabik joined
|
|||
timotimo | hm, maybe i ought to take up the weekly perl6 changes blog | 22:29 | |
ashleyde1 | timotimo++ | 22:30 | |
22:30
ashleyde1 is now known as ashleydev,
FROGGS left,
btyler left
|
|||
vendethiel | timotimo++ | 22:31 | |
timotimo | well, i guess that's settled then :P | 22:32 | |
vendethiel | as a perl (6) beginner, that seems to be a very valuable resource | ||
timotimo | i already have a blog that i could post to ... hmm ... | 22:35 | |
hm. should i start from where GlitchMr left off or from now? | 22:41 | ||
lue | timotimo: depends on when GlitchMr stopped :) | 22:42 | |
vendethiel | long ago, IIRC | ||
well, I guess it depends what you call long, actually ... 2011 or 2012 I'd say, from what I remember I've seen | 22:43 | ||
timotimo | er, no | ||
he stopped at the end of last year, iirc | |||
vendethiel | oh, really ? my bad. I must confuse it with something else, then. | 22:44 | |
timotimo | mayhaps | ||
22:48
benabik left
22:49
kbaker left
|
|||
vendethiel | okay, just read about `sub (Mu:D) {}`, that's cool ":D". But sometimes, there's also a closing `:` | 22:49 | |
timotimo | the closing : means "the thing on the left is the invocant" | 22:50 | |
you can use that to make type constraints on the self | |||
like "only call this if the self is not a type object" | |||
or "only call this if self.foobar equals 42" | |||
22:50
benabik joined
|
|||
vendethiel | oh, that's the same `:` as in ($self:) ? | 22:51 | |
timotimo | yes | ||
vendethiel | fair enough. timotimo++ | ||
perigrin hasn't seen a single Perl6 submission for YAPC::NA | 22:53 | ||
perigrin stares at the space that should be occupied by diakopter | |||
22:56
kaare_ joined
23:00
ashleydev left
|
|||
timotimo | i don't know how to work this jekyll thing :\ | 23:01 | |
this doesn't work at all. | 23:07 | ||
23:17
BenGoldberg joined
23:22
treehug88 left
|
|||
Util submits my Perl (5|6) talk from Perl Oasis for YAPC::NA, for perigrin. | 23:26 | ||
s/my/his/ | |||
perigrin | thank you! | 23:29 | |
timotimo | p6weekly.wordpress.com/ ← this is where my work will live | 23:30 | |
i may want to build some tooling to get at the information more easily | 23:31 | ||
dalek | kudo-star-daily: 9d76a1a | coke++ | log/ (5 files): today (automated commit) |
||
rl6-roast-data: ae559b0 | coke++ | / (2 files): today (automated commit) |
23:32 | ||
23:33
Rotwang left
23:34
skids joined,
dmol left
|
|||
BenGoldberg | p6: (~pi).Rat.say | 23:37 | |
camelia | rakudo-jvm e4e862: OUTPUT«3.141592653589793» | ||
..rakudo-parrot e4e862, rakudo-moar e4e862: OUTPUT«3.14159265358979» | |||
..niecza v24-109-g48a8de3: OUTPUT«3.141593» | |||
timotimo | r: say 3.141592653589793 - 3.14159265358979 | 23:39 | |
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«0.000000000000003» | ||
timotimo | r: say ~3.141592653589793 ~- ~3.14159265358979 | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«3.141592653589793-3.14159265358979» | ||
timotimo | er ... right | ||
r: say ~3.141592653589793 ~& ~3.14159265358979 | |||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«3.14159265358979» | ||
timotimo | er ... that's not helpful either %) | 23:40 | |
r: .ords.join(",").say given ~3.141592653589793 ~^ ~3.14159265358979 | |||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51» | ||
timotimo | there's probably better ways to do this m) | ||
BenGoldberg | r: (3.141592653589793 - 3.14159265358979).fmt("%f").say | 23:44 | |
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«0.000000» | ||
BenGoldberg | r: (3.141592653589793 - 3.14159265358979).fmt("%e").say | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«2.000000e-15» | ||
BenGoldberg | r: (3.141592653589793 - 3.14159265358979).WHAT.say | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«(Rat)» | 23:45 | |
BenGoldberg | r: (3.141592653589793 - 3.14159265358979).nude.say | ||
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«3 1000000000000000» | ||
jnthn | r: my $a; sub foo() { say $a; my $a; } | 23:46 | |
camelia | rakudo-parrot e4e862, rakudo-jvm e4e862, rakudo-moar e4e862: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileLexical symbol '$a' is already bound to an outer symbol;the implicit outer binding must be rewritten as OUTER::<$a>before you can unambiguous…» | ||
jnthn | That's already working, so the palceholder fix should be quite easy :) | ||
23:46
ajr_ left
23:49
daniel-s joined
|
|||
timotimo | oh well. | 23:51 | |
good night for now! :) | |||
corecatcher: ^^ what jnthn just mentioned may be an LHF for you :) (it's actually about irclog.perlgeek.de/perl6/2014-02-07#i_8250030 ) | |||
23:52
regreg joined
23:56
nsh left
23:57
jnap left
|