From: quarrie@cds001.cebaf.gov (David Quarrie)
Subject: Re: TOOLS Conference Report (?)
Reply-To: quarrie@cds001.cebaf.gov (David Quarrie)
Organization: CEBAF (Continuous Electron Beam Accelerator Facility)
Date: Mon, 17 Aug 1992 12:56:08 GMT

--
In article <1992Aug14.153413.14811@merlin.hgc.edu>, jcm@hgc.edu (James
McKim) writes:
|>
|>EiffelBuild is an application builder. Again using the drag and drop 
|>mechanism one can quickly build and experiment with graphical user
|>interfaces, for example. You build the interface on the screen and
|>the system generates most of the code. If your interface
|>includes a command button, the code for putting the button on the
|>screen, with text and colors of your choice will be automatically
|>generated. At the appropriate time, the system will provide a
|>template for the code _you_ have to fill in. Namely, what happens
|>when somebody clicks on the button. Perhaps someone with experience
|>with other GUI builders could comment further (Dave Q?). 
|>

Hmm, I knew Jim would try to get me to post more often!

I can only reinforce what Jim has said about EiffelBench and EiffelBuild. They
both look extremely good. One interesting number was that between them they
take about 1400 Eiffel classes so the Eiffel 3 compiler should be pretty 
robust when it ships. My understanding is that EiffelBuild (and EiffelVision)
both allow you to build applications for either Motif or OpenLook (although we
only saw the Motif version and that was generating Eiffel 2.3.4 syntax code for
now) and that you can optionally make that switch at run-time (if you're
willing 
to pay the penalty of a larger executable).

The "abstract" EiffelVision API looks pretty much like Motif so all the various
button widgets/gadgets, RowColumn widget are supported. The interactions are
supported by adding command objects to actions where EiffelBuild will supply
an empty routine for you to fill on (or you can use prebuild commands from
a palette). I'm not sure I'm using the correct terminology here.... One nice
touch is that EiffelBuild supports the notion of a state machine and you can
identify different commands to the same user interface object depending on the
sate the application is in. This could obviously be abused to generate modal
user interfaces, but it also allows considerable flexibility (which will
be very
useful in one of my particular applications).

One comment about EiffelBench is that there is some uncertainty (at
least in my 
mind) as to what capabilities are available from the Unix shell (and are
thus
suitable for use within scripts) as opposed to interactively. I did ask
about
whether the equivalent to "es" was available (the answer being "yes")
but I'm
not so sure about flat/short/ancestors etc. Certainly, when generating
the
documentation for a class cluster I would like to have access to all of
those
so I can generate the basic documentation automatically from within a
script.

Like Jim, I didn't get to see EiffelCase (well, I peeked over someone's
shoulder
and saw one diagram, but I never actually saw it in use).

The $64k question is of course, when???

	David
-------------------------------------------------------------------------------
	David Quarrie					CEBAF MS 12H
							12000 Jefferson Ave
Internet: quarrie@cebaf.gov				Newport News VA 23606
DECnet  : cebaf::quarrie				Tel: (804) 249-7562
BITNET  : quarrie@cebaf					Fax: (804) 249-7363