»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by Juerd on 28 August 2009.
TimToady seems like a smop to make a timeout actually say "TIMEOUT" 00:01
00:19 googe joined 00:33 cotto joined
colomon Looks like the relevant evalbot code is in pugs/misc/evalbot/lib/EvalbotExecuter.pm 00:34
00:46 ihrd left
pugs_svn r28632 | lwall++ | [IO] clarify semantics and usage of note() 00:47
00:48 rhr_ joined 00:51 crythias joined 00:59 crythias joined
diakopter colomon: were you going to make that change? I can, if you like 01:00
colomon diakopter: I have no idea how to make that change, alas. 01:01
so feel free to!
01:02 SmokeMachine joined
diakopter learned Perl's alarm quite a several years ago. /me goes to relearn it 01:04
sjohnson throws the Perl Album on the CD player
colomon diakopter: If you want to provide a running narrative of what it takes to do it, I'm all ears. 01:08
:)
sjohnson i want to buy "The Camel Book, narrated by TimToady" on iTunes 01:09
01:09 quietfanatic joined
diakopter narrated! lol! there's a video!!?!? 01:11
oh 01:12
colomon: well I'm installing an alarm signal handler that exits with a special error code, which will allegedly appear in $? after wait; is done 01:15
01:16 orafu joined
diakopter evalbot control restart 01:22
01:22 p6eval joined
colomon diakopter: so should this be the new evalbot? 01:27
diakopter well 01:28
I'm testing it
didn't seem to work.
01:31 ihrd joined
diakopter and I broke other stuff :) 01:32
sec
01:33 alanhaggai joined
diakopter evalbot control restart 01:33
01:33 p6eval joined
pugs_svn r28633 | lwall++ | [STD] 01:45
r28633 | comment out useless file-scoped context declarators
r28633 | remove all the no-longer-used {*} entries as eyesores
r28633 | cut down the overview to those notes still in effect
r28633 | getting readier to refactor sublanguages out to separate files
r28633 | first to move out will be P5Regex
r28633 | also planning to move out symbol table and error service routines
diakopter evalbot control restart 01:46
01:46 p6eval joined 01:48 jaldhar_ joined
diakopter evalbot control restart 01:53
01:53 p6eval joined 01:58 p6eval joined 01:59 p6eval joined
crythias why don't you just call it yoyo 02:00
or elevator
02:01 rhr joined, ihrd left 02:02 p6eval joined
quietfanatic rakudo: sleep 20 02:04
p6eval rakudo d91717: OUTPUT«TIMED_OUT»
colomon \\o/ 02:06
rakudo: say sin(pi+1);
quietfanatic whoops
diakopter: did you break evalbot? 02:07
02:07 p6eval joined
diakopter rakudo: say sin(pi+1); 02:07
p6eval rakudo d91717: OUTPUT«-0.841470984807896␤» 02:08
diakopter sprixel: my $a=0; 1 while ++$a < 60000; say $a
rakudo: sleep 99999999999999999999999999
p6eval sprixel 28633: TIMED_OUT
rakudo d91717: TIMED_OUT
crythias raduko: sleep while 1==1;
diakopter kaduro: wait while fork 02:09
quietfanatic s/raduko/rakudo/
rakudo: sleep while 1==1
Actually...
crythias hee
p6eval rakudo d91717: TIMED_OUT
quietfanatic rakudo: sleep
p6eval rakudo d91717: TIMED_OUT 02:10
quietfanatic is the simplest way.
crythias sudoku: 1 2 3 7 4 6 9 8 5
quietfanatic orz
perl6: sleep 02:11
pugs_svn r28634 | diakopter++ | [evalbot] added a TIMED_OUT message ++quietfanatic ++TimToady ++colomon --diakopter --diakopter --diakopter --diakopter
p6eval elf 28633: ( no output )
..sprixel 28633: OUTPUT«Use of uninitialized value in numeric lt (<) at STD.pm line 40798.␤Use of uninitialized value in numeric gt (>) at STD.pm line 40798.␤Use of uninitialized value in numeric lt (<) at STD.pm line 40798.␤Use of uninitialized value in numeric gt (>) at STD.pm line 40798.␤»
..rakudo d91717: TIMED_OUT
..pugs: OUTPUT«*** ␤ Unexpected end of input␤ at /tmp/a9shu8z8ry line 2, column 1␤»
diakopter std: sleep 02:12
quietfanatic std: sleep
p6eval std 28633: OUTPUT«Use of uninitialized value in numeric lt (<) at STD.pm line 40798.␤Use of uninitialized value in numeric gt (>) at STD.pm line 40798.␤Use of uninitialized value in numeric lt (<) at STD.pm line 40798.␤Use of uninitialized value in numeric gt (>) at STD.pm line 40798.␤ok 00:02
..105m␤»
std 28633: OUTPUT«Use of uninitialized value in numeric lt (<) at STD.pm line 40798.␤Use of uninitialized value in numeric gt (>) at STD.pm line 40798.␤Use of uninitialized value in numeric lt (<) at STD.pm line 40798.␤Use of uninitialized value in numeric gt (>) at STD.pm line 40798.␤ok 00:02
..105m␤»
diakopter say wha
quietfanatic pugs: sleep 02:13
p6eval pugs: OUTPUT«*** ␤ Unexpected end of input␤ at /tmp/DzKxbWJcja line 2, column 1␤»
diakopter if ($arg->{'_from'} < $op->{'_from'}) { # postfix 02:14
pugs: sleep 2
p6eval pugs: OUTPUT«*** Unsafe function 'sleep' called under safe mode␤ at /tmp/tEgcUZjCnE line 1, column 1 - line 2, column 1␤»
diakopter pugs: sleep()
p6eval pugs: OUTPUT«*** No compatible multi variant found: "&sleep"␤ at /tmp/ZtnQVDklbj line 1, column 1 - line 2, column 1␤»
diakopter pugs: sleeple
p6eval pugs: OUTPUT«*** No such subroutine: "&sleeple"␤ at /tmp/BSuiRN0jiR line 1, column 1 - line 2, column 1␤»
crythias sprixel: function shake(mymoneymaker) 02:15
p6eval sprixel 28633: OUTPUT«Undeclared routines:␤ function used at line 1␤ mymoneymaker used at line 1␤ shake used at line 1␤»
diakopter 1517 occurences of if $::DEBUG in STD.pmc.... I wonder if those were commented out... 02:19
TimToady you might get a % or two
02:19 frodwith joined 02:22 Woodi joined
diakopter std: my $a=0; 1 while ++$a < 40000; say $a 02:27
p6eval std 28634: OUTPUT«ok 00:02 103m␤»
diakopter std: "function ()" 02:28
p6eval std 28634: OUTPUT«ok 00:03 94m␤»
diakopter std: "function (){ }"
p6eval std 28634: OUTPUT«ok 00:02 94m␤»
diakopter std: "function (){ say 4 }"
p6eval std 28634: OUTPUT«ok 00:02 95m␤»
diakopter std: "function (){ say $a }"
p6eval std 28634: OUTPUT«Potential difficulties:␤ Variable $a is not predeclared at /tmp/5N2NAPOeJX line 1:␤------> [32m"function (){ say $a[33m⏏[31m }"[0m␤ok 00:02 97m␤»
quietfanatic Wait, is function a keyword?
diakopter std: "function (){ gripe $a }"
p6eval std 28634: OUTPUT«Potential difficulties:␤ Variable $a is not predeclared at /tmp/p8snJ6O1et line 1:␤------> [32m"function (){ gripe $a[33m⏏[31m }"[0m␤Undeclared routine:␤ gripe used at line 1␤ok 00:02 97m␤»
quietfanatic didn't notice the quotes
diakopter std: "function (){ gripe \\$a }"
p6eval std 28634: OUTPUT«Potential difficulties:␤ Variable $a is not predeclared at /tmp/etcVLvZovE line 1:␤------> [32m"function (){ gripe \\$a[33m⏏[31m }"[0m␤Undeclared routine:␤ gripe used at line 1␤ok 00:02 97m␤»
quietfanatic Hohoh!
diakopter hohos are tasty 02:29
quietfanatic Bet you've never had hohohs though.
diakopter no
std: 02:31
quietfanatic rakudo: sleep 02:32
p6eval rakudo d91717: TIMED_OUT
TimToady why _?
diakopter oh 02:33
I don't kown
02:34 envi^home joined
diakopter EOUTTATIME 02:34
EOUTATIME 02:35
www.entertainmentearth.com/images/%...1010lg.jpg 02:36
images.forum-auto.com/mesimages/327...tatime.jpg 02:37
rakudo: my $a='99'; say \\\\$a 02:39
p6eval rakudo d91717: OUTPUT«99␤»
quietfanatic rakudo: my $a='99'; say (\\\\$a).WHAT 02:40
p6eval rakudo d91717: OUTPUT«Str()␤»
quietfanatic Shouldn't that be Capture or something?
rakudo: my $a='99'; say (\\($a)).WHAT
p6eval rakudo d91717: OUTPUT«Str()␤»
quietfanatic Now that really ought to be Capture().
unless the \\() notation is gone. 02:41
rakudo: my $a='99'; say (¢($a)).WHAT
p6eval rakudo d91717: OUTPUT«say requires an argument at line 2, near " (\\x{a2}($a)).W"␤in Main (src/gen_setting.pm:2562)␤»
quietfanatic rakudo: my $a='99'; say (@%($a)).WHAT 02:42
p6eval rakudo d91717: OUTPUT«say requires an argument at line 2, near " (@%($a))."␤in Main (src/gen_setting.pm:2562)␤»
diakopter std: /''/ 02:45
p6eval std 28634: OUTPUT«ok 00:01 94m␤»
quietfanatic std: //
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null regex not allowed at /tmp/nqn0HhMfgR line 1:␤------> [32m//[33m⏏[31m<EOL>[0m␤FAILED 00:01 93m␤»
quietfanatic That's what's not allowed.
std: /|/ 02:46
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/U6ABzFhIVy line 1:␤------> [32m/|[33m⏏[31m/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:02 94m␤»
quietfanatic std: /|3|4/
p6eval std 28634: OUTPUT«ok 00:01 94m␤»
quietfanatic std: /|3|4|/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/o1oPLRx6ba line 1:␤------> [32m/|3|4|[33m⏏[31m/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:02 94m␤»
diakopter std: /[]/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/jGZtAbMVTp line 1:␤------> [32m/[[33m⏏[31m]/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:03 94m␤»
diakopter std: /|[]/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/XBtGxu9Alh line 1:␤------> [32m/|[[33m⏏[31m]/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:02 94m␤»
quietfanatic std: /[<?>]/
p6eval std 28634: OUTPUT«ok 00:02 95m␤» 02:47
diakopter std: /||/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/JHp770wPSp line 1:␤------> [32m/||[33m⏏[31m/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:01 94m␤»
quietfanatic std: /</
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/So3g3UXPOk line 1:␤------> [32m/<[33m⏏[31m/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:01 95m␤»
diakopter std: />/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unmatched closing bracket at /tmp/ic7IMIggDm line 1:␤------> [32m/[33m⏏[31m>/[0m␤ expecting any of:␤ regex atom␤ regex_infix␤ termish␤ ws␤FAILED 00:01 94m␤»
quietfanatic std: /</>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/AfPSobainj line 1:␤------> [32m/<[33m⏏[31m/>/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:01 94m␤»
diakopter std: /<>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/tTn3ZMTrhR line 1:␤------> [32m/<[33m⏏[31m>/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:01 94m␤»
diakopter std: /<:>/
quietfanatic std: /<??>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/9h0LlTyyT6 line 1:␤------> [32m/<[33m⏏[31m:>/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:01 94m␤»
std 28634: OUTPUT«ok 00:01 94m␤»
diakopter std: /<:?>/ 02:48
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/Y6C9TqEBg1 line 1:␤------> [32m/<[33m⏏[31m:?>/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:02 94m␤»
quietfanatic std: /<???>/
p6eval std 28634: OUTPUT«ok 00:02 97m␤»
quietfanatic std: /<??????????????????>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/UMVdLmZHFk line 1:␤------> [32m/<???[33m⏏[31m???????????????>/[0m␤FAILED 00:01 96m␤»
quietfanatic TimToady well?
diakopter std: /<???!!!>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/9wP7ekbcnX line 1:␤------> [32m/<???[33m⏏[31m!!!>/[0m␤FAILED 00:01 96m␤»
diakopter std: /<??!!>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
quietfanatic std: /<????>/ 02:49
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/M3TFAzvN20 line 1:␤------> [32m/<???[33m⏏[31m?>/[0m␤FAILED 00:02 96m␤»
diakopter std: /<0??1!!2>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/hWOqvAsMOm line 1:␤------> [32m/<[33m⏏[31m0??1!!2>/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:01 96m␤»
diakopter std: /<<>>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
diakopter std: /<<<>>>/
quietfanatic std: /<? ???>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/8b1GjEP7wt line 1:␤------> [32m/<<<[33m⏏[31m>>>/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:01 96m␤»
std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unrecognized regex assertion at /tmp/dgLnVlYQNW line 1:␤------> [32m/<?[33m⏏[31m ???>/[0m␤ expecting any of:␤ assertion␤ name␤FAILED 00:01 96m␤»
quietfanatic std: /<!?>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤» 02:50
diakopter std: !/&/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/oeVsMTZRg4 line 1:␤------> [32m!/&[33m⏏[31m/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:01 99m␤»
quietfanatic std: /<!??>/
diakopter std: !/&&/
p6eval std 28634: OUTPUT«ok 00:02 96m␤»
std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/f2XWaPr8XF line 1:␤------> [32m!/&&[33m⏏[31m/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:03 99m␤»
diakopter std: !/&<?>/
p6eval std 28634: OUTPUT«ok 00:01 100m␤»
diakopter std: /&&<?>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
diakopter std: /&&/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/u8oxJZoNEr line 1:␤------> [32m/&&[33m⏏[31m/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:01 96m␤» 02:51
quietfanatic std: /<!!>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
quietfanatic std: /<!!!>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
quietfanatic std: /<!!!!>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/Vz1aYGipBB line 1:␤------> [32m/<!!![33m⏏[31m!>/[0m␤FAILED 00:01 96m␤»
diakopter one might think we're trying to fill irclog's db
quietfanatic std: /<?!>/
p6eval std 28634: OUTPUT«ok 00:02 96m␤»
quietfanatic std: /<!???>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
02:52 cottoo joined
quietfanatic std: /<!????>/ 02:52
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/wJs2KjL7VY line 1:␤------> [32m/<!???[33m⏏[31m?>/[0m␤FAILED 00:01 96m␤»
quietfanatic std: /<!!???>/
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
quietfanatic std: /<!!!???>/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/IKYhq9wrup line 1:␤------> [32m/<!!![33m⏏[31m???>/[0m␤FAILED 00:01 96m␤»
quietfanatic I don't quite understand what rules it's using here. 02:53
diakopter one could read the grammar. or the spec. wait, whom am I kidding? 02:54
quietfanatic I SHALL READ THE GRAMMAR!
02:54 _jaldhar_ joined 02:55 cotto joined, Util joined
diakopter std: \\ 02:57
p6eval std 28634: OUTPUT«ok 00:02 96m␤»
quietfanatic What's so funny about unspace? 02:58
std: /\\/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤Regex missing terminator at /tmp/lRUdWIjfGH line 1 (EOF):␤------> [32m/\\/[33m⏏[31m<EOL>[0m␤FAILED 00:02 97m␤»
diakopter std: \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
quietfanatic std: /\\ /
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤No unspace allowed in regex (for literal please quote with single quotes) at /tmp/VgK3nB7bBq line 1:␤------> [32m/\\[33m⏏[31m /[0m␤FAILED 00:01 96m␤»
quietfanatic cute!
diakopter std: /\\' '/
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤(Possible runaway string from line 1)␤Unable to parse regex; couldn't find final '/' at /tmp/449eWG0Pj0 line 1 (EOF):␤------> [32m/\\' '/[33m⏏[31m<EOL>[0m␤ expecting escape␤FAILED 00:01 96m␤» 02:59
quietfanatic std: /\\' '\\/ \\/' \\'/ 03:00
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
quietfanatic According to what I understand from the grammar, /<!!!!>/ should parse.
diakopter std: /\\' '/\\'/'\\/ '/'\\//\\
p6eval std 28634: OUTPUT«ok 00:01 96m␤»
quietfanatic std: /<!!!!>/ 03:01
p6eval std 28634: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/85tGHxoNmt line 1:␤------> [32m/<!!![33m⏏[31m!>/[0m␤FAILED 00:01 96m␤»
diakopter TimToady: std uses 96MiB with the $::DEBUG lines; 75MiB without them 03:02
quietfanatic It should parse as assertion:<!> containing assertion:<!!!>.
diakopter wait, no. 94MiB without them.
sry 03:03
quietfanatic Still, 2 meggers is significant.
03:06 RoomsUser_ joined
quietfanatic sprixel: say (1, 2, (3, 4), 5).map(*+1).perl 03:09
p6eval sprixel 28634: OUTPUT«Sprixel Error: real method calls NYI␤»
pugs_svn r28635 | kyle++ | [t/spec] Test for RT #69460 03:31
r28636 | kyle++ | [t/spec] Test for RT #69378
03:48 crythias left
pugs_svn r28637 | lwall++ | [STD] fix P5Regex quantified atom capture just like we did Regex yesterday 03:52
03:55 sparc joined 04:02 mberends joined
mberends enjoys an exciting backlog and looks forward to committing sprixel's test harness from $work 04:06
quietfanatic Okay, /<!!!!>/ should fail, but not with that error message. 04:08
std: /<!!!!>/
p6eval std 28636: OUTPUT«[31m===[0mSORRY![31m===[0m␤regex assertion not terminated by angle bracket at /tmp/mbiQ0pPcBZ line 1:␤------> [32m/<!!![33m⏏[31m!>/[0m␤FAILED 00:02 97m␤»
quietfanatic Well, maybe it should.
Grr.
04:48 baest joined
pugs_svn r28638 | lwall++ | [STD] break P5Regex grammar out from STD to separate file 04:54
r28638 | P5 grammar will only be loaded on demand
05:33 nbrown_ joined 05:40 zloyrusskiy joined 06:08 eternaleye joined 06:26 mberends left 06:42 colomon joined 06:49 rfordinal joined
moritz_ \\o/ 06:51
diakopter moritz_: hi
rakudo: sleep 20 06:52
p6eval rakudo d91717: TIMED_OUT
diakopter sprixel: loop (;1;) {}
p6eval sprixel 28638: OUTPUT«Sprixel Error: /_undefined_/ not yet implemented; apologies from the crew!␤» 06:53
quietfanatic :)
06:53 mberends joined
diakopter wait wha 06:53
pika FIRE
PK FIRE 06:54
quietfanatic It's PK fire.
Yeah.
diakopter oh.
sprixel: 1 while 1
p6eval sprixel 28638: TIMED_OUT
quietfanatic That won't keep running like the rakudo: sleep did, will it?
mberends diakopter: R U ready to merge Test.pm.js ?
diakopter checking
mberends: whaddya mean merge 06:55
mberends I'm about to commit some changes - hopefully they don't collide with anything you're doing in that file
carlin rakudo: 'foo' ~~ /<ws>*/;
diakopter haven't done anything
p6eval rakudo d91717: TIMED_OUT 06:56
mberends ok, preparing commit...
diakopter carlin: it's rebuilding rakudo atm... does that repeat forever for you?
quietfanatic it may be matching the zero-width pattern infinite times
carlin diakopter: Yip
diakopter oh 06:57
moritz_: g'morning 06:58
moritz_ good morning
mberends :) moritz_ 07:01
diakopter std: say 'I\\'m faster now'
p6eval std 28638: OUTPUT«ok 00:01 95m␤» 07:02
diakopter o wait
moritz_ I've seen the TIMEOUT changes to p6eval in the backlog - diakopter++
diakopter TimToady wants the _ removed 07:04
and maybe the D as well 07:05
pugs_svn r28639 | mberends++ | [sprixel] first cut at skip(), 'make spectest' improved
diakopter ++quietfanatic figured out the 'exit 14' -> $? == 14 thing 07:06
07:10 mariuz joined
diakopter phenny: tell diakopter g'morning 07:13
phenny You can tell yourself that.
diakopter_ phenny: tell diakopter g'morning
phenny diakopter_: I'll pass that on when diakopter is around.
avuserow rakudo: say 1 + "nancy" 07:19
p6eval rakudo d91717: OUTPUT«1␤»
avuserow rakudo: say "nancy" + 1
p6eval rakudo d91717: OUTPUT«1␤»
avuserow rakudo: say "NaNcy" + 1
p6eval rakudo d91717: OUTPUT«1␤»
avuserow perl6: say "nancy" + 1
p6eval pugs, rakudo d91717: OUTPUT«1␤»
..elf 28639: OUTPUT«Argument "\\x{6e}\\x{61}..." isn't numeric in addition (+) at (eval 124) line 3.␤nan␤»
..sprixel 28639: OUTPUT«Sprixel Error: TypeError: Object nancy has no method 'do_Additive'␤»
07:22 TiMBuS joined 07:28 snearch joined
avuserow perl6: say undef + 1 07:29
p6eval sprixel 28639: OUTPUT«Sprixel Error: /_term__S_undef_/ not yet implemented; apologies from the crew!␤» 07:30
..pugs: OUTPUT«1␤»
..rakudo d91717: OUTPUT«Use of uninitialized value␤1␤»
..elf 28639: OUTPUT«␤»
avuserow perl6: say undef ~ 1
p6eval sprixel 28639: OUTPUT«Sprixel Error: /_term__S_undef_/ not yet implemented; apologies from the crew!␤»
..pugs: OUTPUT«1␤»
..rakudo d91717: OUTPUT«Use of uninitialized value␤1␤»
..elf 28639: OUTPUT«␤»
avuserow rakudo: my Str $a = "Nancy"; my Int $b = 1; say $a + $b 07:31
p6eval rakudo d91717: OUTPUT«1␤»
avuserow pugs: my Str $a = "Nancy"; my Int $b = 1; say $a + $b
p6eval pugs: OUTPUT«1␤»
avuserow sprixel: my Str $a = "Nancy"; my Int $b = 1; say $a + $b
p6eval sprixel 28639: OUTPUT«Sprixel Error: TypeError: Cannot read property 'M' of undefined␤»
avuserow elf: my Str $a = "Nancy"; my Int $b = 1; say $a + $b
p6eval elf 28639: OUTPUT«Argument "\\x{4e}\\x{61}..." isn't numeric in addition (+) at (eval 123) line 5.␤nan␤»
moritz_ dukeleto++ # google-opensource.blogspot.com/2009...rrots.html 07:34
07:54 iblechbot joined 08:17 bionoid joined
jnthn oh morning 08:25
moritz_ \\o/ 08:27
Matt-W \\o/ jnthn 08:34
jnthn will make his first Rakudo commit in over a month later on today. :-) 08:35
Matt-W WHEEEEEEEEE
is it huge and exciting? 08:36
Matt-W may be suffering from morning giddiness and exciteability 08:39
jnthn Matt-W: Not yet
jnthn hasn't even written the content of first commit yet ;-)
08:39 NorwayGeek joined
Matt-W :( 08:40
jnthn Matt-W: Don't worry. Huge and exciting will be on the way. 08:42
Matt-W hurrah 08:44
08:48 xinming joined, payload joined 08:53 meppl joined
spinclad poings around the room like an alleged ferret 08:56
^v^ 'huge and exciting,' v^v 'my natural state' ^v^ 08:58
09:12 nbrown_ joined, p6eval joined, rhr joined, Confield joined, japhb joined, Eevee joined, kcwu joined, jrtayloriv joined, mikehh joined, FOAD joined, [particle] joined, silug joined, araujo joined, lisppaste3 joined, Trey joined, kidd_ joined, yves joined, allbery_b joined, omega joined, andreasg1 joined, michaelr_ joined, viklund_ joined, dalek joined, kst joined, jjore_ joined, cxreg joined, nothingmuch joined, diakopter joined, tylerni7 joined, Intensity joined, Rint joined, Helios- joined, kolibrie joined, rjh joined, broquaint joined, dmpk2k joined, Infinoid joined, buu joined, garron joined, blaze-x joined, integral joined, clkao joined, ewilhelm joined 09:13 NorwayGeek joined 09:15 rfordinal joined 09:22 [particle]1 joined 09:24 masak joined
carlin I hate it when I think I've discovered a bug but can't test it through p6eval 09:34
Oh! 09:35
rakudo: class Foo { use Test; }
p6eval rakudo d91717: TIMED_OUT
carlin No ... 09:36
rakudo: class Foo { use Test; }
p6eval rakudo d91717: TIMED_OUT
09:41 yahooooo joined 09:43 riffraff joined
carlin gist.github.com/202884 # known? 09:47
masak don't think so. 09:49
phenny masak: 05 Oct 23:29Z <Tene> tell masak You should add weblocks to your list of web frameworks to look at.
09:49 mberends joined 09:51 bionoid joined
masak ooh! another continuations-based framework! 09:52
Tene I've heard very good things about weblocks. Very high praise. 09:54
afk sleep
Matt-W oooh 09:55
I liked the look of Seaside
but I didn't really want to have to deal with a Smalltalk environment
Be nice to have something like that in Perl 6 10:01
"When the user clicks on the appropriate link (or button), Weblocks maps the click back to the callback. If the callback is a lexical closure, the programmer will have the full context in which the closure was created despite the fact that it was created during a completely different HTTP request" yum 10:02
10:03 rfordinal joined 10:25 rfordinal left 10:33 sri_ joined 10:34 riffraff joined 11:07 huf_ joined 11:32 ruoso joined
carlin github.com/carlins/mwbot # Now using JSON 11:57
'Night all
masak carlin: oops, my bad. it was reported. rt.perl.org/rt3/Ticket/Display.html?id=64688 -- marking as duplicate.
can we consider changing the white text on yellow background to black on yellow in perl6.org/ ? 12:05
moritz_ as long as all the >>MORE<< links have the same color, yes 12:06
don't know if black is best
masak there needs to be more contrast, at least. 12:07
jonalv++, my colleague, pointed this out. 12:09
moritz_ then please go ahead
masak changes all the >>MORE<< links to a darker color
moritz_ hopes that masak++ just has to change a few lines of CSS 12:12
12:12 takadonet joined
takadonet morning all 12:12
12:18 Util joined
moritz_ masak: maybe the dark blue from camelia's link might be a good color 12:20
masak good idea. I'll try that.
waitaminute, which dark blue? 12:21
there's one white link in the header, and one black.
a darkish blue works quite well, though. I'll commit that. 12:23
12:23 rgrau joined
moritz_ I meant the blue from the 6 and 9 and camelia's wings 12:24
masak oh, "wings", not "link". now I get it. 12:25
moritz_ a bit distracted. Sorry. 12:26
pugs_svn r28640 | masak++ | [perl6.org] made links dark blue instead of white
r28640 |
r28640 | The white didn't contrast enough with the pale yellow background in
r28640 | some of the boxes.
moritz_ got a new colleage from the Ukraine, and so far I found at least 3 different mis-spellings of his name in that various departments
12:30 szabgab joined 12:31 sundar joined
jnthn moritz_: Because it was transliterated in 3 different ways? :-) 12:32
moritz_ jnthn: yes 12:33
slavik2 moritz_: sounds about right ... what's his name? 12:34
jnthn moritz_: There's more than one way to translit it. :-)
moritz_: Is it really too hard to just use the cyrillic? ;-)
slavik2 haha 12:35
12:35 synth joined
slavik2 my name makes much more sense in Cyrillic than in Latin 12:35
masak Cyrillic makes much more sense in Cyrillic than in Latin.
jnthn Ес, бут латин ин сириллик ис од. 12:36
moritz_ I don't know his cyrillic name, and it's hardly my place to give away 12:38
but the administration people are oddly attached to latin here 12:40
jnthn Righty. Rakudo time! 12:41
moritz_ jnthn: so what are you working on today? 12:45
jnthn moritz_: Initial pieces towards signature handling changes.
moritz_ jnthn: great. Has you grant been approved? 12:46
jnthn moritz_: Yes.
moritz_ even better! 12:47
jnthn moritz_: But not announced on news.perlfoundation.org yet, but I got email saying it has been.
moritz_ just wanted to write that it hasn't been announced :) 12:48
jnthn Yeah
I'm sure TPF will get to it.
jnthn gets a clean Parrot tree built, since the updated one SEGV'd somehow.
masak Rakudo time! \\o/ 12:49
jnthn really hopes this Parrot build works... 12:51
AARRRGH! 12:52
.\\miniparrot.exe config_lib.pasm > runtime\\parrot\\include\\config.fpmc
NMAKE : fatal error U1077: '.\\miniparrot.exe' : return code '0xc0000005' 12:53
miniparrot.exe segfaults.
masak :/
moritz_ trunk HEAD?
jnthn moritz_: Whatever PARROT_REVISION wants, I just did a clean --gen-parrot 12:54
Nuked my tree and all that lot.
So it's not leftovers.
moritz_ did you also delete parrot_install/ ? 12:55
anyway, we could just as well dump PARROT_REVISION to current HEAD to get some testing
jnthn moritz_: yup 12:56
moritz_: trying head now
moritz_ s/dump/bump/
jnthn
.oO( we could just as well dump parrot... )
12:58
12:58 yahooooo joined
jnthn OK, so 13:03
turns out we switched to optimized Parrot by defualt.
masak "fast but wrong"? 13:07
jnthn More like "fails to build quite fast" :-) 13:09
That is, Parrot fails to build. Doesn't evne get to building Rakudo.
Matt-W doh
13:09 [particle] joined, SmokeMachine joined
moritz_ so, what's up with proto? 13:11
specifically with the installed-modules branch
mberends er, sorry sir, I found this toy called sprixel and forgot about proto... temporarily :/ 13:16
masak :)
mberends it's a damn good excuse imho 13:17
moritz_ aye
masak moritz_: I'm reading the TODO list at the end of the proto script. it seems to be coming along nicely. up to step 11 completely done. step 12 part done.
mberends++
I'm thinking of givein that branch a spin. I'm looking forward to the benefits a centralized lib/ will bring.
13:18 xinming_ joined
mberends masak: we can rendezvous in proto later in the week, tuits permitting 13:21
dalek kudo: f845ccf | jonathan++ | Configure.pl:
On Win32, the optimized Parrot does not even build, so don't do --optimize on Win32 for now.
masak mberends: aye. for great justice. 13:22
mberends masak: and world peace.
masak mberends: I'll also see if I can't sneak in a few tuits for the temporal-flux implementation.
mberends: yes, but someone set up us the bomb.
13:23 iblechbot joined
mberends masak: urghh :( 13:23
masak did I mention recently how extremely unhelpful the line 'in Main (src/gen_setting.pm:3468)' is?
it contains negative usefulness.
colomon masak: It is correct, isn't it? I mean, you could look up src/gen_setting.pm:3468 and figure out what file the problem actually was in. 13:31
(disclaimer: not that I have tried this myself, mind you. I always just look where I've just made the change.)
jnthn No, it seems tos how that on parse errors, so it's useless. 13:32
masak nod.
colomon Oh, it's the last line of the file. I see. 13:34
negative usefulness indeed.
masak I've ticketed it, but I seemed to have excess LTA rage inside me. 13:35
I feel better now.
13:37 PacoLinux joined
Matt-W masak: breathe deeply 13:39
It is very much less than awesome
But we will survive the dark time
and one day rejoice when it goes away 13:40
masak \\o/
Matt-W does pmichaud's new rx engine have amazing error reporting potential?
masak possibly. it's supposed to bring us closer to STD.pm, so...
jnthn digs into some refactoring. 13:41
oh man, where to start...
Util perl6 .say for @*INC;
perl6: .say for @*INC; 13:42
p6eval rakudo f845cc: OUTPUT«/home/p6eval/.perl6/lib␤/home/p6eval//p1/lib/parrot/1.6.0-devel/languages/perl6/lib␤lib␤.␤»
..elf 28640: OUTPUT«Use of uninitialized value in concatenation (.) or string at ./elf_h line 5105.␤syntax error at (eval 122) line 4, near "{␤->say"␤ at ./elf_h line 5881␤»
..sprixel 28640: OUTPUT«Sprixel Error: @INC is not defined␤»
..pugs: OUTPUT«␤»
Util rakudo: .say for @*INC; 13:43
p6eval rakudo f845cc: OUTPUT«/home/p6eval/.perl6/lib␤/home/p6eval//p1/lib/parrot/1.6.0-devel/languages/perl6/lib␤lib␤.␤»
PerlJam jnthn: begin at the beginning and continue until the end. Then stop
Util rakudo: BEGIN { unshift @*INC, "kibble" }; .say for @*INC;
p6eval rakudo f845cc: OUTPUT«kibble␤/home/p6eval/.perl6/lib␤/home/p6eval//p1/lib/parrot/1.6.0-devel/languages/perl6/lib␤lib␤.␤»
jnthn PerlJam: Suddenly it's all clear to me!
;-)
Util rakudo: use lib "kibble"; .say for @*INC;
p6eval rakudo f845cc: OUTPUT«/home/p6eval/.perl6/lib␤/home/p6eval//p1/lib/parrot/1.6.0-devel/languages/perl6/lib␤lib␤.␤»
PerlJam jnthn: or for more fun ... begin in the middle and work your way outward until you reach the edges. Then stop. :-)
Util :(
PerlJam jnthn: what are you refactoring? 13:44
jnthn PerlJam: Initially, signatures.
But that's a big thingy.
My initial task is to refactor the way actions deal with signatures, to make things neater, use more compile time knowledge at compile time, and get the signature AST generation pulled out into one place. 13:45
Util In Rakudo, `use lib` parses, but silently has no effect?
jnthn That won't win us much besides cleaner code initially.
Next step is re-do the way signatures are stored internally. 13:46
Then switch to constructing those.
masak ah, a signatures refactor.
jnthn With maybe a compatibility layer in, or maybe not.
After that, stop using Parrot's signature binder and start using our own. 13:47
masak that'll close a couple of signatures tickets, I imagine.
PerlJam Util: apparently
jnthn Then finally, all the missing signatures features. 13:49
Matt-W Cleaner code as a first step is probably a good thing, if it lets you see what to do next more easily
jnthn Matt-W: Yes, I think this is a place to start.
Matt-W And since we have a good test suite, it's easier to go in and do these things
jnthn a *good* place
Matt-W At my work, we don't have a good test suite, so we just can't
Matt-W is really coming over to TDD
or at least, comprehensive unit testing
13:49 tlb joined
Util I cannot find any references to `use lib` in the specs, although S19 list `-I` as doing the equivalent, like `-I` did on Perl5's command-line. 13:49
Matt-W Util: so far I've only seen Perl 6 code say BEGIN { @*INC.push: 'foo' }
I'm not sure if that's supposed to be the final form of it 13:50
Util Matt-W: Me, too.
diakopter phenny: g'morning
phenny diakopter: 07:13Z <diakopter_> tell diakopter g'morning
13:54 PacoLinux joined
mberends g'morning diakopter 13:55
diakopter mberends: howdy 13:56
mberends: have you explored other .t that (could possibly) have some that pass? 13:59
diakopter hasn't finished backlogging
mberends diakopter: no, but spectest.data has a few files commented out that were partly working but died after a recent update 14:01
diakopter oh :) 14:02
mberends S04-statement-modifiers/if.t S04-statements/do.t S04-statements/for.t S04-statements/if.t S04-statements/while.t 14:03
masak rakudo: class MyMatch does Associative { method postcircumfix:<{ }> { "foo" } }; $/ = MyMatch.new; say $0 14:07
p6eval rakudo f845cc: OUTPUT«get_pmc_keyed() not implemented in class 'MyMatch'␤in Main (/tmp/6peZmmL4bY:0)␤» 14:08
masak submits rakudobug
mberends diakopter: next spectest improvement will be skipping blocks of code, including non-test lines. Thereafter, a spectest.data todo directive to complement the skip directive. 14:10
14:15 justatheory joined 14:19 Chillance joined 14:20 Psyche^ joined
mberends diakopter: I'll explore other spec/*/*.t files manually in the next few days. Later on there will be a harness extension to automatically search for more tests. 14:26
14:31 jnthn joined, PacoLinux joined, nihiliad joined, Patterner joined, Chillance joined, justatheory joined, tlb joined, iblechbot joined, xinming_ joined, SmokeMachine joined, [particle] joined, yahooooo joined, synth joined, sundar joined, szabgab joined, rgrau joined, takadonet joined, huf_ joined, sri_ joined, bionoid joined, mberends joined, masak joined, NorwayGeek joined, ewilhelm joined, clkao joined, integral joined, blaze-x joined, garron joined, buu joined, Infinoid joined, dmpk2k joined, broquaint joined, rjh joined, kolibrie joined, Helios- joined, Rint joined, Intensity joined, tylerni7 joined, diakopter joined, nothingmuch joined, cxreg joined, jjore_ joined, kst joined, dalek joined, viklund_ joined, michaelr_ joined, andreasg1 joined, omega joined, allbery_b joined, yves joined, kidd_ joined, Trey joined, lisppaste3 joined, araujo joined, silug joined, FOAD joined, mikehh joined, jrtayloriv joined, kcwu joined, Eevee joined, japhb joined, Confield joined, rhr joined, p6eval joined, nbrown_ joined, meppl joined, payload joined, mariuz joined, colomon joined, baest joined, cotto joined, _jaldhar_ joined, envi^home joined, Woodi joined, frodwith joined, orafu joined, quietfanatic joined, googe joined, PZt joined, Woody2143 joined, frederico joined, xenoterracide joined, ssm joined, envi^office joined, slavik2 joined, s1n joined, gabiruh joined, jan___ joined, Maddingue joined, cognominal joined, buubot joined, Tene joined, phenny joined, lambdabot joined, eMaX joined, drbean joined, sjohnson joined, pugs_svn joined, christine joined, ezra joined, sbp joined, elmex joined, rapacity joined, cj joined, mtve joined, leedo_ joined, arnsholt joined, Ryan52 joined, cookys joined, coldboot joined, lumi joined, Lorn joined, avuserow joined, pmichaud joined, bigpresh_ joined, simcop2387 joined, mj41_ joined, athomason joined, moritz_ joined, Matt-W joined, felipe joined, Gothmog_ joined, eiro joined, frew_ joined, Juerd joined, renormalist joined, hatseflats joined, yath joined, jantore joined, pnu joined, rafl joined, c1sung joined, reqamst joined, lucs joined, krunen joined, dukeleto joined, Caelum joined, solarion joined, ascent_ joined, mdxi joined, awwaiid joined, KatrinaTheLamia joined, Grrrr joined, pjcj joined, PerlJam joined, c9s joined, charsbar joined, nsh_ joined, astinus joined, cls_bsd joined, carlin joined, hugme joined, betterworld joined, frettled joined, wolverian joined, ingy joined, tomaw_ joined, BinGOs joined, breinbaas joined, ilogger2 joined, obra_ joined, tarbo2 joined, he_ joined, shachaf joined, jrockway joined, spinclad joined, edenc joined, sunnavy joined, IRSeekBot joined, literal joined, szbalint joined, TimToady joined
pmichaud good morning, #perl6 14:32
moritz_ oh hai
jnthn pmichaud: morning :-) 14:34
masak morning, pmichaud
Matt-W o/ pmichaud
jnthn heh wtf 14:35
Failed 20/435 test scripts. -1306/29613 subtests failed.
masak negative information again :) 14:36
jnthn Literally.
masak hm, if you failed a negative amount of subtests, does that mean that you passed more than the available amount of subtests? 14:37
14:37 ruoso joined 14:47 Khisanth joined 15:04 pmurias joined 15:11 rfordinal joined 15:13 breinbaa1 joined, c9s joined, obra_ joined, cls_bsd_ joined 15:26 masak joined, pyrimidine_ joined, KyleHa joined, cosimo joined, pmurias joined, Matt-W joined, mdxi joined, solarion joined, charsbar joined, simcop2387 joined, nsh joined, _jaldhar_ joined, wolverian joined, Guest43410 joined, cls_bsd_ joined, obra_ joined, c9s joined, breinbaa1 joined, Khisanth joined, ruoso joined, PacoLinux joined, nihiliad joined, Patterner joined, Chillance joined, justatheory joined, tlb joined, iblechbot joined, xinming_ joined, SmokeMachine joined, [particle] joined, yahooooo joined, synth joined, sundar joined, szabgab joined, rgrau joined, takadonet joined, huf_ joined, sri_ joined, bionoid joined, NorwayGeek joined, ewilhelm joined, clkao joined, integral joined, blaze-x joined, garron joined, buu joined, Infinoid joined, dmpk2k joined, broquaint joined, rjh joined, kolibrie joined, Helios- joined, Rint joined, Intensity joined, tylerni7 joined, diakopter joined, nothingmuch joined, cxreg joined, jjore_ joined, kst joined, dalek joined, viklund_ joined, michaelr_ joined, andreasg1 joined, omega joined, allbery_b joined, yves joined, kidd_ joined, Trey joined, lisppaste3 joined, araujo joined, silug joined, FOAD joined, mikehh joined, jrtayloriv joined, kcwu joined, Eevee joined, japhb joined, Confield joined, rhr joined, p6eval joined, nbrown_ joined, meppl joined, payload joined, mariuz joined, colomon joined, baest joined, cotto joined, envi^home joined, frodwith joined, orafu joined, quietfanatic joined, frederico joined, xenoterracide joined, ssm joined, envi^office joined, slavik2 joined, s1n joined, gabiruh joined, jan___ joined, Maddingue joined, cognominal joined, buubot joined, phenny joined, lambdabot joined, eMaX joined, drbean joined, pugs_svn joined, christine joined, sbp joined, elmex joined, rapacity joined, jnthn joined, cj joined, leedo_ joined, arnsholt joined, Ryan52 joined, cookys joined, coldboot joined, lumi joined, Lorn joined, avuserow joined, pmichaud joined, bigpresh_ joined, mj41_ joined, athomason joined, moritz_ joined, felipe joined, Gothmog_ joined, eiro joined, frew_ joined, Juerd joined, renormalist joined, hatseflats joined, yath joined, jantore joined, pnu joined, rafl joined, c1sung joined, reqamst joined, lucs joined, krunen joined, dukeleto joined, Caelum joined, ascent_ joined, KatrinaTheLamia joined, pjcj joined, astinus joined, carlin joined, betterworld joined, frettled joined, tomaw_ joined, BinGOs joined, he_ joined, shachaf joined, jrockway joined, spinclad joined, edenc joined, sunnavy joined, IRSeekBot joined, literal joined, szbalint joined, TimToady joined
masak wow. it's like the air just cleared up in here. :) 15:28
15:28 pyrimidine_ joined, xinming joined
moritz_ somebody complained in #parrot that they couldn't join - I thought I might eliminate a few possible causes :-) 15:28
15:28 pyrimidine joined, pyrimidine_ left
moritz_ and it worked. Welcome pyrimidine 15:30
pyrimidine o/
what was the problem? Was I banned for being generally annoying? ;) 15:31
masak
moritz_ chances are that sombody banned a spammer with a dynamic IP
and then you got into the same IP range
due to dynamic IP assignment from ISP 15:32
15:32 colomon_ joined
pyrimidine interesting, as I'm at university 15:32
frettled masak: ∆? 15:34
oh.
frettled goes d'oh.
moritz_ pyrimidine: anyway, I find that banning reasons usually decay, but the bans themselves don't
frettled moritz_: are you trying to ∫ ∆? 15:35
masak we're an integral group.
frettled
diakopter but discrete. 15:36
TimToady we're an integral group, and a Infinoid group and a renormalist group
pyrimidine moritz_: makes sense. 15:37
masak luckily, we're not all masakists. 15:38
pmichaud I'm a member of all groups that refuse to have me as a member of the group.
frettled TimToady: and some may even claim that we're both rational and complex.
pmichaud: you're of course welcome to be a member of that group
pmichaud darn!
KyleHa I'm not sure I'd want to be a member of any group that would have me as a member.
TimToady then there's the group of all groups that do not include themselves
KyleHa Now I have to look that up so I know whose joke I'm stealing. 15:39
masak I'm not sure I'd want to be a member of a group that would refuse to have pmichaud as a member, but of which he of course would be welcome to be a member.
frettled KyleHa: Samuel Clemens (Mark Twain), perhaps?
masak I think so.
KyleHa Groucho Marx, says the Google.
frettled On your nose.
15:40 jrtayloriv joined
diakopter Go ogle Google 15:41
jnthn manages to make actions.pm a little shorter 15:44
But breaks everything in the process. Whee.
moritz_ prefers longer and working :-)
jnthn is working on working now. 15:45
frettled It's by breaking things we learn how pretty they look when they are in pieces. ;)
ruoso trying to understand if "my $a = (1, (2, (3,4)))" flattens or not...
diakopter does $a contain 1 after that? 15:47
diakopter clueless, as usual
TimToady no, scalar assignment shouldn't ever throw anything away 15:48
since the clear intent is to capture all those values somehow
it's the somehow that is puzzling
ruoso should I consider multidimensionality as something that shouldn't been thrown away? 15:49
masak I'm of the school of thought that software is best understood by selectively disabling pieces of it to see what breaks.
ruoso that was my original idea when I wrote the s08 sketch
TimToady intentionally breaking things?
:)
to me, the real question is not so much what the parens are, but what the commas are 15:50
ruoso er... I wasn't really focusing on the parens, but on the Parcels 15:51
ok... let me explain why I think it should preserve the dimensionality
TimToady that's sort of what I mean, since comma means something different in a Parcel than in a list
ruoso in my head, flattening is a process that involves getting an iterator and building another list 15:52
my @a = @b
that operation gets an iterator for @b, and keeps consuming it and putting it into @a
recursively traversing into parcels
the mark for that to happen is "list assignment" 15:53
scalar assignment happens at a more simple level...
my $a = $b
take $b as an item and store into the cell of the scalar referenced by the name $a 15:54
TimToady you just desribed binding
ruoso er... 15:55
no...
my $a := $b
take $b and store "as" the scalar referenced by the name $a
TimToady assignment needs to be described in terms of copying
ruoso it copies the value from the cell of $b to the cell of $a 15:56
while binding replaces $a
s/cell of (..)/$1's cell/
16:01 nihiliad joined
pmurias ruoso: what do you think would be a good plan for mildew-js? 16:01
diakopter ruoso: I'm going to continue playing the naive questioner here... are you describing how the Perl user (in his/her mental model) should imagine what's going on during these operations, or are you describing one possible (or the only possible) implementation of these details? Alternatively, are you saying that those are [or should be] the same models?
ruoso diakopter, I'm describing the conceptual model on how scalars work in Perl 6... they are containers that hold values, unlike Perl 5 16:03
pmurias, I think if you make all mildew tests run in mildew-js, it'd be awesome...
diakopter the all-implementation-details-exposed-as-user-accessible-types strategy has to be arrested at some point. 16:04
ruoso at the point that the implementation can cheat when it knows it's dealing only with its own types
but it shouldn't stop anyone from writing a completely new object that behave like a scalar... 16:05
diakopter the every-single-aspect-of-the-language-pluggable-at-every-level strategy must be arrested at some point, too. If not, the only [kind of] implementation that will even/ever get close to "finished" is one that builds a custom interpreter for each program it's "compiling". 16:08
ruoso er... isn't that what the spec says? 16:09
masak :) 16:10
ruoso at least for the parser we know that's true
16:11 abra joined
ruoso in fact, that's the reason why I believe Perl 6 bootstrap is not just a "cool" thing to do, but it's actually necessary... 16:12
TimToady the circularity saw is under-specified :) 16:13
moritz_ masak: for our meeting tomorrow I have some brainstorming notes ... would you like to see them now, or tomorrow?
diakopter The parsers a Perl 6 grammar generates and uses are not pluggable at every level at runtime.
ruoso yet
TimToady :)
diakopter )o( 16:14
TimToady looks like a Darth Vader lol
masak moritz_: release early, by all means. but I think I need to write down my loose thoughts befpre reading yours, so I'll do that now. :) 16:15
diakopter oh, choking-at-a-distance; I get it
16:16 zloyrusskiy joined
ruoso diakopter, but seriously, this is one of the reasons Perl 6 is so cool... it sets the interpreter itself in the same level of the program being run, so you can extend it in very interesting way 16:18
*ways
TimToady we're just trying to figure out how to set up the defaults so that it's still optimizable while keeping that flexibility handy 16:19
hence the recent semantic changes to .wrap
16:19 stephenlb joined
ruoso yeah... nothingmuch always manages to convince me SMOP will be damn fast 16:19
jnthn
.oO( there was a change to .wrap )
diakopter don't get me wrong; I think it's cool for that reason too. And that's one of the reasons I chose JavaScript to host sprixel's VM, since it is the most late-bound env with closures
ruoso but still, I wouldn't be much optimistic on the VM supporting all Perl 6 semantics.. 16:20
TimToady well, that's why we have multiple implementations, so we can thrash out where it's okay to apply the circularity saw, and where it isn't
ruoso the question is which subset of Perl 6 are you going to support
TimToady you have to support the subset specified by the spec tests :) 16:21
diakopter ruoso: I don't understand your msg "... I wouldn't be much optimistic... " please explain.
ruoso you're probably going to implement a VM on top of the VM, and that doesn't work quite well... see KindaPerl6... which was actually the reason I started SMOP
lisppaste3 moritz_ pasted "brainstorming notes for masak++ (when he did his own)" at paste.lisp.org/display/88288
ruoso otoh, you might choose to support the "subset of Perl 6 that can actually be run by V8" 16:22
masak moritz_: I'm done, here: gist.github.com/203173 -- now going to read yours.
ruoso and 'by V8' I mean still being able to interoperate with regular js code
masak oh, I got some more. hold on. 16:23
pmurias ruoso: that limit's the subset significantly
moritz_ masak: look pretty orthogonal to me for now ;-)
masak new list: gist.github.com/203173 16:25
pmurias ruoso: but interoperating with regular js code isn't a very important thing
ruoso pmurias, depends on your goals
pmurias as there is a limited number of js libraries
diakopter ruoso: just because kp6 is too slow doesn't mean all VMs-on-VMs will be too slow.
why would one need to interoperate with 'regular js code'? 16:26
masak moritz_: yes, fairly orthogonal. but also non-conflicting, which feels promising. :)
diakopter it's using js as an assembly language
TimToady diakopter: all implementations of all languages are "too slow" for some definition :)
ruoso interoperating with regular js code might be usefull if you consider programming in Perl 6 and delivering to the browser, for instancs...
masak hm, maybe "orthogonal" implies "non-conflicting", come to think of it. 16:27
pmurias ruoso: that's what i'm mostly interested in
diakopter TimToady: right, I'm proxying whatever definition ruoso was using.
(I mean, what else could he have meant by "didn't work"?)
ruoso diakopter, think about every single method call
that have to be dispatched by the Perl 6-level VM 16:28
pmurias not nessesarly
ruoso which then results in another several method calls in V8-level
you might cheat, in some circumstances
TimToady we're trying very hard to define when you can know that you can cheat
ruoso but if you're already doing that kind of optimization, it's probably premature 16:29
diakopter right, a p6 method call (pre-increment Int let's say) uses a few hundred JavaScript USER function calls, not to mention a few thousand JavaScript "prelude" function calls V8 has already compiled to machine code.
ruoso precisely, it's not VM + VM
is VM ** VM
TimToady well, * 16:30
moritz_ only-methods could short-circuit, kinda
TimToady the spec is pretty clear about when you can think about closing and finalizing classes
and now it is clearer about when you can do agressive inlining
of multis 16:31
ruoso they can short-circuit the discovery of which methods could be dispatched
but there's still the signature binding
the context for control exception
*exceptions
and other failures
take signature binding, for instance 16:32
Capture is not a native type
which means that you can't assume it's internal representation
which basically means that you need to call a method on the capture during the signature bind
and that you need a new capture to call a method on the capture
moritz_ so you can "tie" a Capture - how ugly
TimToady but if you can see that neither the caller nor the callee cares about Capture, you can optimize it away
ruoso moritz_, not ugly, powerfull 16:33
and it's not "tie"
it's "does"
moritz_ ruoso: those are not exclusive (powerfull and ugly)
diakopter but who Captures the Capturers?
TimToady
.oO(Sauron)
16:34
diakopter hears a dryer whistle
pmurias ruoso: i'm planning to encode the capture shape(?) in the js method name
ruoso at some point this circularity is broken because you're using your own native implementaiton
pmurias, capture shape? 16:35
pmurias javascript only has positional arguments 16:36
TimToady how...Parcelish
pmurias so i plan to encode how the named arguments are mapped onto positionals in the method name
js method name that is
diakopter well, you can mark any of them with whatever temporary tags you like. or use your own Arguments type. or whatever.
TimToady or reserve 1st arg for nameds 16:37
diakopter or stash them in the callsite's "this"
without using argslots at all
TimToady just stick 'em in a global
pmurias ruoso: foo.bar_method_with_the_baz_named_argument_as_the_first_positional
diakopter global registers, YES
heh
16:38 stephenlb joined
TimToady to the first approximation, all computer memory is global :) 16:38
ruoso pmurias, er... you're basically saying you don't have captures
which is basically going to stop you very soon
pmurias ruoso: i have captures 16:39
ruoso a capture is an object
it's not just the way you lay out the arguments to a function call 16:40
TimToady gimme5 ignores the entire subject, and just assume caller/callee syncronization of foo p5=> 42 with my %args = @_
*assumes
pmurias ruoso: if you look at -Cjs from mildew-js you can see that they are handled in exactly the same way as in regular mildew
diakopter yes, a JS runtime can't use JS calling conventions to emulate P6 calling conventions. however, remember you can "do whatever you want" in the JS runtime to support the callin convention semantics, just like you can "do whatever you want" in whatever host language you're implementing whatever VM. 16:41
TimToady for a price, usually
pmurias ruoso: that's just a planned future optimalisation which will allow the object to pretend captures don't exist or pack the arguments into a capture
ruoso which is usually too high
diakopter but it has to be done sometime. 16:42
TimToady I'm not too worried about the price until after we're completely bootstrapped
diakopter exactly.
ruoso diakopter, you mean a VM?
TimToady though, of course, the price also slows down getting to the bootstrap
ruoso well, that's what Parrot and SMOP are
KindaPerl6 followed this path 16:43
to the point that it was simply inviable to keep working on it
diakopter ruoso: yes, just talking about having 'Capture's at all means there will be a VM
ruoso note that I'm not against sprixel at all
pmurias ruoso: keep in mind that sprixel and mildew-js use a different approach
TimToady or at least some kind of mangling/demangling of argument lists
ruoso I'm just warning you where the wall is, so you avoid bumping your head on it
pmurias sprixel is a VM written in js while mildew-js compiles down to js
diakopter pmurias: they're not that different 16:44
16:44 mspaulding joined
diakopter mildew-js's emitted JS is still interpreted in an analogous fashion 16:44
it just constructs the operation tree differently
ruoso what do you mean by "analogous fashion"? 16:45
pmurias stackless
ruoso ah... you're using the v8 stack
diakopter No.
No, and No.
pmurias s/using/not using/
diakopter does kp6 use the Perl stack? 16:46
pmurias yes
ruoso pmurias, wo what's the difference in the approach?
TimToady but Perl is mostly stackless, except where it isn't
pmurias between sprixel and mildew-js?
ruoso pmurias, yes
pmurias sprixel walks the VAST 16:47
diakopter yah, but stack frames take up space and time to traverse them the deeper they get 16:48
pmurias while mildew-js is exactly like yeast but compiles to js instead of C
ruoso ah... right...
but they're both creating a VM on top of V8
diakopter right.
and yet V8 is only sort of a VM. it's not an interpreter
it has managed objects/GC, but it emits all JS code to machine code
ruoso VM is actually a very imprecise definition
TimToady it's just like a machine, but not really 16:49
diakopter also, it has an extremely-optimizing-compiler for JS regular expressions
16:50 icwiener joined
diakopter anyway, not using the host language stack (aka "stackless") is quite a big difference between kp6 and sprixel/mildew-js 16:51
(unless kp6 was creating 0 lexicals in every frame and not passing any arguments to Perl subs)_ 16:52
ruoso the difference is that in order to implement the stackless you have at least two or three native calls for each call you're doing 16:55
diakopter of course. but one is hard-pressed to distinguish very many orders of magnitude between V8's JS native calls and C native calls. 16:56
16:58 cdarroch joined 16:59 Kodi joined
diakopter or similarly, how many C native calls does a smop p6 method call consume? 16:59
[particle] maybe it's better called a "nigh machine"
er, "nigh virtual machine" 17:00
17:00 ispy_ joined
ruoso diakopter, a lot 17:00
pmichaud 16:12 <ruoso> in fact, that's the reason why I believe Perl 6 bootstrap is not just a "cool" thing to do, but it's actually necessary... 17:02
...does this imply that only Perl 6 can run Perl 6 ?
also
16:42 <TimToady> I'm not too worried about the price until after we're completely bootstrapped
it was never clear to me that bootstrapping was a necessary part of the process.
moritz_ I think a partial bootstrap is necessary 17:03
like having a grammar in Perl 6
pmichaud partial, sure
ruoso at least for the grammar engine and for the built-in types
pmichaud I have no problem with that. Rakudo has been aiming in that direction from day one... it even out-did Pugs in that respect
but this tells me the decision I made over the weekend is likely the correct one (more) 17:04
all of the new grammar engine stuff is being written in NQP
which means it'll bootstrap quite nicely :) 17:05
it's also being built outside of the parrot repo
because I'd like it to not be tied too closely to Parrot 17:06
moritz_ so you'll redo the stuff that you already did in PIR? 17:07
in the pct-rx brnach?
pmichaud it's now in my nqp-rx repo on github
moritz_ oh wow
pmichaud there's still some PIR there, but eventually the source will be all NQP 17:08
except for perhaps the part that compiles down to PIR
(I don't mind if the part that compiles to PIR is written in PIR :)
moritz_ afk
17:12 mberends joined 17:15 Kodi left
jnthn glances at pmichaud's nqp-rx on github 17:19
pmichaud basically it'll end up being a re-implementation of nqp
that includes compiling regexes
jnthn pmichaud: OK, cool.
pmichaud: And context vars? :-)
pmichaud native compilation, not using PGE
yes, and context vars
jnthn pmichaud: Cool.
pmichaud: I've started refactoring signature stuff a little today.
pmichaud good deal
diakopter pmichaud: sounds like a VM :)
jnthn The first baby step was to create a Perl6::Compiler::Signature class that we instantiate and deal with from actions.pm
Rather than doing the AST generation in actions.pm itself. 17:20
pmichaud diakopter: it's more like a miniperl6 or kindaperl6, I think
diakopter ok
pmichaud but it'll have a working grammar engine inside
jnthn Thus I can switch to a new signature representation more easily, but also we collect all the info together.
pmichaud jnthn: sounds like a win
jnthn pmichaud: OK, glad you like the idea. :-) 17:21
pmichaud in many ways that's what STD.pm is also doing -- it creates its own signature objects during parsing
jnthn pmichaud: Aye, and I expect the two will converge more over time. 17:22
Getting us having a parse-time signature object at all is, I think, a good first step.
I'm getting clsoe.
Apart from, I get a GC segfault right now. :-/
pmichaud sounds good to me, except for the gc segfault :)
the most interesting piece of nqp-rx right now is src/Regex/OPP.pm
which is a miniature operator precedence parser modeled after STD.pm's 17:23
jnthn I just saw the .pm in there and was liike "ooh"
But it hurt my head a little ;-)
pmichaud it hurts less than STD.pm's opp :)
jnthn hehe
Does it compile and work already?
pmichaud the mini opp doesn't worry about adverbs, for example. It's intended to handle more traditional operator precedence parsing
not yet 17:24
I'm having to work out some bootstrapping issues to get all of the pieces to work
jnthn How are OPP.pir and OPP.pm related?
pmichaud OPP.pir is the hand-translation of OPP.pm
jnthn ah, bootstrapping?
pmichaud yeah.
also, there are some operations that OPP.pm wants that aren't really supported in NQP yet. I'm having to think about those a bit. 17:25
for example, binding an object's attribute
jnthn signature.pm has some inline PIR in hope of something similar in NQP in the future. :-) 17:26
pmichaud good to know
I'll take a look at it. We'll figure something out.
jnthn I'm hoping to finish/commit this piece today. 17:27
After that, it'll be onto starting to stub in the new low level signature PMC. 17:29
17:29 NorwayGeek joined 17:33 elmex_ joined
japhb moritz_, ping 17:38
moritz_, irclog.perlgeek.de/parrotsketch/today is missing lines in the middle of my report (if just the end cut off, I'd think it was just lagged, but the EOR at the end is there). What happened?
jnthn oh yeah, parrotsketch... 17:40
17:42 PZt joined
japhb moritz_, nevermind, looks like a throttle that my client didn't recognize 17:46
17:55 Tene joined 17:57 lucs left
masak pmichaud: should Regex/OPP.pm really be Regex/OPP.pg, or is the intro comment in Regex/OPP.pir wrong? 18:08
pmichaud don't know yet.
I need to re-read what the latest synopsis changes say about file suffixes.
when all is said and done, it's likely to be .pm 18:09
masak ok.
pmichaud so I suspect the intro comment is wrong
want a commit bit so you can fix it? ;-)
or we can add the project to hugme
masak I'd love one. 18:10
pmichaud how does one add projects to hugme?
masak (1) be moritz_ (2) ??? (3) project!
pmichaud masak: you now have commit rights :) 18:13
also add yourself to CREDITS, if appropriate :)
oh wait, I didn't push that yet?
masak not appropriate yet, perhaps.
pmichaud pushed
masak what relation does pct-rx have to nqp-rx? why is one a Parrot branch and the other a github project? 18:15
pmichaud the parrot branch is now gone 18:16
I've decided to develop this project external to parrot
so it's just nqp-rx. 18:18
masak ah.
that's why I see so many similarities.
pmichaud nqp-rx is a (new) implementation of nqp that also can compile regexes
18:18 jrtayloriv joined
pmichaud and it compiles regexes without PGE -- i.e., it's independent of the old PGE system entirely 18:18
(at least it will be, once we're bootstrapped)
masak oh, so the goal is to bootstrap? cool.
pmichaud yes
but also to get the tools to be written in NQP
_including_ the regex engine
masak it sounds very sane, I think. 18:19
pmichaud nqp-rx is also intended to be the primary (and full) interface to the parrot compiler toolkit
i.e., one can write a compiler using only nqp-rx, no other tools needed
hopefully this will enable us to also target other backends :) 18:20
or others can use nqp to bootstrap their own systems
18:20 barney joined
masak I pushed the one-char fix. 18:21
pmichaud thanks :-)
japhb pmichaud, how far is nqp-rx from being able to replace at least NQP-as-it-exists-now? 18:22
pmichaud japhb: at least a week away
japhb I'm wondering when I need to start testing Plumage on nqp-rx ...
pmichaud more likely "approximately a week away"
japhb Ah, that's actually sooner than I expected, cool!
pmichaud yes... NQP itself wasn't hard to implement the first time
so I suspect it'll be even easier the second time around :)
japhb And then I get to start bugging you for all the features that are currently driving me nuts by not being in NQP. :-)
pmichaud I think I did NQP before in just a few days
no.
then you get to start adding the features you want to nqp-rx
:)
japhb aww, making me write my own dogfood. :-) 18:23
masak pmichaud: I suppose this rewrite will give us tracing, so that we can do what Damian's Regexp::Grammars does. :) 18:26
pmichaud masak: yes, that's intended
masak \\o/
pmichaud but I could use some specs on what the tracing should look like
masak gist.github.com/163370
I wrote that one during YAPC::EU, after seeing Damian's talk.
pmichaud niiiiiiice 18:27
masak :)
it's just a start, I suspect. 18:28
pmichaud but I like the approach very much
it hadn't occurred to me to keep a separate tracing object
in that sense it acts like action methods
it's also easy to turn on/off
masak aye.
that's the idea.
pmichaud we'll start with that somehow 18:29
18:35 rfordinal3643 joined 18:41 masak joined, rfordinal3643 joined, barney joined, Tene joined, PZt joined, elmex joined, NorwayGeek joined, mberends joined, ispy_ joined, cdarroch joined, icwiener joined, stephenlb joined, zloyrusskiy joined, nihiliad joined, colomon joined, pyrimidine joined, xinming joined, KyleHa joined, cosimo joined, pmurias joined, Matt-W joined, mdxi joined, solarion joined, charsbar joined, simcop2387 joined, nsh joined, wolverian joined, Guest43410 joined, cls_bsd_ joined, obra_ joined, c9s joined, breinbaa1 joined, Khisanth joined, ruoso joined, PacoLinux joined, Patterner joined, Chillance joined, justatheory joined, iblechbot joined, SmokeMachine joined, [particle] joined, yahooooo joined, synth joined, sundar joined, szabgab joined, takadonet joined, huf_ joined, sri_ joined, bionoid joined, ewilhelm joined, clkao joined, integral joined, blaze-x joined, garron joined, buu joined, Infinoid joined, dmpk2k joined, broquaint joined, rjh joined, kolibrie joined, Helios- joined, Rint joined, Intensity joined, tylerni7 joined, diakopter joined, nothingmuch joined, cxreg joined, jjore_ joined, kst joined, dalek joined, viklund_ joined, michaelr_ joined, andreasg1 joined, omega joined, allbery_b joined, yves joined, kidd_ joined, Trey joined, lisppaste3 joined, araujo joined, silug joined, FOAD joined, mikehh joined, kcwu joined, Eevee joined, japhb joined, Confield joined, rhr joined, p6eval joined, meppl joined, baest joined, cotto joined, frodwith joined, orafu joined, frederico joined, xenoterracide joined, ssm joined, envi^office joined, slavik2 joined, s1n joined, gabiruh joined, jan___ joined, Maddingue joined, cognominal joined, buubot joined, phenny joined, lambdabot joined, eMaX joined, drbean joined, pugs_svn joined, christine joined, sbp joined, rapacity joined, jnthn joined, cj joined, leedo_ joined, arnsholt joined, Ryan52 joined, cookys joined, coldboot joined, lumi joined, Lorn joined, avuserow joined, pmichaud joined, bigpresh_ joined, mj41_ joined, athomason joined, moritz_ joined, felipe joined, Gothmog_ joined, eiro joined, frew_ joined, Juerd joined, renormalist joined, hatseflats joined, yath joined, jantore joined, pnu joined, rafl joined, c1sung joined, reqamst joined, krunen joined, dukeleto joined, Caelum joined, ascent_ joined, KatrinaTheLamia joined, pjcj joined, astinus joined, carlin joined, betterworld joined, frettled joined, tomaw_ joined, BinGOs joined, he_ joined, shachaf joined, jrockway joined, spinclad joined, edenc joined, sunnavy joined, IRSeekBot joined, literal joined, szbalint joined, TimToady joined
pmichaud it's not a subclass. 18:42
PGE/Regex.pir actually puts methods into PGE;Match
masak oh!
yes, it does.
now I see.
18:42 jrtayloriv joined
pmichaud that dates from the time when we didn't know the exact relationship between Match, Regex, and Grammar (and hadn't heard of Cursor yet) 18:42
18:42 rfordinal joined