[08:47] < MS-> aa_: Yes
[08:48] < MS-> "(21:57:35) aa_: are inbox and outbox the "standard" mesages?
[08:48] < MS-> (21:57:56) aa_: um, not messages I mean um..well places to get and give messages
[08:48] < MS-> (21:58:00) aa_: boxes?"
[08:48] < MS-> .. yes,, they are :)
[08:48] < MS-> standard inboxes: inbox/control
[08:48] < MS-> standard outboxes: outbox/signal
[08:48] < MS-> consider:
[08:49] < MS-> standard means into a unix process: stdin & kill messages (intended to *control* the unix process
[08:49] < MS-> standard means of data out from a unix process: stdout, stderr
[08:49] < MS-> so inbox "inbox" ~~ stdin
[08:49] < MS-> outbox "outbox" ~~ stdout
[08:50] < MS-> outbox "signal" ~~ stderr AND like sending kill signals to the next process
[08:50] < MS-> inbox "control" ~~ place to get the equivalent of kill signals
[08:50] < aa_> MS-: I see
[08:51] < aa_> MS-: because I had an instance last night to close a UnixProcess' stdin. Just to tell it that input was complete.
[08:52] *** vmlemon_ has joined #kamaelia
[08:52] < aa_> hmm, or maybe not...
[08:53] < vmlemon_> Hi
[08:54] < aa_> hi vmlemon_
[08:54] < MS-> aa_: Hm, the docs for UnixProcess need a bit of a clean up
[08:55] < MS-> It's a but cryptic, but the point it tries to convey is "send me a producerFinished and I'll shutdown"
[08:55] < aa_> MS-: the case was using the shell command html2text for a simple text-only browser. Now I get the outbox of a SimplHTTPClient, and Pipeline it to the inbox of the UnixProcess. But I had no way to tell the UnixProcess that it had ended the input.
[08:56] < aa_> MS-: ah..
[08:56] < aa_> "If a producerFinished message is received on the "control" inbox,.."
[08:56] < MS-> yeah
[08:57] < MS-> As I say, the docs suck there
[08:57] < MS-> Inisde there it actually does this:
[08:57] < MS-> if self.dataReady("control"):
[08:57] < MS-> shutdownMessage = self.recv("control")
[08:57] < MS-> self.send(removeWriter(self,(x.stdin)), "selector")
[08:57] < MS-> yield 1
[08:57] < MS-> x.stdin.close()
[08:57] < MS-> heh, it's amazing - when code *works* you never go back and look at it
[08:57] < MS-> That code was written for a deadline, and we know works because we left it running for a year without memory leaks
[08:58] < MS-> (literally - constant data rate of around 8Mbit/s through it)
[08:58] < aa_> MS-: something I try to tell my junior developers is "please resist the temptation to fix code that isn't broken"
[08:58] < MS-> Looking at the code I note all the debugging statements
[08:58] < MS-> aa_: Indeed, it something you learn :)
[08:58] < MS-> I appear to have learnt the lesson too well :-)
[08:59] < MS-> #print self.name,"Mighty Jibble", len(self.inboxes["inbox"]), len(writeBuffer)
[08:59] < aa_> hmm, ok, so control inbox
[08:59] < aa_> ahah
[08:59] < MS-> #print self.name,"Mighty FooBar", len(self.inboxes["inbox"]), len(writeBuffer)
[08:59] < MS-> I can see what I was doing there :)
[08:59] < MS-> #print self.name,"Mighty Foo", stdin_ready, stdout_ready, stderr_ready, len(self.inboxes["inbox"]), len(writeBuffer)
[08:59] < MS-> Mighty Floogly
[08:59] < MS-> hehehe
[08:59] < aa_> yeah, but Jibble is a new one on me ;)
[09:00] < aa_> My series is Banana, Manana, Fanana, then Foo, Bar, Baz, Blah
[09:00] < MS-> Oh, I've got a whole other sequence for when the foo bar, etc gets run out
[09:00] < MS-> jibble jabble bibble babble ..
[09:00] < aa_> hahah
[09:00] < aa_> what a great interview question...
[09:01] < aa_> ok brb to try this out
[09:01] < MS-> actually that would be wouldn't it
[09:01] < MS-> k
[09:01] *** vmlemon_ has joined #kamaelia
[09:02] *** vmlemon__ has joined #kamaelia
[09:04] *** vmlemon__ is now known as vmlemon_
[10:42] *** Davbo has joined #kamaelia
[11:12] < MS-> 77 downloads of the new release so far, which is pretty nice :)
[15:19] *** Uraeus has joined #kamaelia
[16:17] *** vmlemon_ has joined #kamaelia
[17:29] *** Uraeus has joined #kamaelia
[17:29] < vmlemon_> Hi
[17:44] < vmlemon_> kamlogbot: dance
[17:44] Reply: does the macarena
[17:52] < MS-> uploaded 0.6.0 rpms to kamaelia website
[17:53] *** vmlemon_ downloads the freshly baked goodness
[18:09] < vmlemon_> Can I just install it on top of the Kamaelia I have>
[18:09] < vmlemon_> ?
[18:09] < vmlemon_> Or should I rm -rf the old Axon and Kamaelia stuff first?
[18:19] < vmlemon_> Now to tinker with the examples
[18:20] < vmlemon_> Meh,
[18:20] < vmlemon_> [tyson@DoCoMoDake BouncingCatGame]$ ./Simplegame.py
[18:20] < vmlemon_> Traceback (most recent call last):
[18:20] < vmlemon_> File "./Simplegame.py", line 61, in < module>
[18:20] < vmlemon_> cat_pop_wav = pygame.mixer.Sound(cat_pop_wav_file)
[18:20] < vmlemon_> pygame.error: mixer system not initialized
[18:27] < MS-> odd
[18:28] *** vmlemon_ is betting on PyGame not being compiled with support for/configured to use OSS
[18:28] < MS-> Ah, I see
[18:29] < vmlemon_> Not sure if that is the issue though
[18:29] < vmlemon_> Although stranger things have happened
[18:30] < vmlemon_> (Getting phony errors about missing black ink cartridges and not being able to print earlier until I replaced the power brick for my printer being one of them)
[18:30] < MS-> ./Simplegame.py works here - so it's probably borked pygame at your end
[18:31] *** vmlemon_ goes to compile a copy of PyGame
[18:32] < vmlemon_> Even though it'll end up trampling the Fedora versions
[18:35] < vmlemon_> Tried it with 1.8.1?
[19:00] < MS-> I use suse :)
[19:00] < MS-> Haven't tried a redhat or redhat derived distro in a long while
[19:01] < MS-> Oooh, that's nice - they've updated this page: http://www.linux-magazin.de/online_artikel/das_python_framework_kamaelia_in_version_0_6
[20:23] < vmlemon_> Same error
[20:23] < vmlemon_> Might be SDL related :(
[20:23] *** vmlemon_ wonders if there's a wrapper script/a way of abusing libsalsa
[20:27] < vmlemon_> Cool
[20:28] < vmlemon_> Shame it's in German though
[20:28] *** vmlemon_ puts it through Google LangMang/"Translate"
[20:35] *** Uraeus has joined #kamaelia
[20:53] < MS-> It's great putting things back and forth both ways
[20:53] < MS-> you can end up with all sorts of things
[20:54] *** vmlemon_ remembers a bot in another channel that had a mangle command that passed text between several languages 
[20:55] < vmlemon_> I was rather amused when it managed to derive "Buy this product and praise." from "Thank you for not purchasing this product." somehow
[20:56] < vmlemon_> Had a special-purpose Dutch mangling feature too, if I remember correctly
[20:57] *** vmlemon_ wonders how much of the 1GB quota he's used, but has no way of finding out :(
[20:57] < vmlemon_> Probably not much though
[21:07] *** vmlemon_ has joined #kamaelia
[22:06] *** vmlemon_ has joined #kamaelia
[22:39] *** Ngmgm has joined #kamaelia
[22:40] *** Jwjgtjg has joined #kamaelia
[22:48] *** Agqn has joined #kamaelia
[22:50] *** Mgmgm has joined #kamaelia
[23:06] *** vmlemon_ has joined #kamaelia