Visual Programming Languages
February 8, 2007
Visual programming languages (VPLs) haven’t been very successful, although UML — a visual specification language — is certainly popular. I’m leaning more towards VPLs as a DSL (VDSL?) for complex programming patterns. For example, state machines are easier to describe and test visually. Message-passing concurrency systems are easier to visualize with processes and message channels. Mathematical notation is more concise than a sequence of library calls. Is a UI designer a VPL? I think so and it’s super productive. Where many VPLs fail is in trying to be the whole language, rather than a small component. If VDSLs are useful than language editors should embed Visio-like drawing tools and you need an mechanism to generate code from those drawings (macros). I’m not sure if you can do that with any editor right now. Maybe Microsoft’s DSL tool is going in the right direction, but I won’t pay for VS2005.