comp.lang.ada
 help / color / mirror / Atom feed
* A small Ada success story
@ 1999-03-14  0:00 Steffen Huber
  1999-03-17  0:00 ` Tom Moran
  1999-03-17  0:00 ` Nick Roberts
  0 siblings, 2 replies; 19+ messages in thread
From: Steffen Huber @ 1999-03-14  0:00 UTC (permalink / raw)


Hi,

after reading this newsgroup for some time now, I thought I should tell you
about a small, but very successful project implemented in Ada 95. Just to
show those that think that Ada is only used in the military industry how
wrong they are ;-)

Let me start with some history. It was the summer of 1996 when I bought
(together with some friends) a CD writer. Unfortunately, I was only able to
use it with my PC, but not with my preferred platform (RISC OS on a Risc PC
from Acorn) due to lack of software. After obtaining the necessary
documentation for programming the CD writer, I started to implement a small
prototype of a CD writing application capable of reading and writing audio
and data tracks. This implementation was done in BBC Basic V, widely
considered as the fastet interpreted BASIC around (the interpreter is
included in the ROM of RISC OS, so it is usually used for quick-and-small
projects and prototypes, or as a glorified scripting language).

Some companies expressed an interest to turn this prototype into
a commercial product. So I had to decide which way to go:
a) further development in BASIC (even the prototype was quite nicely
   modularised and structured, so it was indeed an option)
b) new implementation in C (everybody on this platform uses either
   C or assembler...I don't know why ;-))
c) new implementation using another language

At university, I already implemented two projects in Ada, so I had
a basic knowledge of Ada (Ada 83, to be more precise), and the results
and experiences were very positive. After I discovered that a port
of GNAT was available for the RISC OS platform, I decided to take
option c) and implement everything in Ada.

Now, over two years later, the project is still alive and happy, and
despite the continuous development, the maintainability is still
very high. The features of CDBurn (the name of the product) now include
an ISO formatter with support for a very flexible filename translation
scheme, Joliet and on-the-fly writing. CDBurn is also capable of driving
a wide range of available drives, and supports disc-at-once writing.
All this functionality is controlled by a very nice UI (for those of
you wondering about RISC OS, the GUI is IMHO still the best thing since
sliced bread), and everything is 100% Ada.

Several key advantages of Ada surfaced during the project - especially
the powerful structuring possibilities and the full control over
representation issues (very valuable when interfacing with SCSI devices).

All in all, I am sure that taking one of the alternative routes would
have resulted in a more time consuming (overall development effort
was around 3 man months until now, and this includes the work done on
the bindings to RISC OS - I was the first developer to use GNAT on
RISC OS, so I had to do this on my own ;-)) and less powerful/less
maintainable solution.

So long, Steffen

-- 
Steffen Huber           LambdaComm System - Welcome to Trollinger Country
hubersn@lcs.wn.bawue.de                       acorn2@ftp.uni-stuttgart.de
... Bosheit ist nicht in der Lage, Dummheit vollstaendig zu simulieren. (JL)




^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~1999-03-26  0:00 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-03-14  0:00 A small Ada success story Steffen Huber
1999-03-17  0:00 ` Tom Moran
1999-03-17  0:00   ` dennison
1999-03-18  0:00     ` Corey Ashford
1999-03-18  0:00       ` bill
1999-03-19  0:00         ` Fraser Wilson
1999-03-21  0:00           ` Ehud Lamm
1999-03-21  0:00             ` robert_dewar
1999-03-21  0:00               ` Tom Moran
1999-03-21  0:00                 ` robert_dewar
1999-03-22  0:00               ` Simon Wright
1999-03-19  0:00         ` Larry Kilgallen
1999-03-20  0:00         ` locating exceptions (Ada vs. Java) Markus Kuhn
1999-03-20  0:00           ` bill
1999-03-19  0:00       ` A small Ada success story dewar
1999-03-18  0:00     ` locating exceptions (was: Ada success story) Markus Kuhn
1999-03-19  0:00     ` A small Ada success story Michael F Brenner
1999-03-26  0:00       ` Steve Quinlan
1999-03-17  0:00 ` Nick Roberts

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox