Parrot 3.9.0 "Archaeopteryx" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 19 October 2011.
00:15 rfw joined 00:28 alvis joined 00:55 cfs joined 01:44 whiteknight joined
dalek kudo/nom: 95371a6 | (Geoffrey Broadwell)++ | src/core/Str.pm:
Substantially faster Str.trim*()

In my tests:
   ~24% faster Str.trim-leading()
   ~4.5x faster Str.trim-trailing() and Str.trim()
02:16
02:52 benabik joined 03:45 jsut_ joined 05:20 particle joined 05:47 particle joined 08:46 mj41 joined 09:18 lucian joined 09:26 lucian joined 09:48 preflex_ joined
dalek rrot/mls/kill-events-in-ehqueue: 8fde623 | dukeleto++ | / (5 files):
Merge pull request #192 from gerdr/gerdr/msys-install

fix make install on MSYS
09:54
rrot/mls/kill-events-in-ehqueue: 4119aa0 | petdance++ | / (4 files):
Parrot_hires_get_tick_duration is now flagged as PARROT_CONST_FUNCTION
rrot/mls/kill-events-in-ehqueue: 8f5a5c5 | petdance++ | / (5 files):
Merge branch 'master' of github.com:parrot/parrot
rrot/mls/kill-events-in-ehqueue: 06088a5 | petdance++ | / (2 files):
removed unnecessary const modifiers of function parameters. Removed an unused local var.
rrot/mls/kill-events-in-ehqueue: 38244b3 | petdance++ | src/pointer_array.c:
removed headerizer section for statics since there are no longer any statics
rrot/mls/kill-events-in-ehqueue: 7a92634 | petdance++ | src/pmc/eval.pmc:
consting locals, and removed unused vars.
rrot/mls/kill-events-in-ehqueue: 204cd4e | jkeenan++ | MANIFEST.SKIP:
Add files missing from MANIFEST.SKIP.
rrot/mls/kill-events-in-ehqueue: 84e6508 | mls++ | / (15 files):
Merge remote branch 'origin/master' into mls/kill-events-in-ehqueue
rrot/mls/kill-events-in-ehqueue: 56f0d98 | mls++ | / (4 files):
Add a new exception type, EXCEPTION_DIE. Make the die() ops use it instead of CONTROL_ERROR.

This also reverts commit 74ba75369d28b2c071ae5f610e6cd6d6089159d7.
p/bigint: de465a4 | moritz++ | tools/build/Makefile.in:
make nqp installable again
10:27
rrot/mls/kill-events-in-ehqueue: c288704 | mls++ | t/pmc/exceptionhandler.t:
add test cases for exceptionhandler initialization with key and _ALL types
10:31
11:08 Kovensky joined
dalek rrot/mls/kill-events-in-ehqueue: 660e18d | mls++ | / (2 files):
fix overlong lines and trailing spaces
11:22
12:11 Psyche^ joined 13:06 jsut joined 13:07 contingencyplan joined
dalek rrot/mls/kill-events-in-ehqueue: c116c0f | mls++ | compilers/pct/src/PAST/Compiler.pir:
fix exception handler removing in try/block_handlers by using the new pop_upto_eh op. Also finialize the exceptions at the end of the handlers.
13:13
13:22 bluescreen joined 13:33 whiteknight joined
whiteknight good morning, #parrot 13:33
mls morning whiteknight! 13:34
whiteknight hello mls. How are you doing today?
mls doing good. I think I'm done with my kill-events-in-ehqueue branch. How do I get it merged? 13:35
whiteknight mls: Open a pull request on github. We'll review it and give you the green light 13:36
mls ok, will do.
whiteknight awesome. Thanks
nine Good afternoon, #parrot 13:40
whiteknight hello nine 13:41
nine whiteknight: made some progress yesterday. I can now create hundreds of threads and they run as long as they don't try to access globals or sleep. 13:44
whiteknight nine: wow, that is some good progress. 13:45
Unfortunately, accessing global data is the trickiest part of the whole project 13:46
nine whiteknight: of course. The sleep thing should be fixed soon. 13:47
whiteknight okay, what's the problem with sleep?
nine I'm pretty sure it's just that sleep uses alarm and signals (should) get only delivered to the main thread. So the pause(); in the thread's runloop waits forever 13:48
whiteknight I haven't made any progress in the last few days porting alarms to windows. I hope to have some time this week to finish that
I think we could probably change it around so each thread has it's own alarms, can't we? 13:49
And then we can use thread-local storage to hold the alarm counter instead of a global variable
or even a spot in the interp/scheduler
nine oh except for the thread's runloop not even using pause(); It currently just ends when the last task exited. So sleep is more like an exit currently.
whiteknight: no, alarms cannot be used that way. Signals are a process thing and they get delivered to any one thread that has not blocked the signal. This random behaviour is the reason why everyone recommends having only one thread handling signals. 13:51
whiteknight Blah. signals are stupid 13:52
I'm confusing signals and win32 messages in my head
nine btw. I got threads to not randomly segfault by giving each thread it's own GC. Took my quite a while to find out that though each interpreter has it's own GC, they were sharing the private part (at least for gms and ms2) 13:56
Coke wonders if he should be doing anything with all the [scratch] emails 13:57
whiteknight nine: Okay, I figured we would have to do that step eventually. It's a little bit weird that the GC private data is being shared between interps. 13:59
nine: like I said, eventually I do want to start looking into a design for a concurrent GC algorithm, but just making multiple GCs works for now 14:00
nine whiteknight: well for nested interpreters, sharing private data makes some sense like having only a single memory pool. I also have another working implementation using locks in the GC implementations. But that would hurt the single threaded case... 14:03
whiteknight: regarding the alarm stuff. AFAIK for Windows the recommendation is to use a thread for handling timers. Same goes for alarms in threaded POSIX programs. Maybe we can find some common API for both cases? 14:05
whiteknight yeah, I'm making a new alarm API that will be portable to both systems 14:07
...I just need to spend some time to finish it
14:13 allison joined 14:15 pbaker1 joined 14:16 jlaire joined 14:18 perlite joined 14:20 Coke joined, PerlJam joined, Maddingue joined 14:21 zpmorgan joined 14:22 slavorg joined, atrodo joined
dalek p/bigint: 5b2d884 | moritz++ | / (3 files):
bigint bitwise negation
14:27
14:36 PacoLinux joined
whiteknight mls: the pull request looks pretty nice. If we can get the greenlight from cotto I think we can merge it 14:39
14:47 mj41 joined
mls whiteknight: thanks for the heads-up! 14:51
whiteknight mls: once we get the OK, either you can merge it or somebody else can. Github says the merge will be clean 14:54
15:02 giwi joined
dalek nxed: 6bb48a4 | NotFound++ | winxedst1.winxed:
throw an exception with the message instead of using "die" in throw with string argument
15:15
15:27 alvis joined 16:17 contingencyplan joined, tadzik joined 17:20 jsut joined
dukeleto ~~ 17:29
sorear o/
dukeleto sorear: how goes it?
sorear ok 17:30
cotto ~~ 17:40
17:42 pbaker joined 17:46 fperrad joined 18:11 zby_home joined 18:18 whiteknight joined, alvis joined
dalek nxed: 1b48542 | NotFound++ | winxedst1.winxed:
move function parseClassSpecifier to a better place
18:30
18:48 ambs joined
dalek nxed: f05ccb3 | NotFound++ | t/ (2 files):
move tests in t/sub.t to t/basic/02intops.t
19:23
19:31 benabik joined
benabik o/ #parrot 19:32
whiteknight hello benabik 19:35
benabik whiteknight: What's happening?
whiteknight benabik: a little bit of everything. you? 19:36
benabik whiteknight: End of quarter hitting. Finished a paper last week and spent the weekend recovering. :-) 19:42
(Getting a cold really encouraged the "do nothing and recover".) 19:43
whiteknight my kid had a cold all last week, and now my wife and I have it 19:47
benabik One more joy of having kids. :-D
whiteknight so I understand the sentiment completely
Coke I have 3 kids, each of them attending a different school, and my wife is a preschool TA. I am a germ magnet. 19:50
benabik :-[ 19:51
Coke (wife and I are now fighting the sick our elementary child gave to us. ;)
whiteknight Children are like germ ambassadors. 20:02
they travel to new, exotic, germ-filled places and bring them back
my kid is in a small daycare with only half a dozen other kids, and we still get hit with germs all the tim 20:03
20:32 alvis joined
dalek nxed: 5318e38 | NotFound++ | examples/httpserver.winxed:
update and fix example httpserver
20:36
NotFound runtime/parrot/include/green_threads.pir ??? This shouldn't be in library? 20:45
Or even better, in hell }:) 20:46
whiteknight wait, what? 20:47
that file is in the library? 20:48
NotFound #Provides an implementation of preempting green threads in pure PIR.#
whiteknight oh, fun
NotFound Copyright (C) 2010, Parrot Foundation.
whiteknight that's certainly the wrong folder for it. 20:51
I think we can delete that file 20:52
probably a leftover from the old gsoc_threads 20:54
NotFound Looks like that,
whiteknight delete it
dalek nxed: 95efdc8 | NotFound++ | examples/httpserver.winxed:
include consts from socket.pasm instead of hardcoding
20:55
NotFound whiteknight: BTW, there is some example in the repo about the new green threads? 20:56
whiteknight NotFound: yeah, there was a test somewhere. I need to dig it up. Not much, yet 20:58
Once I get alarms working on win32, I'll write more tests
NotFound It will be nice to mention whatever doc we have in the commit message of the deletion.
whiteknight what do you mean? 20:59
NotFound "this file is no more used, for the new green threads usage see..." 21:00
whiteknight oh, okay 21:03
yes, that is a good idea
21:04 mj41 joined
NotFound In fact, I was searching for that when I found that file. 21:07
dalek kudo/nom: 3a9ea78 | moritz++ | / (2 files):
implement Any.ACCEPTS. Fixes RT #103032
21:13
kudo/nom: ac39fbb | coke++ | t/spectest.data:
Track failure mode.
21:25
moritz where can I find a list of all encoding names that parrot understands? 21:31
Coke if I say "the source", will you beat me? ;) 21:33
hurm. hopefully that is not the actual correct answer; you can for now try src/string/encoding/*.c 21:35
(i'd expect a list of valid constants somewhere in runtime/, though, or the ability to teaes it out dynamically)
NotFound Coke: ??? 21:38
Coke: ah, sorry, haven't seen the question. 21:39
The encoding names are a nightmare.
21:56 perlite_ joined
dukeleto seen whiteknight? 22:00
aloha whiteknight was last seen in #parrot 57 mins 36 seconds ago saying "yes, that is a good idea".
23:01 contingencyplan joined 23:03 nbrown joined 23:16 preflex_ joined 23:53 rfw joined