comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming
Date: Mon, 3 Nov 2014 23:28:24 +0100
Date: 2014-11-03T23:28:24+01:00	[thread overview]
Message-ID: <ejx2izvm8mcp.1hdol5zbtlx8h$.dlg@40tude.net> (raw)
In-Reply-To: STS5w.353302$Hb3.343492@fx03.iad

On Mon, 03 Nov 2014 14:58:06 -0700, Shark8 wrote:

> On 03-Nov-14 05:40, Florian Weimer wrote:
>> * Simon Clubley:
>>
>>> As I keep saying in one way or another:
>>>
>>> 	Ada: nice language, lousy compiler situation.
>>
>> If you are trying to parallelize your programs for performance
>> reasons, Ada (as standardized) is not such a nice language anymore
>> because it lacks a modern memory model (which reflects the variations
>> of existing hardware) and access to various forms of atomic
>> instructions with well-defined properties.
> 
> Isn't the atomic instruction thing properly recognized as platform 
> dependent?

Instruction is a wrong term, should be "atomic primitive" instead.

> If that's the case, then should it be part of Ada, or would 
> it be acceptable to have a machine-language (e.g. System.Machine_Code) 
> insert for handling it in the implementation part of some package?

No, that would be practically useless.

Atomic primitives must be machine-independent. That is, the compiler would
select the most appropriate implementation for.

For example, consider the atomic increment primitive (of some package
Interfaces type, e.g. Unsigned_64). When there is a machine instruction the
compiler uses it, otherwise it falls back to a protected operation or OS
calls.
 
> (Would such atomic instructions need to be incorporated at the Run-time 
> level?)

Only if the implementation is based on OS calls. E.g. using Windows API
function InterlockedIncrement.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

  reply	other threads:[~2014-11-03 22:28 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
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 [this message]
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