andrew@jhereg.Minnetech.MN.ORG (Andrew Esh) (10/27/89)
I am interested in hearing more about a CASE tool called 'Prograph'. It was discussed briefly in previous articles, and I have seen the ad for it in MacTutor (pg. 81), but I would like to hear some unbiased (or semi-biased) reviews from the net. Be sure to post, rather than EMail, for the benfit of all. - Andrew
mikel@goofy.Apple.COM (Mikel Evins) (10/31/89)
Rather than a CASE tool, Prograph is a programming language whose syntax is composed of pictorial symbols rather than textual ones. The semantics of the language revolve around objects and methods, and are based upon dataflow languages. Methods can either be global, in which case they behave like procedures or functions in any normal procedural programming language, or they can be associateed with a class, in which case they behave more like what you would expect from a language like Smalltalk. Like Smalltalk and Lisp, Prograph is dynamically typed. Prograph is the first visual programming environment I have used that I didn't immediately dislike. I am dubious about certain issues, such as their handling of case logic, but I haven't been using it for long, so I remain undecided. Maybe I'll decide I like the way they do it. To write a program you open a new project and click in its window to create an operation. You wire together operations and feed data through them. The operations respond to the arrival of data on their input nodes by executing their internal definitions and generating some data on their output nodes. A program is a network of operations connecting some input data to some ultimate output location. Prograph enables you to hide much of the resulting complexity by composing your own operations that contain dataflow networks, and then treating them as black boxes; once a new operation is defined it is just a black box with input and output nodes. The programming environment is fairly rich and forgiving. Editing seems to be pretty easy. I am a little worried about what happens when I get a really big network with lots of large sub-networks; I'm afraid that I may find that there is not enough screen real-estate in the world to adequately display the resulting program. On the other hand, I have some hope that dataflow networks may be capable of revealing a lot of their structure to a casual (knowledgeable) observer. At OOPSLA TGS Systems was showing a preliminary version of the compiler for Prograph that they intend to ship sometime early next year. There was a noticeable speed gain; they say they are shooting for something like 20 to 50 times speed improvement over the interpreter. The minimum size of applications looks very good at this point; something in the single-digit numbers of K.