I decided I prefer writing normal logic in a language I'm used to, so I went looking for a Python-external for Pure Data. And sure enough, I found [Thomas Grill][1]'s [py/pyext][2] (built upon flext, a C layer for Python externals). I didn't figure out how to install the binaries (didn't take the time to experiment) so I just compiled them up. Works great.
Writing externals for this is supersimple:
`
class example(pyext._class):
_inlets=2
_outlets=1
def _anything_1(self,args):
print "inlet 2:",args
self._outlet(1,1)
def _anything_2(self,args):
print "inlet 2:",args
self._outlet(1,2)
`
This little code should be an external that prints out the argument it receives and sends the inlet number it received the signal on to the outlet.
[1]: http://grrrr.org
[2]: http://grrrr.org/ext/py/