Monday, September 06, 2004


[ note 2004-09-08: an update is available here ]

Over the weekend I managed to update my Symbian Series 60 port of the Io programming language to the latest Io codebase. There are still a number of issues and things that don't work right but I'm slowly working through them. The current major issues are:
  • Io Exceptions aren't working. They usually crash the interpreter.
  • No Symbian library wrappers. So you can only do standard Io language things.
  • No user interface routines.
  • Main interface of interpreter is not very effective. It only has two edit boxes. The top one for entering code. The second for showing the result of evaluations.
  • I haven't got a proper registered Uid for the application yet.
  • While it runs on a Nokia 3650, I get a panic when attempting to start the interpreter.
What does work:
  • Most of the Io language appears to work fine including coroutines.
  • You can load code stored in the 'Memo' or 'Notes' application. I transfer files to my phone via bluetooth. These get stored in 'Notes'. I run Io and load them there.
  • Basic asynchronous tcp/ip sockets work.
  • Only tested on the Nokia 7610.
Where to from here:
  • Tidy up the user interface.
  • Get exceptions working.
  • Wrap a few Symbian libraries.
  • Get it working on the Nokia 3650.
  • Write a telnet-like server so I can develop code on the phone via a read-eval-print loop accessed from my desktop PC.
The download file iosymbian_0_1.zip contains an installable .SIS file and some simple example Io programs. This is not really a uesful release apart from being able to play with Io on the phone. Remember, only tested on the 7610, I welcome feedback. To use:
  1. Install the .SIS file.
  2. Send the .io files to the phone and save in the 'Notes' application.
  3. Start Io.
  4. Use the 'Start Interpreter' menu item to fire up the interpreter.
  5. Typing code in the top edit box and using 'Evaluate' will evaluate that code. Try '"hello" print' for example.
  6. Using the 'Clear' menu item clears out both edit boxes.
  7. Using 'Load from Notepad' to bring up a list of notepad items. Select one and it will be loaded in the top edit box and evaluated with the results appearing in the bottom.
Source will be included in future updates and will be folded into the main Io distribution as I pass updates to the Io author, Steve Dekorte. Hopefully the next release will be a whole lot more usable.

11:37:17 AM