comp.lang.ada
 help / color / mirror / Atom feed
From: "Warren W. Gay VE3WWG" <ve3wwg@home.com>
Subject: Re: Ada The Best Language?
Date: Fri, 20 Jul 2001 17:47:49 GMT
Date: 2001-07-20T17:47:49+00:00	[thread overview]
Message-ID: <3B586EC3.9C494668@home.com> (raw)
In-Reply-To: 9j9grk$6na$1@nh.pace.co.uk

Marin David Condic wrote:
> Some attributes in Ada can be overriden - where it makes sense. However, one
> of the things I know of no way of doing in C++ are things where I want the
> compiler to track ranges, etc., of subtypes and use the attributes to make
> sure everything works based on what the compiler knows. What you are
> referring to as "traits" sounds like nothing more than implementing
> functions (or macros?) to return characteristics of complex types - not
> getting the compiler to figure things out for you and track all that info so
> you don't have to.
> 
> If you look at the really rich collection of attributes that Ada provides
> for objects, types, subprograms, tasks, etc., I think you will see that
> these can be extremely useful in all sorts of ways. They can aid in
> portability, or isolate the impact of changes or provide all sorts of useful
> information about the data and code you are using that helps develop more
> flexible & adaptable applications.

In further support of Ada..

This is where a C/C++ programmer might use a macro (or clumsy sizeof
expression) to describe the extent of an array bound. The Ada compiler OTOH
readily provides the programmer with the array'Length attribute. There is
never a disagreement with the array length and the attribute, as there can
be with the C macro when it does not apply to the array (or you have
redefined the macro). Additionally, sizeof can be misleading in certain
uses, because it's returned size may be the physical size, rather than
the actual size etc.

Furthermore, Ada does not force arrays to start at zero. This is fully
supported with array'First and array'Last (with array'Length providing
the difference). C/C++ cannot come close in comparison at these points.
This allows you as the programmer to not be force to think in implementation
terms -- you subscript the array as appropriate to your application.

> Check out Annex K of the ARM (on-line available at
> http://www.adapower.org/ - look under "Reference" and "On-line version of
> the Ada 95 Reference Manual at AdaPower.com ") You will find a wealth of
> things available to you that are not paralleled in C++ or any number of
> other languages. I particularly like them for mathematical computations!
> 
> MDC
> --
> Marin David Condic
> Senior Software Engineer
> Pace Micro Technology Americas    www.pacemicro.com
> Enabling the digital revolution
> e-Mail:    marin.condic@pacemicro.com
> Web:      http://www.mcondic.com/

-- 
Warren W. Gay VE3WWG
http://members.home.net/ve3wwg



  parent reply	other threads:[~2001-07-20 17:47 UTC|newest]

Thread overview: 231+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-18  8:32 Ada The Best Language? Vinzent Hoefler
2001-07-18 12:25 ` Marc A. Criley
2001-07-19  1:03   ` Mike Silva
2001-07-20 11:30   ` Bertrand Augereau
2001-07-20 12:58     ` Marc A. Criley
2001-07-20 13:48       ` Bertrand Augereau
2001-07-20 14:56         ` Marin David Condic
2001-07-20 16:41           ` Bertrand Augereau
2001-07-20 17:47           ` Warren W. Gay VE3WWG [this message]
2001-07-20 19:33             ` David C. Hoos
2001-07-20 17:19         ` Marc A. Criley
2001-07-20 18:18           ` Bertrand Augereau
2001-08-06  8:13   ` stoog
2001-07-19 17:10 ` Tomasz Wegrzanowski
2001-07-20 13:31   ` Lutz Donnerhacke
2001-07-20 16:46     ` Tomasz Wegrzanowski
2001-07-20 17:00       ` David C. Hoos
2001-08-04  6:04         ` David Thompson
2001-08-05  2:22           ` Warren W. Gay VE3WWG
2001-07-23 10:12       ` Lutz Donnerhacke
  -- strict thread matches above, loose matches on Subject: below --
2001-07-27 22:46 Beard, Frank
2001-07-27 20:22 Beard, Frank
2001-07-27 21:28 ` Marin David Condic
2001-07-30  2:23 ` Warren W. Gay VE3WWG
2001-07-20  6:56 Vinzent Hoefler
2001-07-20  6:23 Vinzent Hoefler
2001-07-20  6:08 Vinzent Hoefler
2001-07-20 17:31 ` Warren W. Gay VE3WWG
2001-07-21 16:27   ` Jacob Sparre Andersen
2001-07-24  2:02     ` Warren W. Gay VE3WWG
2001-07-20  6:05 Vinzent Hoefler
2001-07-19 16:10 Vinzent Hoefler
2001-07-19 11:34 Vinzent Hoefler
2001-07-19 15:24 ` Alfred Hilscher
2001-07-19 15:38   ` nicolas
2001-07-19 17:28 ` Ted Dennison
2001-07-24 13:53   ` Colin Paul Gloster
2001-07-19  6:35 Vinzent Hoefler
2001-07-19  6:32 Vinzent Hoefler
2001-07-19  5:42 Vinzent Hoefler
2001-07-19  0:15 Beard, Frank
2001-07-19 12:24 ` codesavvy
2001-07-18 14:40 Re[2]: " ANH_VO
2001-07-26  1:53 ` Lao Xiao Hai
2001-07-18  8:43 Vinzent Hoefler
2001-07-18  9:22 ` Gerhard Häring
2001-07-18  8:58   ` Lutz Donnerhacke
2001-07-18 14:06 ` codesavvy
2001-07-18 15:27   ` Marc A. Criley
2001-07-18 20:31     ` codesavvy
2001-07-18 21:29       ` Darren New
2001-07-18 21:56         ` Marin David Condic
2001-07-19  3:37           ` Larry Hazel
2001-07-19 18:19             ` Marin David Condic
2001-07-21 15:33             ` Mark Lundquist
2001-07-23 13:50               ` Marin David Condic
2001-07-24  4:52                 ` Robert C. Leif, Ph.D.
2001-07-24  6:47                   ` tmoran
2001-07-24 11:47                   ` Larry Kilgallen
2001-07-24 14:10                   ` Ted Dennison
2001-07-27 11:29                     ` Jacob Sparre Andersen
2001-07-19 21:47         ` codesavvy
2001-07-21  2:51           ` DuckE
2001-07-21  3:46           ` Darren New
2001-07-26  1:39           ` Lao Xiao Hai
2001-07-19 13:12       ` Marc A. Criley
2001-07-19 17:11         ` codesavvy
2001-07-21 14:10           ` Marc A. Criley
2001-07-19 14:12       ` Leif Roar Moldskred
2001-07-19 16:58         ` codesavvy
2001-07-19 18:29         ` Marin David Condic
2001-07-19 17:11 ` Tomasz Wegrzanowski
2001-07-19 18:33   ` Marin David Condic
2001-07-19 20:49     ` Tomasz Wegrzanowski
2001-07-19 21:01       ` Darren New
2001-07-19 21:20       ` Marin David Condic
2001-07-19 22:31         ` Tomasz Wegrzanowski
2001-07-19 23:04           ` Darren New
2001-07-19 23:36             ` Tomasz Wegrzanowski
2001-07-20 16:14             ` Ted Dennison
2001-07-20 17:51               ` Darren New
2001-07-20 17:54               ` Marin David Condic
2001-07-20 20:16                 ` Ted Dennison
2001-07-25  9:01           ` Colin Paul Gloster
2001-07-19 22:31       ` Larry Kilgallen
2001-07-17 16:38 codesavvy
2001-07-17 17:16 ` chris.danx
2001-07-17 21:35   ` JP
2001-07-18 12:04     ` Marc A. Criley
2001-07-18 13:13       ` Colin Paul Gloster
2001-07-17 17:53 ` Larry Kilgallen
2001-07-17 18:01 ` Marin David Condic
2001-07-18  2:10   ` codesavvy
2001-07-18 10:43     ` Larry Kilgallen
2001-07-18 14:27     ` Marin David Condic
2001-07-18 20:37       ` codesavvy
2001-07-18 21:11         ` Marin David Condic
2001-07-19 21:45           ` codesavvy
2001-07-18 22:02         ` Ed Falis
2001-07-19 21:50           ` codesavvy
2001-07-18 23:00         ` Larry Kilgallen
2001-07-19 21:55           ` codesavvy
2001-07-21  8:39             ` Martin Dowie
2001-07-22 14:18             ` John R. Strohm
2001-07-23  6:13               ` 
2001-07-23 11:16                 ` Lutz Donnerhacke
2001-07-23 12:27                 ` Marc A. Criley
2001-07-24  2:07                 ` Warren W. Gay VE3WWG
2001-07-20  4:12         ` Adrian Hoe
2001-07-18 17:26     ` Darren New
2001-07-18 18:03       ` Pascal Obry
2001-07-18 20:51       ` codesavvy
2001-07-18 21:03         ` David C. Hoos
2001-07-20  4:00           ` Adrian Hoe
2001-07-18 21:22         ` Darren New
2001-07-19  4:12         ` James Rogers
2001-07-19  8:59           ` Michal Nowak
2001-07-19 10:40           ` Larry Kilgallen
2001-07-19 12:20           ` codesavvy
2001-07-21 18:20         ` Lao Xiao Hai
2001-07-22  3:55           ` Robert C. Leif, Ph.D.
2001-07-18 21:08     ` Tucker Taft
2001-07-17 20:12 ` Jeffrey Carter
2001-07-17 21:15   ` Gerhard Häring
2001-07-17 21:38   ` Paul Storm
2001-07-18  2:03 ` Tomasz Wegrzanowski
2001-07-18  9:28   ` Gary Lisyansky
2001-07-18 10:42   ` Larry Kilgallen
2001-07-18  2:40 ` Beau
2001-07-18 10:35   ` codesavvy
2001-07-18 11:27     ` Jean-Pierre Rosen
2001-07-18 18:28       ` Brian Rogoff
2001-07-18 21:00         ` codesavvy
2001-07-19 17:31           ` Warren W. Gay VE3WWG
2001-07-19 21:36             ` codesavvy
2001-07-24  3:22               ` Warren W. Gay VE3WWG
2001-07-25  0:11                 ` David Bolen
2001-07-25 10:50                   ` codesavvy
2001-07-25 16:04                     ` Warren W. Gay VE3WWG
2001-07-25 21:49                       ` codesavvy
2001-07-26 17:24                         ` Warren W. Gay VE3WWG
2001-07-26 18:48                           ` Marin David Condic
2001-07-26 20:21                             ` Warren W. Gay VE3WWG
2001-07-26 20:52                               ` Marin David Condic
2001-07-26 17:26                         ` Pascal Obry
2001-07-25 19:39                     ` tmoran
2001-07-27  0:35                       ` David Bolen
2001-07-27  1:50                         ` Gary Scott
2001-07-27 14:05                         ` Marin David Condic
2001-07-28  6:42                         ` tmoran
2001-07-28  5:32                       ` JM
2001-07-28  6:49                         ` Gerhard Häring
2001-07-28 12:04                           ` Matthew Woodcraft
2001-07-28 19:46                           ` tmoran
2001-07-29  1:01                             ` Gerhard Häring
2001-07-31  2:59                           ` Tom Moran
2001-07-31  9:40                             ` Larry Kilgallen
2001-07-31 10:10                               ` Preben Randhol
2001-07-26 13:22                   ` Marin David Condic
2001-07-20 11:20             ` Bertrand Augereau
2001-07-20 12:56               ` Marin David Condic
2001-07-20 13:18               ` Dmitry Kazakov
2001-07-20 17:27               ` Warren W. Gay VE3WWG
2001-07-20 18:14                 ` Bertrand Augereau
2001-07-20 19:10                   ` Marin David Condic
2001-07-20 20:12                     ` Bertrand Augereau
2001-07-20 20:48                       ` Marin David Condic
2001-07-23 11:09                       ` Lutz Donnerhacke
2001-07-20 19:38                   ` David C. Hoos
2001-07-22 13:13                     ` Bertrand Augereau
2001-07-22 20:35                       ` David C. Hoos, Sr.
2001-07-22 21:12                         ` Bertrand Augereau
2001-07-22 22:34                           ` David C. Hoos, Sr.
2001-07-23  7:41                           ` Dmitry Kazakov
2001-07-23  8:27                             ` Bertrand Augereau
2001-07-23 11:51                               ` Dmitry Kazakov
2001-07-23 12:06                                 ` Bertrand Augereau
2001-07-24  1:57                                   ` Warren W. Gay VE3WWG
2001-07-26 22:31                                   ` Larry Elmore
2001-07-24 14:08                           ` Pat Rogers
2001-07-24 14:29                             ` Bertrand Augereau
2001-07-24 14:49                               ` Pat Rogers
2001-07-24  1:51                   ` Warren W. Gay VE3WWG
2001-07-18 18:29       ` codesavvy
2001-07-18 21:48         ` Hambut
2001-07-18 22:00           ` Marin David Condic
2001-07-19 21:43           ` codesavvy
2001-07-19  7:45         ` Jean-Pierre Rosen
2001-07-18 11:55     ` Larry Kilgallen
2001-07-18 15:49     ` Alfred Hilscher
2001-07-18 20:48       ` codesavvy
2001-07-18 22:12         ` Pascal Obry
2001-07-18 23:22         ` chris.danx
2001-07-20 11:26           ` Bertrand Augereau
2001-07-20 12:11             ` chris.danx
2001-07-20 12:43               ` Bertrand Augereau
2001-07-20 17:37                 ` Warren W. Gay VE3WWG
2001-07-24 16:52                   ` Ted Dennison
2001-07-24 16:59                     ` Lutz Donnerhacke
2001-07-24 18:25                       ` Ted Dennison
2001-07-25 10:19                         ` Lutz Donnerhacke
2001-07-24 20:14                     ` Warren W. Gay VE3WWG
2001-07-24 21:11                     ` Florian Weimer
2001-07-24 22:52                       ` tmoran
2001-07-25  7:08                         ` Florian Weimer
2001-07-25  7:45                           ` tmoran
2001-07-25 15:44                       ` Warren W. Gay VE3WWG
2001-07-25 20:39                         ` Florian Weimer
2001-07-26 17:13                           ` Warren W. Gay VE3WWG
2001-07-26 21:08                             ` Florian Weimer
2001-07-25  4:03                     ` Tomasz Wegrzanowski
2001-07-24 17:23                 ` Ted Dennison
2001-07-20 12:14             ` Lutz Donnerhacke
2001-07-20 12:32               ` Bertrand Augereau
2001-07-20 12:39                 ` Lutz Donnerhacke
2001-07-20 13:28                   ` Bertrand Augereau
2001-07-20 14:19                     ` Lutz Donnerhacke
2001-07-20 15:39                       ` Bertrand Augereau
2001-07-20 15:47                         ` Lutz Donnerhacke
2001-07-20 16:55                           ` Bertrand Augereau
2001-07-23 11:05                             ` Lutz Donnerhacke
2001-07-23 19:42             ` Lao Xiao Hai
2001-07-19 10:43         ` Alfred Hilscher
2001-07-19 12:47         ` Marc A. Criley
2001-07-19 17:01           ` codesavvy
2001-07-21 12:53             ` Marc A. Criley
2001-07-23 19:26         ` Lao Xiao Hai
2001-07-18 15:05 ` McDoobie
2001-07-18 20:42   ` codesavvy
2001-07-21 15:31 ` Mark Lundquist
2001-07-23  4:15   ` codesavvy
2001-07-23  7:26     ` Martin Dowie
2001-07-23 14:18   ` Marin David Condic
2001-07-24  2:13   ` Warren W. Gay VE3WWG
replies disabled

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