12/15/2003

Python OSA Component

I started work on embedding Python in an OSA component again recently. It's not that it is conceptually hard, although the available documentation is baroque and largely out of date, but that it is time consuming and boring to be writing C code when you are used to writing Python. With that in mind, my plan is to make the call into Python as soon as humanly possible, and do all the work from there with the help of Jack's recent bgen wrapping of OSA.h. So far I have been largely successful, writing code which gets the text of your script into Python by way of a Python AEDesc wrapper wrapped with a call to AEDesc_New. Unfortunately, while it works in Script Editor 2.0 (the opposite of the OSAShell effect), it segfaults osacompile. I'm sure there's something simple I'm just not implementing yet, since the code is still less than 100 lines.

In other news, Bob is busy working on his refactor of aeve now that he knows a lot more about AppleEvents than he used to. Hopefully he will get it to the point where he will give me SVN access to the code right around the time I finish embedding Python in an OSA component, and I can start helping him out by really banging on it and making sure it is possible to do everything that needs to be done.