comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ada in command / control systems
Date: Tue, 5 Mar 2019 17:09:39 +0100
Date: 2019-03-05T17:09:39+01:00	[thread overview]
Message-ID: <q5m702$1kp0$1@gioia.aioe.org> (raw)
In-Reply-To: 1a5fae09-bbbf-4bdb-be8c-6a2e3fd70dfa@googlegroups.com

On 2019-03-05 10:33, Maciej Sobczak wrote:
>> Rather incompleteness and/or lack of usability.
> 
> But why do you expect a single tool to be complete, if we can get completeness from the combination of tools?

Because the tool is claimed to state the "requirements". There can be 
nothing above that.

> From what G.B. wrote in a sibling post, it looks like source code alone is not complete and usable in some contexts, either.

The source code is complete per definition, otherwise you could not 
compile and build the solution from it.

> But nobody would like to do it. So everybody accepts technology mixes for the sake of work efficiency.

My point was that the technology is basically same.

> That's why nobody complains about s-functions, it just looks like any other mix.

Apart from the issue of being "requirement" rather than code, the 
difference is technical impossibility to implement things in Simulik on 
one side and mere reuse of existing components on another.

>> You have a huge system integration problems caused by language
>> impedance
> 
> No. This integration happens at a lower scale, so it is not a system problem. I can call s-function written in C (or Ada!) form the Simulink model without much concern about language impedance.

There are lots of concerns when calling s-function, e.g. when the block 
containing this function is in the feedback loop. Models are extremely 
fragile. Using s-functions is like throwing arbitrary assembler 
insertions into Ada code. When you couple two models from two different 
frameworks what would be the effect? Programming languages have means 
for proper encapsulation and insulation the side effects. 
Domain-specific languages have nothing of this sort.

> I think that calling Ada functions from Python is more involved, even though they share paradigms.
> 
>> which becomes impossible when you have to connect models from
>> different paradigms. You must break out of one model go to a reasonable
>> language and then re-enter into yet another model.
> 
> And what can prevent me from doing it? If I call C functions from Ada, the integration is actually happening at the object level (by linker, not by compiler), because these languages do not much care about each other.

It is the same paradigm and after a half of century we more or less know 
how to write reusable components in C and Ada.

>> Better. This debunks the whole argument about pseudo-requirements. How
>> can you write requirements in a model language bounds of which
>> applicability and the role in the whole system is unknown?
> 
> Making this judgement is the responsibility of person doing tool evaluation. Experience with previous projects helps.

I am talking about the architecture. The requirement telling not to 
implement the client DB in Simulink are written in Simulink?

> This is an interesting observation, and perhaps related to the bigger notion of change that is slowly happening. But still, it has nothing to do with model-based engineering.

It has to do with how much of free space is left for using garbage 
paradigms that have no technical merits.

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

  reply	other threads:[~2019-03-05 16:09 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-25  6:51 Ada in command / control systems Jesper Quorning
2019-02-25  8:24 ` Dmitry A. Kazakov
2019-02-25  9:44   ` Jesper Quorning
2019-02-25 15:54     ` Dmitry A. Kazakov
2019-02-25 13:50   ` russ lyttle
2019-02-25 14:29     ` gautier_niouzes
2019-02-25 15:25     ` Simon Wright
2019-02-25 19:21       ` russ lyttle
2019-02-26  4:50         ` J-P. Rosen
2019-02-26 15:50           ` Simon Wright
2019-02-26 22:10             ` lyttlec
2019-02-26 22:39               ` Niklas Holsti
2019-02-26 23:09               ` Simon Wright
2019-02-27 13:22                 ` russ lyttle
2019-02-27 14:17                   ` Niklas Holsti
2019-02-27 17:49                     ` russ lyttle
2019-02-25 19:53     ` Tero Koskinen
2019-02-25 20:15       ` russ lyttle
2019-03-01 14:56     ` fabien.chouteau
2019-03-01 16:58       ` Simon Wright
2019-03-01 21:19         ` russ lyttle
2019-03-01 22:32           ` fabien.chouteau
2019-03-01 23:24             ` russ lyttle
2019-02-25 21:18   ` Jesper Quorning
2019-02-26  9:28     ` Maciej Sobczak
2019-02-26 11:01       ` Dmitry A. Kazakov
2019-02-26 21:25         ` Maciej Sobczak
2019-02-27  9:33           ` Dmitry A. Kazakov
2019-02-27 20:46             ` Maciej Sobczak
2019-02-27 21:55               ` Dmitry A. Kazakov
2019-02-28 13:12                 ` Maciej Sobczak
2019-02-28 17:43                   ` Dmitry A. Kazakov
2019-03-01  9:22                     ` Maciej Sobczak
2019-03-01 10:46                       ` Dmitry A. Kazakov
2019-03-04  7:03                         ` Maciej Sobczak
2019-03-04 14:38                           ` Dmitry A. Kazakov
2019-03-05  9:33                             ` Maciej Sobczak
2019-03-05 16:09                               ` Dmitry A. Kazakov [this message]
2019-03-06  9:05                                 ` Maciej Sobczak
2019-03-06 14:14                                   ` Dmitry A. Kazakov
2019-03-07  7:02                                     ` Maciej Sobczak
2019-03-07  9:25                                       ` Dmitry A. Kazakov
2019-03-08  7:19                                         ` Maciej Sobczak
2019-03-08 11:08                                           ` Dmitry A. Kazakov
2019-03-08 17:00                                             ` Simon Wright
2019-03-08 17:38                                               ` Dmitry A. Kazakov
2019-03-05  7:18                   ` G. B.
2019-03-05  9:28                     ` Dmitry A. Kazakov
2019-03-05  9:51                       ` Maciej Sobczak
2019-03-05 16:15                         ` Dmitry A. Kazakov
2019-03-06 22:02                           ` Randy Brukardt
2019-03-05 17:55                         ` Niklas Holsti
2019-03-05 21:06                           ` Simon Wright
2019-03-06  7:26                           ` G. B.
2019-03-06  8:22                             ` Dmitry A. Kazakov
2019-03-06 12:04                               ` Simon Wright
2019-03-07  7:35                               ` G. B.
2019-03-07  9:25                                 ` Dmitry A. Kazakov
2019-03-06  9:17                           ` Maciej Sobczak
2019-03-08 22:45                           ` russ lyttle
2019-03-09  8:16                             ` Simon Wright
2019-03-09  8:59                               ` Dmitry A. Kazakov
2019-03-09 18:47                                 ` russ lyttle
2019-03-09 20:06                                 ` G.B.
2019-03-09 20:38                                   ` Dmitry A. Kazakov
2019-03-09 18:34                               ` russ lyttle
2019-03-09 19:28                                 ` Simon Wright
2019-03-10 21:13                                   ` lyttlec
2019-03-11  8:56                                     ` Simon Wright
2019-03-11 14:27                                       ` russ lyttle
2019-03-11 17:01                                         ` Simon Wright
2019-03-11 21:55                                           ` russ lyttle
2019-03-05 11:59                       ` russ lyttle
2019-03-05 18:18                         ` Dmitry A. Kazakov
2019-03-06  2:01                           ` lyttlec
2019-03-06  8:29                             ` Dmitry A. Kazakov
2019-02-26 15:54       ` Simon Wright
2019-02-26 21:43         ` Maciej Sobczak
2019-02-26 22:45           ` Simon Wright
2019-02-27  8:41             ` Dmitry A. Kazakov
2019-02-27 20:55             ` Maciej Sobczak
2019-02-27 21:26               ` Simon Wright
2019-02-27 22:08                 ` Dmitry A. Kazakov
2019-02-27 11:04       ` Jesper Quorning
replies disabled

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