comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <bauhaus@futureapps.invalid>
Subject: Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming
Date: Sat, 01 Nov 2014 14:35:59 +0100
Date: 2014-11-01T14:35:59+01:00	[thread overview]
Message-ID: <m32njo$ga6$1@dont-email.me> (raw)
In-Reply-To: <m31iit$74m$1@dont-email.me>

On 01.11.14 04:03, Simon Clubley wrote:

> We keep C because the C compilers generate code to run on everything
> out there - and there are always options for each target which don't
> restrict what you can do with the generated code unlike GNAT GPL.

Then why not use FSF GNAT?  Because it is not as convenient as
a fully supported compiler?

There is more, though. I am abbreviating by using "freeware" notions
such as no-cost, or <100 price range, no run-time cost,
and no tit-for-tat license. I could have used "gift".

Then, first, many C compilers are not freeware in commercial or closed
source projects. Second, there are fewer freeware run-times for Ada
than there are freeware run-times for C. But, of both there are few.
There is no freeware Ada for iOS right now. There is no workable
freeware Ada for Android right now. This should cover the mass market of
computers for entertainment, communication, and contacts, excluding gaming.

Then, embedded. ARM, AVR, ... does a car count as a development target
of the kind you mention, where there are, allegedly, freeware C
implementations that don't restrict in any way? Side note: AVR chips
are usually programmed using GCC.

> When you are building foundation libraries, which by definition are
> intended to run on a wide range of platforms/targets, you need to use
> an implementation language which is freely available across that wide
> range of platforms/targets.

Which, as outlined, isn't necessarily C, is it?  If you wanted Ada to
target AVR, and be co-operative, just Export subprograms with convention
C, or Standard, and everyone can work with them.

> Instead we should consider the possibility of
> a half-way language which is better (safer) than C but not as strict
> as Ada and would have ease of implementation/porting as one of it's
> goals.

Imagine C++ without int, without char, and without C-pointers (see MISRA for
int,see JSF++ for the latter).
Now replace this part of C++'s foundation with a "modern" type system that is
informed of the benefits of Ada's type system as well as of others that allow
e.g., saturating arithmetic as part of the type system.(*) C++ should be an
interesting formalism if it has tight integration of everything in the language.
If they can get this replacement in the foundations working, everyone can.

__
(*) No! Noo! NOT a library. No. NO!! The. Type. System!!! Damn!



  reply	other threads:[~2014-11-01 13:35 UTC|newest]

Thread overview: 97+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-26 18:31 F-22 ADA Programming nathandsash
2014-10-26 19:02 ` Martyn Pike
2014-10-26 21:20 ` David Botton
2014-10-26 23:24   ` Jeffrey Carter
2014-10-26 23:55     ` David Botton
2014-11-14 22:54       ` rriehle
2014-11-14 23:46         ` Dennis Lee Bieber
2014-11-15  6:43           ` wilson
2014-11-15 17:49             ` Jeffrey Carter
2014-11-15 21:28         ` Maciej Sobczak
2014-11-16  9:57           ` Jean François Martinez
2014-11-16 22:26             ` Maciej Sobczak
2014-11-17  0:33               ` Jean François Martinez
2014-10-27  0:13     ` Robert A Duff
2014-10-27  0:31       ` David Botton
2014-10-27 10:17         ` Georg Bauhaus
2014-10-27 10:47           ` J-P. Rosen
2014-10-27 15:06         ` Adam Beneschan
2014-10-27 22:32           ` Randy Brukardt
2014-10-27  6:28       ` Pascal Obry
2014-10-27 15:04     ` Adam Beneschan
2014-10-27 15:17       ` Björn Lundin
2014-10-27 15:41       ` Maciej Sobczak
2014-10-27 16:01         ` Robert A Duff
2014-10-27 20:16         ` Adam Beneschan
2014-10-28  8:45         ` Natasha Kerensikova
2014-10-28 11:58           ` Bill White
2014-10-28 14:56             ` Adam Beneschan
2014-10-28 19:36               ` Bill White
2014-10-28 18:29           ` Jeffrey Carter
2014-10-28 18:37             ` Adam Beneschan
2014-10-28 19:14               ` David Botton
2014-10-28 21:06               ` Jeffrey Carter
2014-10-28 21:32                 ` Simon Clubley
2014-10-28 21:37                 ` Adam Beneschan
2014-10-28 23:59                   ` Jeffrey Carter
2014-10-29  0:34                     ` Adam Beneschan
2014-10-29  5:24                       ` Jeffrey Carter
2014-10-29  8:37                         ` Dmitry A. Kazakov
2014-10-29 17:20                           ` Jeffrey Carter
2014-10-29 20:43                             ` Dmitry A. Kazakov
2014-10-29 20:55                               ` Jeffrey Carter
2014-10-29 21:40                               ` Georg Bauhaus
2014-10-30  8:56                                 ` Dmitry A. Kazakov
2014-11-08  4:52                                   ` Randy Brukardt
2014-11-08  8:12                                     ` Dmitry A. Kazakov
2014-10-30 15:38                             ` Maciej Sobczak
2014-10-30 15:49                               ` Alan Jump
2014-10-30 22:33                                 ` Dennis Lee Bieber
2014-10-30 23:13                                   ` Jeffrey Carter
2014-10-30 16:07                               ` Bill White
2014-10-30 22:37                                 ` Maciej Sobczak
2014-10-31  9:41                                   ` Georg Bauhaus
2014-10-31 12:51                                     ` Brad Moore
2014-11-01  3:03                                     ` C versus Ada (once again :-)), was: " Simon Clubley
2014-11-01 13:35                                       ` Georg Bauhaus [this message]
2014-11-03  1:54                                         ` Simon Clubley
2014-11-03  9:42                                           ` Georg Bauhaus
2014-11-03 12:07                                           ` Luke A. Guest
2014-11-04  2:01                                             ` Simon Clubley
2014-11-03 14:26                                           ` Brian Drummond
2014-11-01 13:46                                       ` Maciej Sobczak
2014-11-03  2:01                                         ` Simon Clubley
2014-11-03  9:10                                           ` Maciej Sobczak
2014-11-03 12:09                                           ` Luke A. Guest
2014-11-03 12:40                                       ` Florian Weimer
2014-11-03 21:58                                         ` Shark8
2014-11-03 22:28                                           ` Dmitry A. Kazakov
2014-11-04 13:42                                           ` Florian Weimer
2014-11-04 15:01                                             ` G.B.
2014-11-04 15:50                                               ` Florian Weimer
2014-10-31 10:11                                   ` Bill White
2014-10-31 12:52                                     ` Maciej Sobczak
2014-11-02 15:40                                       ` Bill White
2014-11-02 22:23                                         ` Maciej Sobczak
2014-11-02 22:52                                           ` Peter Chapin
2014-11-03  1:36                                           ` Simon Clubley
2014-11-03 19:04                                           ` Laurent
2014-10-31 13:24                               ` Jacob Sparre Andersen
2014-11-08  4:45                 ` Randy Brukardt
2014-11-08 23:43                   ` Shark8
2014-11-09  8:39                     ` Simon Wright
2014-11-09 20:53                       ` Shark8
2014-10-28 19:18             ` Simon Clubley
2014-10-27 16:34       ` David Botton
2014-10-27 16:51         ` brbarkstrom
2014-10-27 18:03           ` G.B.
2014-10-27 22:06             ` Simon Wright
2014-10-28  9:40               ` Georg Bauhaus
2014-10-27 20:06         ` Adam Beneschan
2014-10-27 20:21           ` David Botton
2014-10-28 11:34       ` tonyg
2014-10-27 17:01     ` Pascal Obry
2014-10-27  4:53 ` Jerry Petrey
2014-10-29  1:49   ` F-35 (was:F-22 ADA Programming) Robert Love
2014-10-30  9:01     ` Frédéric Praca
2014-10-30  9:07       ` Frédéric Praca
replies disabled

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