In order to try it out under Leopard I picked a simple project to give me something to shoot for.
I have a little Yaesu FT-817 that supports a remote control serial protocol they call CAT. It's 4800 baud, 8 bit, 2 stop bits. Each packet is 5 bytes, the last byte being the command and the other bytes are the data to go with it.
My objective is the program shown above, it periodically retrieves the current frequency and mode from the transceiver and shows it.
To interface with a common PL-2303 USB serial device, I installed the excellent (and free) Serialport X scripting addition. Thanks Art Coughlin!
To install you create a folder called ~/Library/Scripting Additions/ and stick it in there.
Prototyping was done in straight AppleScript until I was able to read and display the frequency. Next to XCode where I created an "Applescript Application". It reminds me a bit of HyperCard, you open the .nib file and in the Applescript properties tab you can set a handler for a button to call an "on clicked theObject" method in your script for example.
After some frustrating messing about, I've achieved my objective. Once you've chosen the serial device an idle handler refreshes the frequency.
To make the built application run on a machine without the Serialport X applescript already installed you need to bundle it in the application. Thanks to the instructions here I was able to automate this. Note that I needed a -r after CpMac to copy recursively.
I find the AppleScript language frustrating for reasons I can't fully fathom, this "Applescript for python programmers" table was a great help to me as I'm very comfortable with python.
For what it's worth, I've put my xcode project here, hope it helps someone.