From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,763b126bf5276f4c X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news3.google.com!feeder1.cambriumusenet.nl!feed.tweaknews.nl!194.109.133.84.MISMATCH!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!feeder.news-service.com!newsfeed.straub-nv.de!newsfeed01.sul.t-online.de!t-online.de!newsfeed.arcor.de!newsspool4.arcor-online.net!news.arcor.de.POSTED!not-for-mail From: "Dmitry A. Kazakov" Subject: Re: Communications of ACM: Sir, Please Step Away from the ASR-33! Newsgroups: comp.lang.ada User-Agent: 40tude_Dialog/2.0.15.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Reply-To: mailbox@dmitry-kazakov.de Organization: cbb software GmbH References: <72b8fb96-2b5e-4ef8-8099-39361eeea853@glegroupsg2000goo.googlegroups.com> <878vzbwa61.fsf@hugsarin.sparre-andersen.dk> <8ns4v1Fk2dU1@mid.individual.net> <2vc8dxz8lc3t$.frc39a6lzjvt.dlg@40tude.net> <8ntp4kFo9qU1@mid.individual.net> <9cqhbxmdgs8x.nohduviggb5a$.dlg@40tude.net> <4d19c37f$0$7669$9b4e6d93@newsspool1.arcor-online.net> <1hd23hih9nr3v$.qzcce27pd1u1.dlg@40tude.net> <4d19e020$0$6885$9b4e6d93@newsspool2.arcor-online.net> <1sa8js3de7m9a.1u4v3u0e8fpvy$.dlg@40tude.net> <4d1a0531$0$6980$9b4e6d93@newsspool4.arcor-online.net> Date: Tue, 28 Dec 2010 17:26:21 +0100 Message-ID: <1hok68cs370tc.1lt858ruxu3m5.dlg@40tude.net> NNTP-Posting-Date: 28 Dec 2010 17:26:21 CET NNTP-Posting-Host: d4fe5d25.newsspool2.arcor-online.net X-Trace: DXC=@o On Tue, 28 Dec 2010 16:41:37 +0100, Georg Bauhaus wrote: > On 28.12.10 14:56, Dmitry A. Kazakov wrote: > >>> Is having written compilers a qualification if you are supposed >>> to write efficient accounting software? >> >> No. But you need to be both a language/compiler/GUI design expert and an >> accounting expert in order to design a graphical accounting programming >> language. The probability of this to happen is less than breaking jackpot. >> That is the reason why all these so-called domain-specific languages are so >> bad. > > OK, and since industry wants modes of expression beyond > (and in addition to) traditional programming languages, > this desire creates a substantial need beyond rhetoric. Industry wants money. Tools is a new market niche. Due to A) specialization (=> lack of expertise) B) market fragmentation (=> lack of choice), tool vendors maintain monopoly and earn money. The core idea - corner the customer. This is the economical substance of tools. > OTOH, using a notation that provides for any kind of > message sent will ipso facto express message sending > regardless of implementation (of message sending). > Using source templates controlled by a programmer, > the model can be mapped to a specific implementation > (of message sending). So simple? No multicast, unicast, acknowledges, QoS, synchronization, routing, balanced load, naming and browsing services, connection/disconnection, marshaling, peers, retries, frames and windows, state transitions. Send a message - done! Do you really believe in THIS? >> If you meant that source navigation requires a tool, yes it does. Then: >> >> 1. This tool is not used for programming, it generates no code. I have >> nothing against IDEs, ASIS, AdaControl etc. > > No, I meant that there is human readable information beyond > data and subprograms in source, things that we normally can > only infer: > aspects, relations, logical dependence. A good tool would > represent these better than the hidden implications of source > text. If the tool can, why syntax does not? Xref was great to represent gotos and labels. Remember the last time you used it in Ada? I trust in the concept of manifested imperative programming. I don't want to infer anything either by tool or by man. That suggests that the result may depend on the inference process. >> Maintenance of GNAT + GPS is zero compared to, say ASCET. > > This is maintenance of a compiler/editor/... for a given language. > I meant maintenance of Ada, the language. That is up to the compiler vendors, why should a programmer care? > We would have to > compare a formal notation like UML to a formal notation like > Ada, both by cost and by benefits. Yes, when you use UML you have to maintain both GNAT and, say, Rational Rose and plug-ins of one in another. >>> You'd need reliable translation from tool notation >>> to traditional programming language notation. >> >> What for? > > Translating from a tool notation to a traditional programming > language bridges the gap between a fairly general mode of expression > (the tool's) and a mode of expression closer to the > hardware specifics (using Ada, say). I don't buy this. Ada is higher level than UML. UML as a language is untyped, lacks abstraction, encapsulation and whatever properties decent languages have since Pascal times. That UML can generate Ada code does not make it high level. You can generate Ada code from Assembler. >> And your point was that the user is *incompetent* to write the code. > > Programmers can be competent and still not know everything > all the time. Competent programmers make mistakes, too, > even when the job at hand is nothing new. They supposedly make no mistakes when connect arrows in UML? In order to make this point, you should tell more about readability, redundancy, typing, early error detection, about the stuff UML obviously lacks. >> That >> was your idea of a tool as a substitute for competence. > > I meant tools not as a substitute, but rather as a guide. Why the compiler cannot be a guide? >>>> Tools prevent software reuse and serve insulation of >>>> developers' communities. >>> >>> If UML notation captures much of your model >> >> The model of what, and what role plays the word "if" in this sentence. > > As outlined above, a model might capture which objects collaborate > to achieve a certain effect (and no other objects are involved). Why an Ada program cannot capture this? > Some years ago, a large military had been using over 400 > programming languages. Many of the programs could have > been written using a common programming language. That was > an argument of Col. Whitaker: cost effective, technically > sound. I think this is still correct, today, and can also > be applied to most of the tools we will be able to name. Yes, now we have 800 languages and 2,000 tools. > There were exceptions, and there are exceptions, > and there will be exceptions to the rule that a common > notation can express most aspects of software systems. You can express everything by just one integer number. If that played any role we would program in binary code, which is just that number. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de