00:00 snarkyboojum_ joined 00:03 snarkyboojum left, snarkyboojum_ is now known as snarkyboojum 00:05 rgrau` left 00:10 wknight8111 joined 00:17 k23z__ left 00:20 meppl left, stepnem joined
snarkyboojum sorear: just discovered that ~ is a parser combinator (see perlgeek.de/blog-en/perl-6/tidings-...writeback) 00:25
in STD.pm
00:26 TiMBuS left 00:31 Sanitoeter joined 00:32 stepnem left 00:38 yinyin joined 00:39 lue joined, stepnem joined
lue ...never. again. will I believe that a speed optimization will help _me_ 00:39
00:41 simcop2387 left 00:45 ashleydev joined
lue en.wikipedia.org/wiki/Main_Page check the first item of In the News! 00:45
snarkyboojum lue: are you finding the new parrot fixes/optimisations helpful during a rakudo build? 00:46
lue no, it hung during the compilatiion of parrot, even after killall perl (which I used to run Configure.pl) :/
snarkyboojum lue: bugger - what parrot REV? 00:47
m6locks rakudo: role A { has $!b = 4; method foo() { say $!b; } }; A.foo()
lue but if you look on the wiki's main page, you'll see that people were 4sent back in time! 00:48
p6eval rakudo 7d00af: OUTPUT«Type objects are abstract and have no attributes, but you tried to access ␤current instr.: 'perl6;A[];foo' pc 615 (EVAL_1:237)␤»
lue snarky: don't know -- the latest as defined by rakudo
snarkyboojum ah ok
it'll be defined in build/PARROT_REVISION 00:49
I'm guessing r45178
lue I must contact Sony and figure out their time-travel secrets! 00:50
snarkyboojum well battery about to die (those new macbook pro with 7hr battery life look good :)) 00:51
well, not new anymore perhaps
lue I know, I'd like just the battery :)
.oO(I must also contact Nintendo and convince them to use cartridges instead of CDs in their next console)
snarkyboojum bbl 00:52
lue alright
lue is trying to find the names of creators of various programming languages to create a Phoenix Wright parody :) 00:54
00:56 snarkyboojum left, ashleydev left 00:59 salzh left 01:03 snarkyboojum joined 01:05 astinus joined 01:07 nihiliad joined
lue hai again snarky o/ 01:09
snarkyboojum hi lue \o 01:12
lue I wonder, who created parrot? 01:13
(it's hard finding a developer who's last name is somewhat like Edgeworth :/( 01:14
snarkyboojum lue: have you read www.perl.com/pub/a/2001/04/01/parrot.htm ? 01:19
enjoyable read :) 01:20
esp poignant given today's date
lue is it 4/1 in your area?
snarkyboojum aye
we're halfway through it here
lue still 3/31 here :)
snarkyboojum lue: I read this a long time ago too - www.sidhe.org/~dan/blog/archives/000435.html 01:22
lue 17->12 ... (accounting for DST, right now it's 18 PDT) -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2,3,4,5,6,7,8,9,10,11
you're UTC+11 !
snarkyboojum we see the sun come up earlier :P 01:23
lue was I right? 01:24
snarkyboojum yeah
01:25 astinus left
lue lue will post the cast list for the P6 Phoenix Wright parody after finishing it 01:25
01:26 astinus joined
lue I'm UTC+3i :) 01:26
I tend to drift into UTC-7π though 01:27
01:29 lollan left 01:31 am0c joined 01:35 astinus left 01:38 astinus joined 01:39 meppel joined, meppl joined, meppel left 01:47 simcop2387 joined 01:55 Psyche^ joined 01:57 jaldhar left, wknight8111 left 01:58 Psyche^ is now known as Patterner 01:59 sorear joined 02:06 simcop2387 left 02:10 simcop2387 joined 02:14 hicx174_ joined 02:17 ash_ joined, ash_ left 02:18 colomon_ joined 02:20 Limbic_Region left
colomon_ o/ 02:20
lue o/ colomon_ 02:22
rakudo: print eval( say "hi" ) 02:27
p6eval rakudo 7d00af: OUTPUT«hi␤Nominal type check failed for parameter '$code'; expected Str but got Bool instead␤current instr.: 'eval' pc 284330 (src/gen/core.pir:0)␤»
lue rakudo: print eval(' say "hi" ') 02:28
p6eval rakudo 7d00af: OUTPUT«hi␤1»
lue afk 02:30
snarkyboojum rakudo: Perl6::Compiler.eval("say 'See ya lue'"); 02:31
p6eval rakudo 7d00af: OUTPUT«See ya lue␤»
snarkyboojum :)
you could even do, Perl6::Compiler.compile("say 'See ya lue'", target => 'pir'); to get PIR :) 02:33
sorear Is it just me, or are INIT blocks run twice when Rakudo is loaded as a library 02:36
there's some fishy stuff in gen/core.pir
:load's !UNIT_START is being passed a reference to a function which also calls !UNIT_START 02:37
while :init's isn't
02:37 jhuni joined
sorear sorear tries changing it, to see what breaks. 02:37
am0c rakudo: Perl6::Compiler.compile("say 'See ya lue'", target => 'pir'); 02:43
p6eval rakudo 7d00af: ( no output )
sorear sorear wonders how to make need Bot::BasicBot :from<perl5>; class MyBot is Bot::BasicBot { ... } Just Work
02:43 gfx joined
snarkyboojum am0c, you'd need to do something with the output, like say it 02:44
apologies if that's obvious :)
am0c ah, thanks! 02:45
02:46 colomon_ left 02:48 hanekomu left 02:50 JimmyZ joined, ash_ joined
JimmyZ April Fools' Day? Parrot language will be born? 02:51
sorear actually, my goal is to get use Tk :from<perl5>; working 02:52
because apparently there's demand for that
02:55 meppl left 03:06 hitsubunnu joined 03:09 gfx left 03:13 hitsubunnu left 03:15 nihiliad left
spinclad .oO{ quadrupedal negative } # ain't never heard no horse sing no song # another backlogged thought 03:20
sorear sorear guts the "interesting" logic from comp_unit to see what happens 03:26
03:35 JimmyZ left
sorear Knowledge of PAST would help here. 03:35
lue hai again 03:36
it's not 4/1 yet! :)
( I'm waiting for 4/2 -- it's a Hitchhiker's Holy Day :) ) 03:37
sorear: there's demand™ for Tk? 03:48
sorear lue: Demand, measured in money
lue OK. I was just wondering. (<mumble>not that Qt and GTK are more important</mumble>) 03:49
sorear in about an hour we'll know if my change to Actions.pm did anything useful 03:52
lue Quick! What languages inspired Perl 6? (excluding P5) 03:53
ash_ all of them? 03:54
sorear All of them
perl 6 is a postmodernist's language
lue Who knew it'd be so difficult to find the name of a developer who's last name even somewhat resembles 'Edgeworth' ?
sorear nice, my new rakudo segfaults 03:59
I only changed p6 code
lue \o/ Segfaults™
"there should be one—and preferably only one—obvious way to do it" --Python
unfortunately, it never works out that nicely, so always, TIMTOWTDI. 04:00
en.wikipedia.org/wiki/Perl has a nice "Influenced by" piece :) 04:01
04:18 justatheory left
.oO(The CEO's of both Microsoft and Apple are named Steve. Interesting)
"Got that? Larry is always right, even when he was wrong." 04:24
04:29 ash_ left 04:34 sundar left 04:39 alester joined 04:40 flight16 joined
sorear ok, trying again 04:43
lue .u hand 04:46
phenny U+270C VICTORY HAND (✌)
lue ✌o✌
(fingers crossed) 04:47
am0c is that right c-style 'for' statement is named to 'loop' to stop overuse? 04:53
lue rakudo: for (my $i=0; $i<11; $i++) { say $i;}; 04:55
p6eval rakudo 7d00af: OUTPUT«Unsupported use of C-style "for (;;)" loop; in Perl 6 please use "loop (;;)" at line 11, near "(my $i=0; "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
lue rakudo: loop (my $i=0; $i<11; $i++) { say $i;};
p6eval rakudo 7d00af: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤»
lue I'm not sure _why_, but I know it just is this way.
snarkyboojum also - loop { say "forever" } :D
am0c hm - hm -
i like this syntax. :) heh 04:56
lue rakudo: my %h = (3,4); say %h
p6eval rakudo 7d00af: OUTPUT«3 4␤␤»
snarkyboojum rakudo: my %h = 3 => 4; say %h; 04:57
p6eval rakudo 7d00af: OUTPUT«3 4␤␤»
lue rakudo: my %h = ('key'=>4); say %h.key('key'); 05:00
p6eval rakudo 7d00af: OUTPUT«Method 'key' not found for invocant of class ''␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
lue rakudo: my %h = ('key'=>4); say %h.kv('key');
p6eval rakudo 7d00af: OUTPUT«Too many positional parameters passed; got 2 but expected 1␤current instr.: 'perl6;EnumMap;kv' pc 425204 (src/gen/core.pir:61588)␤»
lue rakudo: my %h = ('key'=>4); say %h.keys('key');
p6eval rakudo 7d00af: OUTPUT«Too many positional parameters passed; got 2 but expected 1␤current instr.: 'perl6;EnumMap;keys' pc 424921 (src/gen/core.pir:61502)␤»
lue rakudo: my %h = ('key'=>4); say %h<key> 05:01
p6eval rakudo 7d00af: OUTPUT«4␤»
lue there we go :)
Tomorrow I'll release the current cast for Larry Wright: Ace Attorney. Until then, good night 05:02
snarkyboojum rakudo: my %h = ('key'=>4); %h.perl.say
p6eval rakudo 7d00af: OUTPUT«{"key" => 4}␤»
snarkyboojum rakudo: foreach <1 2 3> { .say }; # shouldn't work 05:03
p6eval rakudo 7d00af: OUTPUT«Confused at line 11, near "foreach <1"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)␤»
snarkyboojum rakudo: for <1 2 3> { .say }; 05:04
p6eval rakudo 7d00af: OUTPUT«1␤2␤3␤»
am0c rakudo: for <1 2 3> -> { .say } 05:06
p6eval rakudo 7d00af: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤current instr.: '_block50' pc 358 (EVAL_1:148)␤»
am0c rakudo: for <1 2 3> -> $x { $x.say }
p6eval rakudo 7d00af: OUTPUT«1␤2␤3␤»
diakopter hee cappuccino.org/discuss/2010/04/01/s...t-problem/ 05:10
snarkyboojum std: foreach <1 2 3> { .say }; # shouldn't work 05:15
p6eval std 30253: OUTPUT«===SORRY!===␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/xvFVhRh904 line 1:␤------> foreach <1 2 3> ⏏{ .say }; # shouldn't work␤ expecting any of:␤ bracketed infix␤ infix or
snarkyboojum I was hoping for an awesome-ised error :)
rakudo: .say for <1 2 3> 05:16
p6eval rakudo 7d00af: OUTPUT«1␤2␤3␤»
sorear ok, this time I got it to compile! 05:19
but it crashes on stage2 startup
05:21 Patterner left 05:24 Psyche^ joined, Trashlord left, Psyche^ is now known as Patterner 05:26 xinming joined 05:30 xinming_ left
snarkyboojum rakudo: my $x = * ** *; say <1 2 3>.map: $x 05:31
p6eval rakudo 7d00af: OUTPUT«Method 'Num' not found for invocant of class 'Block'␤current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)␤»
snarkyboojum alpha: my $x = * ** *; say <1 2 3>.map: $x 05:32
p6eval alpha 30e0ed: OUTPUT«1427␤»
snarkyboojum std: my $x = * ** *; say <1 2 3>.map: $x
p6eval std 30253: OUTPUT«ok 00:01 107m␤»
sorear it looks like my crash was just caused by using a stale Makefile 05:38
05:44 am0c left
pugssvn r30254 | lwall++ | [STD] awesomize foreach message for snarkyboojum++ 05:54
snarkyboojum std: foreach <1 2 3> { .say };
p6eval std 30253: OUTPUT«===SORRY!===␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/jKsGS5pwvE line 1:␤------> foreach <1 2 3> ⏏{ .say };␤ expecting any of:␤ bracketed infix␤ infix or
..meta-infix␤Undeclared …
TimToady has to recompile
snarkyboojum TimToady++
TimToady may take an hour
sorear STD takes an hour to recompile? 05:55
or do you mean cron timing
TimToady the latter
snarkyboojum now that's what you call user-centred programming language design :)
05:57 hudnix left
TimToady zzz & 05:59
06:03 hudnix joined 06:09 hudnix left
jnthn ergh...early mornings suck... 06:11
sorear hello! 06:14
jnthn oh hai
sorear jnthn: Why does dalek only announce Blizkost commits in a channel you aren't even in? 06:15
jnthn sorear: I'm not sure...I didn't set it up. :-) 06:16
sorear it spams in #parrot anyhow 06:17
jnthn I only noticed they were reported at all when you mentioned this last time. :-)
We could ask for it to spam here too probably. ;-)
sorear argharghargh my fix didn't work 06:18
jnthn Gotta associate with some folks in Malmö, so I'd best commute. bbl. 06:19
diakopter std: foreach <1 2 3> { .say }; 06:22
p6eval std 30254: OUTPUT«===SORRY!===␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/9Z3fTVXq7u line 1:␤------> foreach <1 2 3> ⏏{ .say };␤ expecting any of:␤ bracketed infix␤ infix or
..meta-infix␤Undeclared …
sorear I give up 06:24
somebody else, please make parrot-nqp -e 'pir::load_bytecode("perl6.pbc")' not die messily
what was the rakudobug address? 06:27
snarkyboojum [email@hidden.address] ? 06:32
from the README at github.com/rakudo/rakudo 06:33
06:35 daemon left 06:36 daemon joined 06:40 alester left 06:50 hudnix joined
snarkyboojum std: foreach <1 2 3> { .say }; 06:55
p6eval std 30254: OUTPUT«===SORRY!===␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/J9GoXFc9Xl line 1:␤------> foreach <1 2 3> ⏏{ .say };␤ expecting any of:␤ bracketed infix␤ infix or
..meta-infix␤Undeclared …
07:10 rgrau joined 07:14 iblechbot joined 07:15 Dystopia joined
snarkyboojum std: foreach <1 2 3> { .say }; 07:16
p6eval std 30254: OUTPUT«===SORRY!===␤Unsupported use of 'foreach'; in Perl 6 please use 'for' at /tmp/r9FOJ7cRKf line 1:␤------> foreach⏏ <1 2 3> { .say };␤FAILED 00:01 107m␤»
snarkyboojum awesome :) TimToady++ :) 07:17
07:19 Dystopia left 07:22 sorear left 07:23 Coke is now known as Guest97770 07:30 felipe joined 07:41 astrojp left
mathw Morning 07:45
07:47 iblechbot left 07:51 [opx] joined 07:54 JimmyZ joined 08:15 Sarten-X joined 08:59 Su-Shee joined 09:05 [opx] left, pmurias joined 09:07 jaldhar joined 09:15 leon_mu joined, Chillance joined
moritz_ \o/ first day at $work, seems they allow ssh connections to the outside :-) 09:19
09:19 astrojp joined
mathw \o/ 09:20
09:22 hanekomu joined, hanekomu left
jnthn jnthn back from $meeting 09:24
mathw mathw back from @meeting[0], waiting for @meeting[1] 09:25
jnthn Ah, I'm done for the day on @meeting :-) 09:26
09:28 [opx] joined 09:41 yinyin left 09:45 hudnix left, hudnix joined 09:50 xomas joined 09:55 leon_mu left 10:04 [opx] left 10:08 masak joined
masak oh hai, #perl6 10:08
jnthn lolitsmasak 10:09
10:28 pmurias left
colomon o/ 10:30
jnthn o/ colomon
masak masak realizes that 'also' is a kind of assymmetric dual to '.each' 10:31
from the description at perlgeek.de/blog-en/perl-6/tidings-....writeback , I don't immediately see why I'd want to use 'also' rather than 'and' or '&&'... 10:32
hm, ISTR infix:<also> was subsequently named infix:<andthen>... 10:33
jnthn I think andthen probably captures the ordered semantics better.
masak ok; in what way? 10:34
hm, from S03 I gather that it's sort of a loose opposite of // 10:35
jnthn "jnthn is drinking pivo and also vodka" vs "jnthn is drinking pivo and then vodka" - in one it could be the two at once (eww) but in the the second it's much clearer it's one then the other.
masak and 'orelse' is a loose version of //
jnthn: but 'test1() and test2()' is sequential too, and always was. 10:36
10:36 JimmyZ left
masak ok, 'andthen' does things with INVISIBLE BLOCKS. 10:36
jnthn and failures
masak a bit like a monad would, I guess.
jnthn That's a scary world. 10:37
moritz_ masak: and by INVISIBLE BLOCKS you mean.. thunks? :-)
phenny jnthn: Sorry, no results for 'INVISIBLE BLOCK'.
jnthn .u INVISIBLE
phenny U+2062 INVISIBLE TIMES (⁢)
jnthn :-)
There's still (to me) no difference between a block and a thunk, fwiw.
moritz_ masak: btw after our discussion about joining the community, I backlogged very far to see what you first asked in here... it was what a thunk is :-)
jnthn: there should be one, in that a thunk does not introduce a scope 10:38
jnthn (at the "what they compile to" level
moritz_: I don't have a way to implement that.
Well, not easily at least.
moritz_ std: my $x = Any // (my $y = 6); say $y
p6eval std 30254: OUTPUT«ok 00:01 109m␤»
10:39 payload joined
moritz_ rakudo: my $x = Any // (my $y = 6); say $y 10:39
p6eval rakudo 7d00af: OUTPUT«6␤»
moritz_ jnthn: that's another matter
jnthn I hadn't really regarded that as a thunk.
To me that kinda isn't one.
I mean, it's just syntactic sugar for an "if"-ish kinda thing
But we don't have to run the code at some unknown point in the future and called from a different place. 10:40
Hmm...maybe we need to distinguish the two somehow.
moritz_ maybe
or maybe my idea of "thunk" is not yet fine grained enough 10:41
jnthn Or maybe mine isn't either. :-)
Or our ideas of thunks don't entirely overlap.
10:41 astrojp left
moritz_ $str ~~ s[foo] = $code 10:42
$code is a thunk here, right?
10:42 iblechbot joined
masak for your definition of thunk, yes. :) 10:42
jnthn It's turned into a closure
I think the spec even says it should be though.
masak std: sub foreach(@list) {}; foreach <1 2 3>
p6eval std 30254: OUTPUT«===SORRY!===␤Unsupported use of 'foreach'; in Perl 6 please use 'for' at /tmp/tSpGyjbHyD line 1:␤------> sub foreach(@list) {}; foreach⏏ <1 2 3>␤FAILED 00:01 107m␤»
masak TimToady: ^
jnthn ooh! 10:43
From S05:
This is not a normal assigment, since the right side is evaluated each
time the substitution matches (much like the pseudo-assignment to declarators
can happen at strange times). It is therefore treated as a "thunk", that is,
as if it has implicit curlies around it.
Thus thunk = implicit curlies = scope? :-) 10:44
10:44 clintongormley joined
moritz_ that's the big question 10:44
jnthn :-)
Maybe the distinction is thunk vs "thunk" ;-)
moritz_ :-) 10:45
jnthn But don't quote me on it.
10:45 jhuni left, avuserow joined
moritz_ it seems the parrot folks have improved the string handling quite a bit 10:49
so please folks, test rakudo (compilation + spectest) on parrot r45367
moritz_ can't, due to absense from $home computer 10:50
10:51 xabbu42 joined
snarkyboojum snarkyboojum testing 10:52
mathw mathw eagerly awaits the outcome
snarkyboojum "chromatic: Rakudo !perl 6 compiles five times faster with a simpler four line change from me and @bacek. Should run faster too" - sounds promising :)
10:56 payload left 10:59 payload joined
jnthn jnthn will try it too 11:00
snarkyboojum real 4m17.106s on my machine during make - felt much faster
should have done a build prior to bumping parrot rev 11:01
used to take more than 10 11:02
at the very least :)
11:03 hudnix left 11:06 hudnix joined 11:08 hudnix left 11:11 hudnix joined 11:16 xomas left 11:17 flight16 left
jnthn rakudo: say 252 / 60 11:22
p6eval rakudo 7d00af: OUTPUT«4.2␤»
jnthn rakudo: say 0.2 * 60
p6eval rakudo 7d00af: OUTPUT«12␤»
jnthn My build takes 4 mins 12 seconds now :-)
snarkyboojum spectest ran in under 20 mins on my little lappy 11:23
but I got a fail in S12-methods/instance.t
jnthn I think I accidentally that test yesterday. :-( 11:24
snarkyboojum it's the 'dies_ok( { Zoo.new.c }, "meth(%h) is not a valid method call syntax"' test 11:25
dalek kudo: