Eventually we will have an SDK for plug-ins. One of the points for writing RhinoCommon was to allow it to work on both platforms (hence the use of the word common.)
You actually can write .NET plug-ins for Mac Rhino right now, but the process is so convoluted at the moment that we need to make a lot of little tweaks to make it so people can actually develop there in a productive manner.
We have been experimenting with writing plug-ins that contain native UI for Windows and OSX. One recommendation I can give is to learn WPF and the MVVM pattern on Windows if you are interested in writing UI in your plug-in that will be easy to post port. This turns out to be the approach that allows for as much shared code between the different versions of your plug-in as possible. On OSX, the UI would be designed in Interface Builder (part of XCode) and could be hooked up to the same ViewModel class that you write on windows making only the actual user interface widgets different, but the same logic underneath.
OK, Steve. Thanks. I’ll take your WPF/MVVM recommendation as good advice.
I don’t think you gave a direct answer to my question about whether Python for Mac can use the Cocoa, Foundation, Appkit, etc. frameworks?
My inexperienced assumption is “Sure, why not?” (I’ve been trying to spend some time to get familiar with Python but have yet to write my first program)
A word of caution here. Rhino for Mac has it’s own Python interpreter and is not using the Python interpreter that comes with OS X. We did this so we could guarantee compatibility between the two platforms.
Apple has some bridge libraries that let you use the different frameworks, but Apple did that work with the OS X version of Python. When you find documentation on Python, Apple, and Cocoa, this is most likely the environment that is being described.
We are using Mono and IronPython inside Rhino for Mac, so it is the Mono -> Cocoa bridge libraries you should be looking at when investigating how to get at OS X frameworks.
It may well be possible to use Apple’s Python Cocoa libraries from inside Rhino, but we have not tried that.