Return-Path: <[log in to unmask]>
Received: from by bebe (4.1/SMI-4.0)
        id AA07174; Sat, 10 Jan 98 15:35:58 PST
Received: from ( by (4.1/SMI-4.1)
        id AA05372; Sat, 10 Jan 98 15:35:57 PST
Received: from geordi.Calspan.COM by (SMI-8.6/3.1.090690-Calspan Advanced Technology Center)
        id XAA28326; Sat, 10 Jan 1998 23:35:53 GMT
Received: from by geordi.Calspan.COM (SMI-8.6/SMI-SVR4)
        id SAA01886; Sat, 10 Jan 1998 18:35:17 -0500
Received: by localhost with Microsoft MAPI; Sat, 10 Jan 1998 18:40:21 -0500
Message-Id: <[log in to unmask]>
From: Terry Westley <[log in to unmask]>
Reply-To: "[log in to unmask]" <[log in to unmask]>
To: "[log in to unmask]" <kephart@bebe>
Subject: RE: using Ada for desk-top or embedded survey
Date: Sat, 10 Jan 1998 18:40:19 -0500
Organization: Calspan SRL Corp
X-Mailer: Microsoft Internet E-mail/MAPI -
Encoding: 42 TEXT

On Friday, January 09, 1998 6:08 PM, Gary Kephart [SMTP:[log in to unmask]] wrote:
> Frankly, I expect most everyone on Team-Ada (328 people) to prefer
> embedded systems. This is a small group of highly enthusiastic
> Ada-philes and Ada is mostly used in embedded systems.
> Raise your hands if you're using Ada to create desk-top applications or
> any other non-embedded software - and that's the main part of your job.

One hand is raised, the other is not.  The bulk of my current professional
work is Tcl/Tk and SQL for non-real-time database management portion of
a simulation of integrated air defense systems.  This simulation also
includes lots of GUIs (Xlib and XView), and some hard real-time control
of radars.

Of course, being a simulation, no-one dies if we miss a deadline.  But,
if we produce incorrect results and some mission over Iraq fails because
they used bad data, someone IS dead.  Approximately 90% of the code is Ada (closer to 99% in the real-time portion).

Question (to start another fun thread): is this war-fighting code?

I've used Ada for both embedded systems and UIs (both graphical and text,
to connect this thread with another!).  I've enjoyed them both.  I've
built UIs in 8085 assembler, C, Tcl/Tk, and Ada.  I prefer solving tough
technical problems, regardless of the language, the application, the
processor type, the operating system (or lack thereof) and whether it
is new code or maintenance.

Specifically relating to Ada and GUIs:  most recently, I've used an Ada
interface to XView for implementing GUIs.  This was NOT fun.  XView is
a mess and the Ada interface was not much help.  We switched to Tcl/Tk.
This is primarily why I wrote TASH* so that I could use Ada instead.
Unfortunately, we have not yet moved up to Ada 95, so can't use TASH!

If we were starting over today, I would recommend using Aonix'
ObjectAda targeted to either WinNT or Java Virtual Machine for the
GUI portion.

* TASH (Tcl Ada SHell) is a freely available Ada 95 interface to
Tcl/Tk (also free).  To connect this post to yet another thread:
TASH is freely available to the Ada community and can be found at  It uses neither the ACL nor
the GPL.  Its license is based on the one that Sun uses to freely
distribute Tcl/Tk.