
Rationale:
Visual Programming Language design has run into some problems. Most
VPL systems are special purpose; as yet there are few if any good
general purpose notations. This is in part because designing a visual
notation is very difficult, let alone implementing it, and so
therefore appropriate tools are needed to make design and
experimentation easier. Other barriers to wide spread use of VPL's
include performance penalties, and the fact that VPL's often require
programmer retraining. The features of Polly Visual address these
problems.
Features of Polly Visual:
1. Absolute compatibility with text only programming languages
standard text only code can be used in Polly. The code looks and
performs exactly the same as in a traditional programming
environment for that language; the only difference is that the code
now lives in the Polly visual editing environment. The Polly compiler
outputs object code which is indistinguishable from binaries generated
by traditional programming environments for the same text only
language.
2. Appearance free Polly takes no position on what
text plus graphics visual notations should look like, yet supports
any of them. This leaves visual language designers free to implement
whatever new notations they can think up. Standard Java code is
considered and processed as a degenerate text only case of a visual
programming language.
3. Appearance rich Polly supports visual language notations which
include text, vectors, bitmaps and pixmaps in any combination.
4. Syntax rich the Polly environment supports spatial parsing, so
users can simply write&draw programs and documentation in free form
style, and then the system derives underlying structure from spatial
arrangement. Syntax driven menu input is also available.
5. Mixed visual language support the same source file can have
expressions in more than one visual language, including text only.
6. Visual data for programs visual data including text,
vectors, bitmaps and pixmaps in any combination can be embedded
right in the source code of the program that will use the data.
7. Visual comments for documentation comments can be made up of
text, vectors, bitmaps and pixmaps in any combination. Since Polly
source files can include both comments and visual code, they are
really "visual code documents." Hypermedia links are included in the
Polly environment for easy browsing among code documents, as well
as Web links.
8. Unix implementation Polly is implemented in Common Lisp and runs
under Unix and Linux.

Documentation text, documentation textgraphics, code text and code textgraphics are all first class citizens in Polly's visual world.
Abstract first distributed March 1994.
Work in progress; draft copies available on request.
Fred Lakin
(C) Copyright 1994 PGC