comp.lang.ada
 help / color / mirror / Atom feed
From: dale@cs.rmit.edu.au (Dale Stanbrough)
Subject: Re: Ada --> C Translation, was: Win CE target
Date: 1998/10/11
Date: 1998-10-10T23:30:46+00:00	[thread overview]
Message-ID: <dale-1110980932270001@dale.ppp.cs.rmit.edu.au> (raw)
In-Reply-To: 6vobnk$vt9$1@jupiter.cs.uml.edu

Dr Amirez wrote:

" Well, C didn't have exceptions for years and probably will never have it.
  That didn't keep it from being one of the most successful languages
  ever created. If you consider a feature rich language a better language
  then let me tell you this. I remember seeing a question on this forum 
  that goes like this: "If a task blocks on I/O, do other tasks get a chance 
  to run or the *process* will suspend itself, and no task will run 
  until the process get scheduled again? "
  Someone responded that it's undefined. Well, I would think such
  an important feature should be very well defined instead  of being
  left as an excercise for the user to find out how that is implemented
  on their systems. After all, isn't Ada intended to be a system 
  programming language? You can't program systems using features that 
  are system dependant themselves.
  The more features a language has, the more flaws it has. You, as an Ada
  programmer, probably know better than I".



Ok, let's put your rather simplistic analysis to the test. 

An issue of Communications of the ACM tested a large number of Unix 
utilities (vi was one of them) to the test by feeding them with a stream
of randomly produced characters. A very high proportion of the programs
crashed (core dumped!).

This is from a simple language. Why did this happen? If it is such a
simple language, surely by your logic, any program will be aok?


Lets face reality. A language with more features may be harder to 
implement. There may be some flaws in the definition. But does it mean
that the language can't be used to create reliable code? Certainly the 
opposite (a simple language will always produce good code) isn't true.
What it really means is you have to analyze the features to see if they
help you write better programs. Another recent article in Communications
of the ACM had a discussion about all the terrible things that could
happen in programs (it did a fault analysis of a large number of (C) 
programs). Guess what.. a large number of the _run time_ problems in
these programs would have been _compile time_ problems in Ada.

Your analysis seems to have the depth of someone comparing the space
shuttle to a fireworks rocket...

   "Has rocket motor?" "Check!"
   "Takes off vertically?" "Check!"
   "Is firework rocket cheaper?" "Check!"
   "Firework rocket simpler?" "Check!"
   "Sheesh! why would anyone use a more complex Space shuttle when
    a firework rocket is cleary much more useful!"

You then rather amazingly assert...

"You can't program systems using features that are system dependant themselves"

Once again I will point you at C. In this language the size of an integer
hasn't been defined. This is a system dependent feature. By your definition
you can't program systems with C. 

You had better ring up AT&T and tell them the bad news...

Dale




  reply	other threads:[~1998-10-11  0:00 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-09-20  0:00 Win CE target William A Whitaker
1998-09-20  0:00 ` dewarr
1998-09-20  0:00 ` dewarr
1998-09-20  0:00 ` Tucker Taft
1998-09-21  0:00   ` dennison
1998-09-21  0:00     ` dewarr
1998-09-28  0:00       ` Ada --> C Translation, was: " Stefan Helfert
1998-09-29  0:00         ` Robert A Duff
1998-10-10  0:00           ` Dr Amirez
1998-10-11  0:00             ` Dale Stanbrough [this message]
1998-10-10  0:00               ` Dr Amirez
1998-10-11  0:00                 ` Dale Stanbrough
1998-10-11  0:00                   ` Dr Amirez
1998-10-12  0:00                     ` Larry Kilgallen
1998-10-13  0:00                       ` dennison
1998-10-12  0:00                     ` Niklas Holsti
1998-10-12  0:00                 ` dennison
1998-10-12  0:00                   ` Larry Kilgallen
1998-10-14  0:00                   ` dewarr
1998-10-14  0:00                     ` Andi Kleen
1998-10-12  0:00                 ` PC
1998-10-12  0:00                   ` Operating System in Ada (was Ada --> C Translation) Larry Kilgallen
1998-10-12  0:00                     ` dennison
1998-10-12  0:00                     ` Tom Moran
1998-10-12  0:00                       ` Brian Rogoff
1998-10-13  0:00                         ` dennison
1998-10-13  0:00                           ` Brian Rogoff
1998-10-13  0:00                       ` Tucker Taft
1998-10-12  0:00                     ` Chris Morgan
1998-10-13  0:00                       ` Larry Kilgallen
1998-10-13  0:00                       ` Dale Stanbrough
1998-10-14  0:00                       ` dewarr
1998-10-21  0:00                     ` Van Snyder
1998-10-22  0:00                       ` Tom Moran
1998-10-13  0:00             ` Ada --> C Translation, was: Win CE target Robert I. Eachus
1998-10-14  0:00               ` Samuel Mize
1998-10-16  0:00                 ` Tasking/blocking system calls (was: Ada --> C Translation) Mats Weber
1998-09-29  0:00         ` Ada --> C Translation, was: Win CE target Tucker Taft
1998-09-30  0:00           ` dewarr
1998-09-23  0:00 ` falis
replies disabled

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