comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ada in command / control systems
Date: Fri, 1 Mar 2019 11:46:23 +0100
Date: 2019-03-01T11:46:23+01:00	[thread overview]
Message-ID: <q5b2hu$1m8u$1@gioia.aioe.org> (raw)
In-Reply-To: 51611452-1f49-4d8d-b93d-363cbbee29d0@googlegroups.com

On 2019-03-01 10:22, Maciej Sobczak wrote:
>> How would I pass a complex input to a block, a matrix, user credentials?
> 
> I think it has aggregate signals (or buses), even with multiple levels of nesting. That is, what looks like a single line on the screen can be an aggregate of multiple values, even other aggregates.

The problem is with the operations. You might be able to aggregate but 
not operate these aggregates as entities of the corresponding semantics.

And of course there is an even larger problem on the horizon: the code 
generator. You need to put down and numerically solve a system of 
differential equations corresponding to the diagram.

Once you let user-defined stuff in, you risk a situation when there 
would be no corresponding system of equations or no solution of the 
system. Simulink, wisely, does not attempt to resolve this. It admits 
defeat allowing so-called s-functions: a piece of code written in a 
*sane* language that implements what Simulink cannot (more or less 
everything). So much for modeling...

>> The problem is software decomposition and reuse. Simulink's is an ultra
>> low-level language, lower than assembler, IMO.
> 
> Then let's stop talking about Simulink. Since the beginning, I'm stressing that it's not Simulink vs. Ada, it's rather MBD vs. source code. That is, don't argue that MBD does not work just because Simulink does not have your pet feature.

Simulink is an example of why this does not work on larger scale. You 
can have a small subcomponent in Simulink, but all falls apart once you 
move to larger components and their interplay. My suspicion is that 
there cannot be such thing as a unified model language, in some strong 
fundamental way.

>> You mean Simulink has a better diagnostics?
> 
> You have complained that it crashed after you have hacked its files by hand. Well, I can imagine that some of its later versions might not crash after such abuse. Or that some other tool would not crash. If your argument against MBD depends on some particular tool version crashing, then it's a poor argument. I have crashed compilers, too.

Yes, but you do not start patching the object code. Assembler insertions 
are extremely rare. s-functions is a norm, you have to break out of the 
model abstraction and write a lot around it in order to make that puny 
model work.

>> They can keep on inventing more and more bizarre forms of "non-code" to
>> write, that will not make it work.
> 
> Then they will keep inventing. Compilers, libraries and frameworks are now free, which makes them kind of hobby thing. There is no business incentive to come back to source code, so companies will do their best to keep us from writing it.

There is no any business involved because the software product itself is 
"free". But there is a strong trend to end this. Companies cannot claim 
software free of any liability anymore. Even giants like Facebook and 
Amazon get charged. I don't know how the industry is going to refund 
these new liabilities. At some point they will have to and the pyramid 
will collapse.

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


  reply	other threads:[~2019-03-01 10:46 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 [this message]
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
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