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.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,7b5615402713dcbb X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.141.225 with SMTP id rr1mr2770208pbb.2.1346137060873; Mon, 27 Aug 2012 23:57:40 -0700 (PDT) Received: by 10.68.232.230 with SMTP id tr6mr3166876pbc.16.1346137060858; Mon, 27 Aug 2012 23:57:40 -0700 (PDT) Path: a8ni39172319pbd.1!nntp.google.com!q4no8060955pbi.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Mon, 27 Aug 2012 23:57:40 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=69.20.190.126; posting-account=lJ3JNwoAAAAQfH3VV9vttJLkThaxtTfC NNTP-Posting-Host: 69.20.190.126 References: <8bfbf709-18ac-43cd-b037-ce47adde96c2@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: Ada and Java/C++ From: Shark8 Injection-Date: Tue, 28 Aug 2012 06:57:40 +0000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Date: 2012-08-27T23:57:40-07:00 List-Id: On Monday, August 27, 2012 11:35:28 PM UTC-6, kalvi...@gmail.com wrote: >=20 >=20 > My suggestion here is to introduce Ada's good virtues for C and Java prog= rammers in syntax that is familiar to most of the software engineers. You aren't listening to the replies you're getting; it's a bad idea to try = to gloss over (extend) C/Java syntax. Randy's reply is a good one in explai= ning why syntax itself matters. >=20 > 5. Ada programmers are hard to find > - For example, DoD has faced the problem of finding Ada programmers, DoD = has been force into situation that mission critical software is being imple= mented in Java Having been looking for an Ada job, and applying to lots of listings to get= lots of non-responses I'm going to call this one bullshit. (Besides, why i= s it when comparing languages the other way people always say "any programm= er can learn C/C#/PHP/Java etc?" shouldn't they also be able to learn Ada i= f that's the case?)=20 > - Java and C programmers see Ada as a complex language Well, it's complex in some issues because it can't be any simpler. (Ok, tha= t isn't strictly true; but take a good look at the rules and a lot of times= the complexity comes from addressing a non-trivial issue. Example: Tasking= .) >=20 > - Ada is perceived as military language So? If you go back a few decades the Jeep was perceived as a military vehic= le. >=20 > - Ada is perceived as a complex and heavy language Again, that's because there are non-trivial problems being addressed. And i= t could be considered 'heavy' if you're looking at all possible combination= s rather than realizing that the structured nature and orthogonality in whi= ch they are applied is very consistent (i.e. generics and compilation-units= which can be nested in other such compilation-units). >=20 > As you may see from list above, the points 1&2, and points 3-5 are contra= dicting. Could the situation be improved somehow, so that existing Java and= C programmers can adopt Ada-mindset more easily, and can the Java and C sy= ntax be fixed to allow more robust software engineering. [Warning: From here on sarcasm and hyperbole increase] Possibly; but I'm going to have to say it's not likely. Why? Because of an irksome psychological-tendency for programmers to make their = life more difficult, especially WRT debugging. (Programming's supposed to b= e hard, right? And it really shows off how clever you are when you spend ho= urs/days/weeks tracking down an obscure bug... and what's the best way to m= ake a bug obscure? Make it so the compiler accepts the widest range of poss= ible syntax-structures [which should be similar] and outputs a runnable exe= cutable: we need to increase the edit-compile-run loop!) [End Warning] That is the real reason that Ada (and Delphi and Object Pascal) isn't as po= pular as C-ish languages; the compiler is so stubborn that it complains wit= h sensible error-messages until you fix things... which leaves the programm= er with [almost] only logic-errors. And who wants to admit that they said "= not in" instead of "in", "<" instead of "<=3D" or changed the code so that = assumptions were no longer valid? That's not programming! There's just not enough debugging involved -- the d= ragons are too small! In fact, if we were really clever we'd use a language= consisting only of tabs and meaning could be inferred from context! But on a more serious note; it might be interesting to build a [basically m= ufti-lingual] compiler that could, say, take a grammar and a source and com= pile the source. {Yeah, that'd be kinda like GCC, with all it's front-ends.= } Then you could inexpensively try out different grammars until you find yo= ur Ada/C hybrid.