I've been writing a lot of Max in my spare time and I love it, but boy, do I wish I had unit tests, boy, do I have to use the mouse a lot, and boy, am I sick of zl! ;-)
I used to use Pyrite to do this long ago, but I'm writing a lot of Python these days and it's such a pleasure to use. If I could use Python I'd never use zl again. (Not that zl isn't a pleasure from what I had to do in the old days...)
I know that you can get Python to run as Jython with the Java plug-in but that has to be pretty slow and memory-consumptive, right?
Jython is just less than half the speed of CPython under Windows and Java seems somewhat slower on the Mac; plus there's the dreadful startup time, how do you get around that?
Why was it easier to run Python as Jython than directly embed Python into a Max external? Well, I guess I can answer that question: it might have been trivial to do, drop the jar somewhere and go...
Let's put the real question: what would be the possible issues involved in writing an external to run CPython from within Max/MSP?
I'm planning my development over the next year or so and I'm thinking of spending some time on this.
In particular, I'm going to be writing applications that I'll package and give to other non-programmer musicians who don't have Max, so I need to plan that step.
I'm perfectly willing to put restrictions on the sorts of programs I could write, giving up e.g. threads in Python.