Thursday, May 20, 2004

A Graphical Programming Environment?

Here is an interesting proof of concept for a graphical programming language. I'm actually not sure if 'language' is the correct word. It would really be more like a graphical programming environment.



I found out that omnigraffle pro is incredibly scriptable. Through applescript one can have complete knowledge of every object in the document and how each object is connected. So here is a simple hello world 'program' drawn in omnigraffle, and an interpreter written in applescript.

This is clearly a very simple implementation, but it is interesting to think about the possibilities of this kind of graphical language. One of the first features I would like to implement would be an "Abstract" button, which would take a selection of objects and replace them with one small object with the same properties. This abstraction would allow the language to conquer large problems while maintaining its visual simplicity.

Download program and interpreter