Parrot 4.6.0 "Wild Parrots of Telegraph Hill" | parrot.org/ | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 18 July 2012.
00:20 PacoAir joined
dalek rrot: f2fb998 | jkeenan++ | t/src/checkdepend.t:
[codingstd] Conform to cuddled-else and no-hard-tabs standards.
01:56
02:18 kid51 joined
dalek kudo/sigilless: bf892d1 | moritz++ | src/core/Int.pm:
switch Int to sigilless
05:38
kudo/sigilless: 61d67fa | moritz++ | src/core/Rat.pm:
use sigilless params in Rat
kudo/sigilless: 0d98c32 | moritz++ | src/core/Complex.pm:
switch Complex to sigillless params
kudo/sigilless: 504e994 | moritz++ | src/core/ (5 files):
switch Attribute, Enumeration, Hash, LoL and Order to sigilless params
kudo/sigilless: 234ad61 | moritz++ | src/core/List.pm:
switch List to sigilless params
kudo/sigilless: 1f6fe81 | moritz++ | src/core/ (3 files):
switch Numeric to sigilless params
kudo/sigilless: 221379e | moritz++ | src/core/ (4 files):
switch Numeric, Real and Cursor to sigilless params
kudo/sigilless: 3d21d3f | moritz++ | src/core/ (2 files):
switch Mu to sigilless params (mostly)
06:00 fperrad joined 07:15 brrt joined 07:56 lucian joined
dalek rrot/threads: d215d68 | nine++ | src/scheduler.c:
Move thrading initialization to Parrot_cx_init_scheduler

In embedding situations, control flow may bypass Parrot_cx_begin_execution (using Parrot_api_pmc_invoke directly). Moving threading init to Parrot_cx_init_scheduler makes sure it is run for the first interp.
08:17
rrot/threads: 3f147ee | nine++ | lib/Parrot/Pmc2c/PMC/Proxy.pm:
Add some description to Parrot::Pmc2c::PMC::Proxy
rrot/threads: 276a2f8 | nine++ | src/scheduler.c:
Merge branch 'threads' of github.com:niner/parrot into threads

Conflicts:
  \tsrc/scheduler.c
rrot/threads: 25acd5a | nine++ | / (10 files):
Merge branch 'threads' of github.com:parrot/parrot into threads
kudo/sigilless: 30fab97 | moritz++ | src/core/ (8 files):
switch more of the setting to sigilless params (Int, Junction, Parcel, Range, Rational, Routine, stubs)
09:08
kudo/sigilless: 018777f | moritz++ | src/core/Array.pm:
switch Array to sigilless params
kudo/sigilless: ddb2dd2 | moritz++ | src/core/operators.pm:
Switch operators.pm to sigilless params
09:09
kudo/sigilless: 76b036d | moritz++ | src/core/metaops.pm:
Switch metaops to sigilless params
kudo/sigilless: 105cec6 | moritz++ | src/ (2 files):
switch SAFE and CORE to sigilless params
09:57
kudo/sigilless: f75de7d | moritz++ | src/core/Mu.pm:
remove the last use of \\$foo from the setting
kudo/sigilless: dfff492 | moritz++ | docs/ROADMAP:
update ROADMAP

sigilless params are done; sigilless variables are still TODO
kudo/sigilless: 86bc703 | moritz++ | src/Perl6/Grammar.pm:
allow typed \\ and | in signatures without a name
11:09 nopaste joined 11:10 tuxit joined 11:27 schmoo joined
dalek Heuristic branch merge: pushed 34 commits to rakudo/nom by moritz 11:46
11:51 PacoAir joined
dalek kudo/nom: 449f30f | moritz++ | docs/ChangeLog:
update ChangeLog
11:55
kudo/nom: de84a76 | jnthn++ | docs/ChangeLog:
Some more ChangeLog bits.
12:03
12:10 whiteknight joined
whiteknight good morning, #parrot 12:11
Very interesting link about Java performance: paulbuchheit.blogspot.com/2007/06/j...an-c.html#
I don't have a good explanation for the difference, yet 12:12
The timings are clearly ignoring jvm startup time. 12:14
brrt hi whiteknight 12:50
13:00 PacoAir_ joined 13:11 bluescreen joined
rurban The jvm caches its compiled code on disk, so it's measuring warm-start. Novae re-did the bench and there java was slower. 13:26
whiteknight: We missed you yesterday in #ps. Did you skim through the logs? 13:51
brrt its not /that/ surprising given the amount of information java has that gcc doesn't 13:56
and whats more
sbenchmarks like these don't measure the 'whole system' thing 13:57
where you may have many different objects / structures
many different algorithsm
and the calling conventions / memory layout / etc may make a huge difference
whiteknight rurban: Busy with work yesterday. I didn't see the logs. Anything interesting? 14:05
brrt: Yeah, but that code has lots of primitive floats and ints. Those kinds of things don't really benefit from type-specialization since the C code was using floats and ints too 14:06
brrt hmm fair enough
still
it isn't /really/ surprising the jvm creates machine code with floats and ints that is as fast that gcc creates 14:07
which is what is happening
whiteknight My best guess is that the timing code in the C version causes a slow syscall, while the Date class in the jvm can probably use a cached value and click counts
I don't know that for certain, but that's my best guess 14:08
of course, if you take that call out, there's no way to compare timings anymore
rurban: I sent kid51 a message last night. If all his testing looks good, I'll merge io_cleanup1 14:11
if I get the all-clear, I can merge tonight 14:12
brrt ... thats actually not unrealistic 14:15
rurban I am testing now nine's threads changes. io_cleanup1 smoked well. 14:28
whiteknight good 14:35
I am looking forward to merging io_cleanup1, because as the name implies there's more work to do 14:36
but future branches will be much smaller
I may try to start 6model first, before I start trying to re-do some of the IO pmcs
yay! kid51 sent his approval to the list 14:37
time to merge
14:38 alester joined
brrt yay! 14:39
alester rurban: This is awesome. blogs.perl.org/users/rurban/2012/08...tizer.html
It's great to see all the nitty-gritty details.
rurban yes. The new llvm based version is even fast, for huge projects. 14:40
But the current version v1 is super-simple to use.
nine: threads passed ok all tests on solaris. smolder.parrot.org/app/projects/rep...ails/30613 14:46
whiteknight rurban: Where are threads still failing? Windows/cygwin?
rurban cygwin yes. still a few deadlocks. currently in t/op/time.t in the same loop as ever. 14:48
whiteknight okay
At this point, I think threads won't merge before the release no matter what
A week is not a lot of time to get something so big integrated and tested
rurban I agree.
io_cleanup1 should be enough. Did you talk with moritz? 14:49
whiteknight I have not talked to moritz lately
rurban there's one TODO multiseperator test in io_cleanup still failing 14:50
whiteknight in Rakudo?
rurban t/pmc/filehandle.t 12
moritz if a rakudo spectest of current nom with the parrot-iocleanup1 branch merged with in passes, I'm fine with merging
whiteknight moritz: I'll give that a try tonight
moritz s:2nd/with// 14:51
rurban I thought you already implemented record_separator, multiple chars.
14:52 davidfetter joined
rurban Oh, the test is wrong. There is no fh open 14:52
whiteknight rurban: Oh that's fun
dalek Heuristic branch merge: pushed 38 commits to parrot/whiteknight/io_cleanup1 by Whiteknight 14:56
whiteknight I'll run Rakudo specttest tonight on that branch, and merge immediately if all looks good 14:57
and if my laptop freezes up halfway though, again, I'll say some cursewords and wait till tomorrow 14:58
14:59 darbelo joined
rurban I'll try also on my fast build machine. But I'm leaving in a few hours to Europe. 15:00
whiteknight oh fun, what are you doing in Europe?
rurban BTW: I already fixed that wrong test t/pmc/filehandle_12.pir 15:01
moritz YAPC::EU maybe? :-)
whiteknight oh, I didn't know YAPC:EU was soon
moritz upcoming week 15:02
Monday to Wednesday
rurban p5p is having some meeting before in Perl, Germany 15:04
dalek rrot/whiteknight/io_cleanup1: 0fb668d | rurban++ | t/pmc/filehandle.t:
fix t/pmc/filehandle_12.pir: open the filehandle

multiple chars record_separator should work IMHO, but do not yet.
15:08
moritz now spectests rakudo on io_cleanup1 15:09
15:09 dmalcolm joined
rurban whiteknight: do you want a ticket for the failing t/pmc/filehandle_12.pir case? I thought it should already work. 15:12
whiteknight yes, please 15:13
rurban handle.pmc still uses the old io_readline_s method. That's the problem. 15:18
moritz rakudo fails all 16 socket tests on newest whiteknight/io_cleanup1 15:25
dalek rrot/whiteknight/io_cleanup1: 34e880a | rurban++ | t/pmc/filehandle.t:
[GH #812] Test to support io multi-char record_seperator
whiteknight heh, great 15:26
moritz all the tests say "Got: ''"
whiteknight okay, I'll fix it
rurban: io_readline_s is the new method
15:26 dngor joined
rurban Oh, I got it mixed up. 15:27
Only filehandle::readline_interactive is missing the delim, and dynoplibs/io.ops 15:32
whiteknight ah, okay
that method has slightly different semantics with the prompt and all
rurban well, if someone changes the filehandle record_seperator, readline_interactive should use it I think 15:33
whiteknight okay, I can update that 15:34
rurban But there's special CRLF logic afterwards 15:35
whiteknight I think we've got to keep that method the same as it was
rurban maybe leave it in asis.
agreed
whiteknight yeah, that's what I'm thinking
rurban pastebin.com/TsRXmmji 15:38
whiteknight ah, perfect 15:39
rurban wrong, there's no SELF in .ops 15:40
whiteknight almost perfect
s/SELF/$2/
actually, we can probably move that logic into Parrot_io_readline
and keep the op body the same, for now
dalek d_parrot/new-route: f93ec00 | (Bart Wiegmans)++ | / (4 files):
Add test for mime-based loading
15:51
16:01 brrt left
rurban But that test actually never calls Parrot_io_readline(), only _s() 16:04
better check the failing socket tests 16:06
dalek kudo/nom: e326148 | moritz++ | src/core/Match.pm:
avoid codepoints above 255 in the setting

reverts the factor ~2 parse slowdown of the setting introduced in 94aa2b7
16:08
16:15 jashwanth joined
rurban Parrot_io_readline pastebin.com/6z07rnDt 16:19
16:23 bluescreen joined 16:39 darbelo joined
rurban oops, the GH #812 test was wrong. 16:39
dalek rrot/whiteknight/io_cleanup1: b694441 | rurban++ | t/pmc/filehandle.t:
[GH #812] fix t/pmc/filehandle_12.pir
16:41
whiteknight so that test passes now? 16:44
rurban yes
forgot a seek
whiteknight oh, okay
I love how some of these tests are wrong, and might have been wrong for years 16:45
rurban I'm also adding the terminator attr to the old Parrot_io_readline()
Thats' the problem with skipped or TODO tests
whiteknight okay 16:50
readline is the worst thing ever
tadzik :D 16:51
what about it?
dalek rrot/whiteknight/io_cleanup1: 8812d14 | rurban++ | src/io/api.c:
[GH #812] use record_separator in fallback io.ops readline method also
16:56
rurban done, smoking now. 16:57
have you found the socket errors in rakudo? 16:58
whiteknight I can't look until I get home tonight
rurban oki
I'll also have to leave soon to get my plane. See you in ~17 hrs. 17:00
whiteknight see you then 17:01
dalek rrot/whiteknight/io_cleanup1: b1171e6 | rurban++ | config/gen/makefiles/root.in:
[GH #812] Makefile add pmc/pmc_handle.h dependency to src/io/api.o

  [CAGE] fixes t/src/checkdepends.t
17:07
17:10 benabik joined
rurban cygwin is now only failing t/op/time.t in threads smolder.parrot.org/app/projects/rep...ails/30614 17:31
17:41 benabik_ joined
dalek kudo/nom: b18ea07 | moritz++ | src/Perl6/ (2 files):
sigilless variable declaration

Currently only works for 'my' variables, and type constraints are ignored
17:51
18:24 lucian joined
dalek kudo/nom: c076f5d | moritz++ | src/Perl6/Grammar.pm:
fix copy&past-o from STD.pm6
18:41
kudo/nom: eb2f531 | moritz++ | src/Perl6/Actions.pm:
fix a copy&past-o in method declare_param
kudo/nom: dc19a70 | moritz++ | src/Perl6/Actions.pm:
enable type checks for "my Str \\x = ..." term definitions, jnthn++
19:29 lucian joined 19:32 Khisanth joined 20:01 Khisanth joined
dalek kudo/nom: 30134cf | coke++ | t/fudgeandrun:
add t/fudgeandrun from niecza++

simplifies testing of individual roast files.
21:01
23:28 kid51 joined 23:31 kid51_ joined 23:41 benabik joined
kid51_ wonders if this storm is what's causing my irc connection to continually drop 23:42
Hmm, we don't have aloha for msgs, do we? 23:43
benabik aloha: aloha?
aloha benabik: aloha is simple Bot::BasicBot::Pluggable hosted on github.com/bacek/aloha
benabik aloha: ping
aloha: ping?
aloha benabik: ping is to get someone's attention, pong is to indicate that the pingee is paying attention
kid51_ msg whiteknight We are getting "uninitialized value" warnings in the 'make' output on io_cleanup1 branch. 23:44
aloha OK. I'll deliver the message.
dalek kudo/nom: efde6e5 | tadzik++ | tools/build/Makefile.in:
Don't forget to install precompiled Pod::To::Text
23:56