IRC Logs for #circuits Thursday, 2013-10-24

prologicif you're interested :)00:26
pdurbinhuh. written in Python00:29
prologicsorry :)00:41
prologicwhat do you prefer?00:41
pdurbinI guess if you can write PyPy in Python you can write anything.00:45
pdurbinhow many languages are written in Python?00:46
prologicAside from PyPy and the examples on
prologicincluding Topaz (Ruby implemented in Python)01:07
prologicmio (mine)01:07
prologicquite a few really01:07
prologicstrictly speaking most are written in RPython01:07
prologicmio is not (yet) - but the plan is to rewrite/adapt to RPython01:07
prologicso that eventually I can throw away the host language Python (which I'm currently using)01:08
prologicthe upside to the current plan is I can play with and work out the semantics of the language I'd like01:08
prologicbefore getting serious with it and making it into a full blown compiler, byte code, virtual machine with hit, etc (utilizing PyPy's RPython framework)01:08
pdurbinI have a feeling you aren't talking about http://rpython.r-forge.r-project.org01:09
prologicI'm talking about RPython asin PyPy's RPython01:10
prologicit's bundled and included with the PYPy project01:10
prologicit doesn't exist separately (as yet)01:10
prologicRPython (which is strictly speaking what PyPy is written in) is a restricted subset of Python that has some rules around bindings01:11
prologicmostly that bindings once bound to a value01:11
prologiccannot change through multiple branch paths01:11
prologicthere emus be one and only one clear path01:11
prologicthat way the RPython compiler and framework can properly infer types and compile the RPython (which is mostly just Python) to a lower level language like C01:12
prologicit'd be nice if I could get some interested folks interested in furthering mios development01:13
prologicother than myself :)01:13
pdurbinprologic: have you tried looking at your logs from mobile? the ilbot logs look better, thanks to <meta name="viewport" content="width=device-width" />01:24
prologicyeah I have - and they work "good enough" for me02:23
prologiclike I said, it can be improved :)02:23
pdurbinprologic: should be a one line change if you want to try it09:29
prologiccan I do it tomorrow though? :)12:20
prologicI just finished several major changes in mio12:20
prologicand I'm beat :)12:20
pdurbinI suppose ;)12:27
prologicI still have enough energy in me12:34
prologicbut I want to write an FFI for mio now12:34
prologicmy colleage at work asked if I could do:12:34
prologictry this in Python :)12:35
prologicI said no, as mio lacks certain core objects to do this12:35
prologicbut let's see in a few mins :)12:35
*** An_Ony_Moose has joined #circuits13:45
An_Ony_MooseOooooh I have +v, I feel special now13:45
An_Ony_MooseHow can I get a list of all the components registered with one component? Something like self.children?13:47
prologicnot something I do that often14:48
prologichang on let me look at the api :)14:48
prologicwelcome to circuits btw :)14:48
prologicyeah so it's an undocumented attribute14:49
prologicwe don't really use it internally :)14:49
prologicalso look at circuits.utils14:50
prologicand circuits.core.utils14:50
prologicsorry I said a wrong thing14:50 and circuits.core.utils14:50
An_Ony_MooseTurns out for my usage scenario I think it's better to keep track of them myself :)15:36
An_Ony_MooseBut I'll just finish modularising my code, then push it and let you take a look if you're interested in confirming that15:36
An_Ony_Moose here's my work... School assignment gone insane :)15:43
An_Ony_Moose(this is way beyond the scope of my classes... We're still working with text-only I/O and we haven't even touched the concept of OOP yet, but I've been programming for longer and I need to finally get the hang of structuring a project well)15:44
An_Ony_MooseI think I'm going slightly overboard on the assignment :D16:03
spaceoneprologic: the problem we had could be solved by allowing a component to have multiple channels?! (one have to handle the firing of event on their own)16:47
spaceoneSocket(channel='s1') + Socket(channel='s2') + MyComponent(channel=('s1', 's2'))16:49
spaceoneor if a Component can decide that it also wants to listen to all events fired to a specific channel16:51
spaceonebut hmm...16:52
prologicthere is18:44
prologicto allow handlers to listen to a named event on any channel18:44
prologicbut hmm18:44
prologicanyway bed time :)18:44
prologicit's 5am and I haven't slept :(18:44
pdurbinprologic: 3pm here. ish. go to sleep!19:15
prologicAn_Ony_Moose:  I've been meaning to ask since last night23:25
prologicbut was too tired :)23:25
prologiccan you describe what you're doing exactly?23:25
prologicand why you want to keep a track of components?23:25
prologicI'm just curious :)23:25
An_Ony_Mooseprologic: I wanted to have a draw queue, because the drawing needs to be executed synchronously in my scenario (painter's algorithm...)23:35
An_Ony_Mooseprologic: so in the end I just made my root object have a dict containing all the objects it needs to draw in a dict, where the keys are numbers which indicate when the object should be drawn23:35
An_Ony_Moose(using its draw() method)23:35
An_Ony_Moose look in to see it23:36

Generated by 2.11.0 by Marius Gedminas - find it at!