* F-22 ADA Programming @ 2014-10-26 18:31 nathandsash 2014-10-26 19:02 ` Martyn Pike ` (2 more replies) 0 siblings, 3 replies; 97+ messages in thread From: nathandsash @ 2014-10-26 18:31 UTC (permalink / raw) I read a few articles on ADA programming and came across a very interesting fact: that the F-22 was/is programmed in ADA. So this raises a few questions for me: 1) What version of ADA is the F-22 programmed in? 2) What exactly were the parts of the F-22 were programmed in ADA? Were all the avionic components programmed in ADA or are there some programmed in another language like C, C++, VHDL, Verilog, etc. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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-27 4:53 ` Jerry Petrey 2 siblings, 0 replies; 97+ messages in thread From: Martyn Pike @ 2014-10-26 19:02 UTC (permalink / raw) On 26/10/2014 18:31, nathandsash@gmail.com wrote: > I read a few articles on ADA programming and came across a very interesting fact: that the F-22 was/is programmed in ADA. So this raises a few questions for me: > > 1) What version of ADA is the F-22 programmed in? > 2) What exactly were the parts of the F-22 were programmed in ADA? Were all the avionic components programmed in ADA or are there some programmed in another language like C, C++, VHDL, Verilog, etc. > > Not sure about the F22 but another good example is the Eurofighter Typhoon which I believe is 100% Ada. Martyn ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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-27 4:53 ` Jerry Petrey 2 siblings, 1 reply; 97+ messages in thread From: David Botton @ 2014-10-26 21:20 UTC (permalink / raw) see: http://archive.adaic.com/docs/reports/ajpo/transition-support/html/3.htm "The JSF-MMC Ada 95 project is using the existing F-16 Modular Mission Computer (MMC) Operational Flight Program (OFP) and F-22 Mission Software, both written in Ada 83" Having worked on some of the code there are other parts as well in Ada. Unfortunately Ada tends to be used as a scapegoat for managers sometimes for reasons things get held up etc, but here is one point valid point (also here is more info about how much of the F-22 is in Ada): http://www.freerepublic.com/focus/f-news/1110502/posts "ADA didn't work out as expected, but some 80 percent of the F-22 code is still written in ADA. Getting good ADA programmers was always a problem, as ADA never caught on outside the Department of Defense. As a result of the limited pool of programmers would could work on the F-22 software, quality and imagination (in the design of the software) suffered." ======== If Ada was in the Applications space there would be a far larger base of developers. It wouldn't produce more direct customers for the big fish compiler companies since most applications would be working on the small deals, but there would be far more jobs and far more developers willing to develop their skills in Ada or consider Ada an option of careers. I think all know my opinion as to why there has been no traction in the Application space and why it was a bad decision to not support it. However, better now than never and time to start considering what can be done to get Ada popular for Applications and General Purpose use for now even if there are no direct financial returns at the moment. David Botton ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-26 21:20 ` David Botton @ 2014-10-26 23:24 ` Jeffrey Carter 2014-10-26 23:55 ` David Botton ` (3 more replies) 0 siblings, 4 replies; 97+ messages in thread From: Jeffrey Carter @ 2014-10-26 23:24 UTC (permalink / raw) On 10/26/2014 02:20 PM, David Botton wrote: > > Unfortunately Ada tends to be used as a scapegoat for managers sometimes for > reasons things get held up etc, but here is one point valid point (also here > is more info about how much of the F-22 is in Ada): > > http://www.freerepublic.com/focus/f-news/1110502/posts > > "ADA didn't work out as expected, but some 80 percent of the F-22 code is > still written in ADA. Getting good ADA programmers was always a problem, as > ADA never caught on outside the Department of Defense. As a result of the > limited pool of programmers would could work on the F-22 software, quality > and imagination (in the design of the software) suffered." "Lack of Ada developers" is also a false complaint. Here on c.l.a we all know that there are Ada developers looking for Ada work and unable to find it. We also know that teaching Ada to a good developer is a cost-saving exercise. The real complaint is that they couldn't get people with Ada experience as cheaply as people with experience in other languages. Generally they want to hire lots of poor developers, since that maximizes profit on cost-plus contracts, and Ada people tend not to fall into that category. -- Jeff Carter "Why, the Mayflower was full of Fireflies, and a few horseflies, too. The Fireflies were on the upper deck, and the horseflies were on the Fireflies." Duck Soup 95 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-26 23:24 ` Jeffrey Carter @ 2014-10-26 23:55 ` David Botton 2014-11-14 22:54 ` rriehle 2014-10-27 0:13 ` Robert A Duff ` (2 subsequent siblings) 3 siblings, 1 reply; 97+ messages in thread From: David Botton @ 2014-10-26 23:55 UTC (permalink / raw) > "Lack of Ada developers" is also a false complaint. There are overall very few developers when you are looking for "local" developers. I am not sure there is another Ada developer in all of South Florida I could hire if I needed :) > Generally they want to hire lots of poor developers, since that maximizes profit on cost-plus contracts, and Ada people tend not to fall into that category. There is truth to this, but once they hired the handful of people we know they'd still have tons of seats to fill. Also, not every project requires someone with the skill sets many of us have, projects of a large enough size may not justify that many senior level people. David Botton ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-26 23:55 ` David Botton @ 2014-11-14 22:54 ` rriehle 2014-11-14 23:46 ` Dennis Lee Bieber 2014-11-15 21:28 ` Maciej Sobczak 0 siblings, 2 replies; 97+ messages in thread From: rriehle @ 2014-11-14 22:54 UTC (permalink / raw) On Sunday, October 26, 2014 4:55:40 PM UTC-7, David Botton wrote: > > "Lack of Ada developers" is also a false complaint. > > There are overall very few developers when you are looking for "local" developers. I am not sure there is another Ada developer in all of South Florida I could hire if I needed :) > > > Generally they want to hire lots of poor developers, since that maximizes profit on cost-plus contracts, and Ada people tend not to fall into that category. > > There is truth to this, but once they hired the handful of people we know they'd still have tons of seats to fill. > > Also, not every project requires someone with the skill sets many of us have, projects of a large enough size may not justify that many senior level people. > > David Botton I recall from when I was actively teaching Ada that one large DoD contractor (one of the largest) decided to use C++ instead of Ada. The reason? We can hire C++ programmers right out of college. This is rather strange. Why would they think that recent college graduates schooled in a clunky language such as C++, where they wrote mostly toy programs using features that we cannot allow (notice the long list of proscriptions for JSF), who need to be retaught how to use the language safely -- how can they think they are getting any benefit? I used to ask they, "Why would you choose a programming language that is inherently error-prone and expect an outcome that is error-free?" Answer: "Go away Richard. We have made our decision." Ada is not that hard to learn. Probably the most difficult thing to learn in Ada is the rules from Chapter Eight, Visibility Rules. Those rules are what make Ada unique, and make it a powerful engineering-oriented tool for building dependable software. Too often, I found, they just wanted to get code working as quickly as possible without too much thought to the dependability issues. "We can find the problems during testing," is not a good approach to engineering. Too often, when problems are discovered during testing, the design flaws need to be fixed with the equivalent of some kind of shim -- what I call a "software shim," reminiscent of putting a piece of folded napkin under a wobbly table, instead of creating a precise design from the beginning. Until we have software professionals who are also trained to think as-if they were engineers, they will not really appreciate Ada as we would hope they would. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-14 22:54 ` rriehle @ 2014-11-14 23:46 ` Dennis Lee Bieber 2014-11-15 6:43 ` wilson 2014-11-15 21:28 ` Maciej Sobczak 1 sibling, 1 reply; 97+ messages in thread From: Dennis Lee Bieber @ 2014-11-14 23:46 UTC (permalink / raw) On Fri, 14 Nov 2014 14:54:34 -0800 (PST), rriehle@itu.edu declaimed the following: >I recall from when I was actively teaching Ada that one large DoD contractor (one of the largest) decided to use C++ instead of Ada. The reason? We can hire C++ programmers right out of college. This is rather strange. Why would they think that recent college graduates schooled in a clunky language such as C++, where they wrote mostly toy programs using features that we cannot allow (notice the long list of proscriptions for JSF), who need to be retaught how to use the language safely -- how can they think they are getting any benefit? I used to ask they, "Why would you choose a programming language that is inherently error-prone and expect an outcome that is error-free?" Answer: "Go away Richard. We have made our decision." > Well... I was in a program where the "real-time" group (about 30 people, out of 130 in the department) did a study to determine what language they would use when moving from PDP-11 assembly to a suite of VAX-11 systems. I don't know what the real arguments were, but they rejected VAX-11 assembly (fine, it is a different instruction set), rejected F77 [remember those other 100 employees? we were all skilled in VAX F77]... They did reject C! (yay, one win). They chose DEC Pascal to implement the ground-base real-time system! Main argument -- they could find Pascal programmers coming out of college (dates this effort, doesn't it?) Though what a bunch of Turbo-Pascal users would be capable of on a multiprocessing OS I have no idea (I don't recall any significant hiring taking place either). The decision made when I learned of the "study" I still submitted a comment to the management emphasizing that we had a significant staff skilled in F77 with DEC extensions (I once bent the I/O system to do double-buffered 9-track tape input -- all using F77 constructs!). I also emphasized that, as long as they were going to go the mile for Pascal, they should have fallen onto their faces and picked up Ada which was designed for the type of application they were making, and corrected the flaws of Pascal. Ah well, probably the same contractor -- current initials of LM -- Wulfraed Dennis Lee Bieber AF6VN wlfraed@ix.netcom.com HTTP://wlfraed.home.netcom.com/ ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-14 23:46 ` Dennis Lee Bieber @ 2014-11-15 6:43 ` wilson 2014-11-15 17:49 ` Jeffrey Carter 0 siblings, 1 reply; 97+ messages in thread From: wilson @ 2014-11-15 6:43 UTC (permalink / raw) On Fri, 14 Nov 2014 18:46:19 -0500, Dennis Lee Bieber <wlfraed@ix.netcom.com> wrote: > On Fri, 14 Nov 2014 14:54:34 -0800 (PST), rriehle@itu.edu declaimed the > following: > >> I recall from when I was actively teaching Ada that one large DoD >> contractor (one of the largest) decided to use C++ instead of Ada. The >> reason? We can hire C++ programmers right out of college. This is >> rather strange. Why would they think that recent college graduates >> schooled in a clunky language such as C++, where they wrote mostly toy >> programs using features that we cannot allow (notice the long list of >> proscriptions for JSF), who need to be retaught how to use the language >> safely -- how can they think they are getting any benefit? I used to >> ask they, "Why would you choose a programming language that is >> inherently error-prone and expect an outcome that is error-free?" >> Answer: "Go away Richard. We have made our decision." >> > > Well... I was in a program where the "real-time" group (about 30 > people, out of 130 in the department) did a study to determine what > language they would use when moving from PDP-11 assembly to a suite of > VAX-11 systems. I don't know what the real arguments were, but they > rejected VAX-11 assembly (fine, it is a different instruction set), > rejected F77 [remember those other 100 employees? we were all skilled in > VAX F77]... They did reject C! (yay, one win). > > They chose DEC Pascal to implement the ground-base real-time system! > Main argument -- they could find Pascal programmers coming out of college > (dates this effort, doesn't it?) Though what a bunch of Turbo-Pascal > users > would be capable of on a multiprocessing OS I have no idea (I don't > recall > any significant hiring taking place either). > > The decision made when I learned of the "study" I still submitted a > comment to the management emphasizing that we had a significant staff > skilled in F77 with DEC extensions (I once bent the I/O system to do > double-buffered 9-track tape input -- all using F77 constructs!). I also > emphasized that, as long as they were going to go the mile for Pascal, > they > should have fallen onto their faces and picked up Ada which was designed > for the type of application they were making, and corrected the flaws of > Pascal. > > Ah well, probably the same contractor -- current initials of LM -- When I aaked a DOD contractor in the late 90s why they changed to C++ the answer was: We can hire C++ programmers from the local college, but they seem incapable of learning Ada. I wonder how many other languages these "programmers" could learn. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-15 6:43 ` wilson @ 2014-11-15 17:49 ` Jeffrey Carter 0 siblings, 0 replies; 97+ messages in thread From: Jeffrey Carter @ 2014-11-15 17:49 UTC (permalink / raw) Do we see a pattern here? On 11/14/2014 11:43 PM, wilson wrote: > On Fri, 14 Nov 2014 18:46:19 -0500, Dennis Lee Bieber <wlfraed@ix.netcom.com> > wrote: > >> On Fri, 14 Nov 2014 14:54:34 -0800 (PST), rriehle@itu.edu declaimed the >> following: >> >>> We can >>> hire C++ programmers right out of college. >> >> Main argument -- they could find Pascal programmers coming out of college > > We can hire C++ programmers from the local college Cheap, inexperienced > but they seem > incapable of learning Ada. and poor quality -- Jeff Carter "Gentlemen, you can't fight in here. This is the War Room!" Dr. Strangelove 30 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-14 22:54 ` rriehle 2014-11-14 23:46 ` Dennis Lee Bieber @ 2014-11-15 21:28 ` Maciej Sobczak 2014-11-16 9:57 ` Jean François Martinez 1 sibling, 1 reply; 97+ messages in thread From: Maciej Sobczak @ 2014-11-15 21:28 UTC (permalink / raw) > I recall from when I was actively teaching Ada that one large DoD contractor (one of the largest) decided to use C++ instead of Ada. The reason? We can hire C++ programmers right out of college. This is rather strange. Why would they think that recent college graduates schooled in a clunky language such as C++, where they wrote mostly toy programs using features that we cannot allow (notice the long list of proscriptions for JSF), who need to be retaught how to use the language safely -- how can they think they are getting any benefit? Good point, but to be fair you should note that it is not possible to pick fresh Ada graduates and put them right in the middle of the safety critical project, either. Do you think that JSF is long? What about "Guidance on the Use of Ada95 in the Development of High Integrity Systems" as a comparative example? Let's try: JSF: 141 pages, ~60p are actual rules Ada guide: 111 pages, ~100 seem to contain actual rules I don't claim that the above numbers are enough to justify the language choice, but certainly the picture is more complex than what you have described. I agree that fresh graduates have to be re-taught. But this also means that you need the best graduates you can find. Now, if you have a big group of C++ graduates and a very small group of Ada ones, which group is more likely (statistically) to include those best (in terms of, say, IQ or whatever other parameter) that you actually want to employ? The statistics says that you should be looking in the bigger group and the real life seems to confirm: personally, in my country I know a couple of very good C++ programmers and I know *ZERO* good Ada programmers. Now, where should I be looking for good software engineers? So, you really want to target the C++ graduates. Now, whether you will spend your (and theirs) costly time teaching them Ada or re-teaching them C++ is another question, but it is not surprising that managers expect the second option to be safer. > I used to ask they, "Why would you choose a programming language that is inherently error-prone and expect an outcome that is error-free?" Because in a safety-critical project it is not the language alone that is responsible for the error-free outcome. The whole point of re-teaching the graduates is to move out of that "inherently error-prone" zone. -- Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-15 21:28 ` Maciej Sobczak @ 2014-11-16 9:57 ` Jean François Martinez 2014-11-16 22:26 ` Maciej Sobczak 0 siblings, 1 reply; 97+ messages in thread From: Jean François Martinez @ 2014-11-16 9:57 UTC (permalink / raw) On Sat, 15 Nov 2014 13:28:57 -0800, Maciej Sobczak wrote: > Because in a safety-critical project it is not the language alone that > is responsible for the error-free outcome. The whole point of > re-teaching the graduates is to move out of that "inherently > error-prone" zone. I remind you that well-known example of a teacher who required of his students the task of programming a network of model trains. For five years no student or group students managed to produce a working solution despite the teacher doing an ever larger share of the work (over 50% in the last year). That was in C. Then he switched to Ada. First year he got 50% of working solutions. In later years he provided a tiny hardware abstraction (10% of the work) and success rate climbed to 90%. Now let's think about that in terms of probability and statistical tests. Let's take a conservative hypothesis of 5 groups per year, let's keep the 50% rate of first year in Ada ignoring the 90% of later years, let's also ignore the fact the teacher provided the C students a far larger of the job. Teacher is same using same teaching methods. University is the same one and hasn't suddenly begun attracting far brighter students. Now we for one side we have a sample of 25 (five per year for five per year) teams of students using C none of them managing to complete the project vs 25 teams of students using Ada, half of them managing to complete the job. The probability of this being just statistical being due to chance is astronomically low. Just for the fun, use the statistical tests about comparing two empirical mean. Hypothesis of equality will be blown out of the water. So it is either the ___average___ of students at that class became far better and brighter from one year to the next thus explaining the higher success rate either the language made a difference. QED And we have no reason to think it was the students that changed. --- Jean François Martinez ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 0 siblings, 1 reply; 97+ messages in thread From: Maciej Sobczak @ 2014-11-16 22:26 UTC (permalink / raw) > > Because in a safety-critical project it is not the language alone that > > is responsible for the error-free outcome. The whole point of > > re-teaching the graduates is to move out of that "inherently > > error-prone" zone. > > I remind you that well-known example of a teacher John McCormick. The example is well-known, so I happen to know it. ;-) I also happen to tell this story everywhere where I try to promote Ada. But it does not work. Why? ... > QED ... Perhaps because it says something about the language choice for the student project (short-term and completely decoupled from anything else that the student did or will do later on), but very little about the case of actual projects where all possible parameters are completely different, starting from "it was not us who started it" and finishing with "and what I will do with it after the project ends?". > And we have no reason to think it was the students that changed. Those students are now busy writing C++ or Java in the industry. Statistically, they even like it. This is exactly the point that you got spot on: the students did not change. :-( -- Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-16 22:26 ` Maciej Sobczak @ 2014-11-17 0:33 ` Jean François Martinez 0 siblings, 0 replies; 97+ messages in thread From: Jean François Martinez @ 2014-11-17 0:33 UTC (permalink / raw) On Sun, 16 Nov 2014 14:26:50 -0800, Maciej Sobczak wrote: >> > Because in a safety-critical project it is not the language alone >> > that is responsible for the error-free outcome. The whole point of >> > re-teaching the graduates is to move out of that "inherently >> > error-prone" zone. >> >> I remind you that well-known example of a teacher > > John McCormick. The example is well-known, so I happen to know it. ;-) > I never supposed you didn't know it. :) What I wanted was to bring your attention on the mathematical aspect of it: when you have two samples of size 25, one of them composed entirely of black balls and another one being 50% black balls and 50% white you can reject the hypothesis of Expected value being equal(since I don't know if English is your mathematical language http://en.wikipedia.org/wiki/Expected_value) and the difference between the empirical means being due to bad luck with the sampling So Phase2_Student + Ada is blowing out of the water Phase1_Student + C that despite the fact I "cheated" (eg discarding the 90% success rates of following years) in order to favor the C side. So since we have no reason to believe Phase2_Students are _that_ superior to the Phase_1 one, we can "simplify the equation by removing the student factor => The language made a difference. I insist this is not one student (or team) getting a better result so we could argue he is just brighter. It is a sample of at least 25 vs another sample of at least 25. And we didn't pit students at a university attracting the best of the best of the best in the world against one with average or mediocre students. It was same university getting students of roughly same quality from one year to the other. --- Jean François Martinez ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-26 23:24 ` Jeffrey Carter 2014-10-26 23:55 ` David Botton @ 2014-10-27 0:13 ` Robert A Duff 2014-10-27 0:31 ` David Botton 2014-10-27 6:28 ` Pascal Obry 2014-10-27 15:04 ` Adam Beneschan 2014-10-27 17:01 ` Pascal Obry 3 siblings, 2 replies; 97+ messages in thread From: Robert A Duff @ 2014-10-27 0:13 UTC (permalink / raw) Jeffrey Carter <spam.jrcarter.not@spam.not.acm.org> writes: > "Lack of Ada developers" is also a false complaint. Here on c.l.a we all know > that there are Ada developers looking for Ada work and unable to find it. We > also know that teaching Ada to a good developer is a cost-saving > exercise. Well said. If I'm in charge of a project to be done in ANY language, I'd rather hire competent programmers and teach them that language, rather than hire programmers who know (only) that language. Ada isn't the easiest language to learn, but it's not THAT hard. - Bob ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 15:06 ` Adam Beneschan 2014-10-27 6:28 ` Pascal Obry 1 sibling, 2 replies; 97+ messages in thread From: David Botton @ 2014-10-27 0:31 UTC (permalink / raw) > Well said. If I'm in charge of a project to be done in ANY language, > I'd rather hire competent programmers and teach them that language, > rather than hire programmers who know (only) that language. Agreed because we "understand" it is the skills to engineer not the language that makes the difference. That is not what a pointy haired manager understands. > Ada isn't the easiest language to learn, but it's not THAT hard. It is true on projects that are large scale like the F-22 is a bit ridiculous that they can't do a 2 week language boot camp for new recruits, but there is validity when dealing with small startups and projects that can't afford to train developers. David Botton ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 1 sibling, 1 reply; 97+ messages in thread From: Georg Bauhaus @ 2014-10-27 10:17 UTC (permalink / raw) On 27.10.14 01:31, David Botton wrote: >> Well said. If I'm in charge of a project to be done in ANY language, >> I'd rather hire competent programmers and teach them that language, >> rather than hire programmers who know (only) that language. > > Agreed because we "understand" it is the skills to engineer not the language that makes the difference. That is not what a pointy haired manager understands. > >> Ada isn't the easiest language to learn, but it's not THAT hard. > > It is true on projects that are large scale like the F-22 is a bit ridiculous that they can't do a 2 week language boot camp for new recruits, but there is validity when dealing with small startups and projects that can't afford to train developers. Oddly enough, the choice of languages, frameworks, and costs, is in the hands of pointy haired managers. Every single manager decides to choose what all others choose, If they don't choose Ada, he doesn't. And if everyone follows suit, no one looses. No risk, no loss, comparable results, perfect world, good decision. Except if a different choice looks like gold waiting to be taken into the first hands that grab it. This will start a new management loop if all others can follow. Ada once looked like gold because of the "mandate". Are there still one or two nuggets lying around blinking? Embedded Ada and easy, web sockets with Ada and easy, maybe? ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 10:17 ` Georg Bauhaus @ 2014-10-27 10:47 ` J-P. Rosen 0 siblings, 0 replies; 97+ messages in thread From: J-P. Rosen @ 2014-10-27 10:47 UTC (permalink / raw) Le 27/10/2014 11:17, Georg Bauhaus a écrit : > Oddly enough, the choice of languages, frameworks, and costs, > is in the hands of pointy haired managers. Every single manager > decides to choose what all others choose, If they don't choose Ada, > he doesn't. And if everyone follows suit, no one looses. > No risk, no loss, comparable results, perfect world, good decision. Yes. As the saying goes: "Noone has ever been fired for buying IBM" -- J-P. Rosen Adalog 2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX Tel: +33 1 45 29 21 52, Fax: +33 1 45 29 25 00 http://www.adalog.fr ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 0:31 ` David Botton 2014-10-27 10:17 ` Georg Bauhaus @ 2014-10-27 15:06 ` Adam Beneschan 2014-10-27 22:32 ` Randy Brukardt 1 sibling, 1 reply; 97+ messages in thread From: Adam Beneschan @ 2014-10-27 15:06 UTC (permalink / raw) On Sunday, October 26, 2014 5:31:59 PM UTC-7, David Botton wrote: > > Well said. If I'm in charge of a project to be done in ANY language, > > I'd rather hire competent programmers and teach them that language, > > rather than hire programmers who know (only) that language. > > Agreed because we "understand" it is the skills to engineer not the language that makes the difference. That is not what a pointy haired manager understands. This is one of my favorites: http://www.dawood.in/if-carpenters-were-hired-like-programmers/ -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 15:06 ` Adam Beneschan @ 2014-10-27 22:32 ` Randy Brukardt 0 siblings, 0 replies; 97+ messages in thread From: Randy Brukardt @ 2014-10-27 22:32 UTC (permalink / raw) "Adam Beneschan" <adambeneschan@gmail.com> wrote in message news:c955b286-e31f-467e-9cbe-740f54848f3e@googlegroups.com... > On Sunday, October 26, 2014 5:31:59 PM UTC-7, David Botton wrote: >> > Well said. If I'm in charge of a project to be done in ANY language, >> > I'd rather hire competent programmers and teach them that language, >> > rather than hire programmers who know (only) that language. >> >> Agreed because we "understand" it is the skills to engineer not the >> language that makes the difference. That is not what a pointy haired >> manager understands. > > This is one of my favorites: > http://www.dawood.in/if-carpenters-were-hired-like-programmers/ Thanks for making my day with that one! Randy. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 0:13 ` Robert A Duff 2014-10-27 0:31 ` David Botton @ 2014-10-27 6:28 ` Pascal Obry 1 sibling, 0 replies; 97+ messages in thread From: Pascal Obry @ 2014-10-27 6:28 UTC (permalink / raw) Le dimanche 26 octobre 2014 à 20:13 -0400, Robert A Duff a écrit : > Well said. If I'm in charge of a project to be done in ANY language, > I'd rather hire competent programmers and teach them that language, > rather than hire programmers who know (only) that language. That's what I've done for my current project. The programmer did not know Ada at all but was willing to try with an open mind and seemed good programmer to me. He got the contract and he is doing well. > Ada isn't the easiest language to learn, but it's not THAT hard. 100% Agreed. -- Pascal Obry / Magny Les Hameaux (78) The best way to travel is by means of imagination http://v2p.fr.eu.org http://www.obry.net gpg --keyserver keys.gnupg.net --recv-key F949BD3B ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-26 23:24 ` Jeffrey Carter 2014-10-26 23:55 ` David Botton 2014-10-27 0:13 ` Robert A Duff @ 2014-10-27 15:04 ` Adam Beneschan 2014-10-27 15:17 ` Björn Lundin ` (3 more replies) 2014-10-27 17:01 ` Pascal Obry 3 siblings, 4 replies; 97+ messages in thread From: Adam Beneschan @ 2014-10-27 15:04 UTC (permalink / raw) On Sunday, October 26, 2014 4:24:15 PM UTC-7, Jeffrey Carter wrote: > > > > Unfortunately Ada tends to be used as a scapegoat for managers sometimes for > > reasons things get held up etc, but here is one point valid point (also here > > is more info about how much of the F-22 is in Ada): > > > > http://www.freerepublic.com/focus/f-news/1110502/posts > > > > "ADA didn't work out as expected, but some 80 percent of the F-22 code is > > still written in ADA. Getting good ADA programmers was always a problem, as > > ADA never caught on outside the Department of Defense. As a result of the > > limited pool of programmers would could work on the F-22 software, quality > > and imagination (in the design of the software) suffered." > > "Lack of Ada developers" is also a false complaint. Here on c.l.a we all know > that there are Ada developers looking for Ada work and unable to find it. Right, but the existence of Ada developers looking for Ada work in the 2010's was not much help to managers looking for Ada developers in the 1980's, which is the time frame I think the quote was referring to. But maybe after David is done working on GNOGA, he'll be able to build a time machine using Ada, and then we can fix the problem. Anyway, I think Bob is right that it shouldn't make a difference--a competent programmer should be able to switch to a new language (or OS or platform or toolset) fairly easily. -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 15:04 ` Adam Beneschan @ 2014-10-27 15:17 ` Björn Lundin 2014-10-27 15:41 ` Maciej Sobczak ` (2 subsequent siblings) 3 siblings, 0 replies; 97+ messages in thread From: Björn Lundin @ 2014-10-27 15:17 UTC (permalink / raw) On 2014-10-27 16:04, Adam Beneschan wrote: > > Anyway, I think Bob is right that it shouldn't make a difference--a competent programmer should be able to switch to a new language (or OS or platform or toolset) fairly easily. And this shows it well <http://www.rapitasystems.com/blog/difficult-to-recruit-programmers-for-Ada-projects-myth-or-reality-part-1> -- -- Björn ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 ` (2 more replies) 2014-10-27 16:34 ` David Botton 2014-10-28 11:34 ` tonyg 3 siblings, 3 replies; 97+ messages in thread From: Maciej Sobczak @ 2014-10-27 15:41 UTC (permalink / raw) > Anyway, I think Bob is right that it shouldn't make a difference--a competent programmer should be able to switch to a new language (or OS or platform or toolset) fairly easily. Except that very few will want to. The problem is - once you are competent you are recognized as a senior or expert and this recognition has a value - both in terms of peer relations and on the job market. Why would such a person "switch" to some other language? To become a novice again? To write in his CV that instead of having (let's say) 8 years of Java experience, he has only 1 year in Ada? And what is the value of such CV if nobody is looking for Ada programmers anyway? Isn't it better to have N+1 years of Java experience instead? I have seen the "switching" argument many times (and based on merit alone, I fully agree with it), but it misses a very important factor: that of career continuity. Switching might be easy in terms of intellectual investment, but at the same time pointless from the ROI point of view, because the job market values continuous experience - that is, an expert with N years of experience is valued more than a guy who is a beginner in N technologies and apparently cannot decide on his career path. There is a reason why Scala gets popular - it allows a relatively continuous migration from Java, and many Java programmers see this as a *safe* career opportunity. Unfortunately this is what Ada does not offer. -- Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 2 siblings, 0 replies; 97+ messages in thread From: Robert A Duff @ 2014-10-27 16:01 UTC (permalink / raw) Maciej Sobczak <see.my.homepage@gmail.com> writes: > The problem is - once you are competent you are recognized as a senior > or expert and this recognition has a value - both in terms of peer > relations and on the job market. Why would such a person "switch" to > some other language? To become a novice again? To write in his CV that > instead of having (let's say) 8 years of Java experience, he has only > 1 year in Ada? And what is the value of such CV if nobody is looking > for Ada programmers anyway? Isn't it better to have N+1 years of Java > experience instead? I would hire someone with 7 years of Java experience plus 1 year of Ada experience (or 1 Java, 7 Ada), over someone with 8 years Java experience, even if the project will be done in Java. In general, I prefer to hire people who know a variety of languages. - Bob ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 2 siblings, 0 replies; 97+ messages in thread From: Adam Beneschan @ 2014-10-27 20:16 UTC (permalink / raw) On Monday, October 27, 2014 8:41:39 AM UTC-7, Maciej Sobczak wrote: > I have seen the "switching" argument many times (and based on merit alone, I fully agree with it), but it misses a very important factor: that of career continuity. Switching might be easy in terms of intellectual investment, but at the same time pointless from the ROI point of view, because the job market values continuous experience - that is, an expert with N years of experience is valued more than a guy who is a beginner in N technologies and apparently cannot decide on his career path. > Of course, if this were a saner world, working in a number of different languages wouldn't be seen as "indecisiveness about a career path" any more than it would for a contractor who switches from DeWalt to Ryobi tools, for example. But we do have to deal with the real world and the kind of managers David referred to. -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 18:29 ` Jeffrey Carter 2 siblings, 2 replies; 97+ messages in thread From: Natasha Kerensikova @ 2014-10-28 8:45 UTC (permalink / raw) On 2014-10-27, Maciej Sobczak <see.my.homepage@gmail.com> wrote: > >> Anyway, I think Bob is right that it shouldn't make a difference--a >> competent programmer should be able to switch to a new language (or >> OS or platform or toolset) fairly easily. > > Except that very few will want to. > > The problem is - once you are competent you are recognized as a senior > or expert and this recognition has a value - both in terms of peer > relations and on the job market. Why would such a person "switch" to > some other language? To become a novice again? To write in his CV that > instead of having (let's say) 8 years of Java experience, he has only > 1 year in Ada? And what is the value of such CV if nobody is looking > for Ada programmers anyway? Isn't it better to have N+1 years of Java > experience instead? And I feel the problem is even worse after the switch, but maybe I'm based by currently living through it. I switched years ago, but it isn't worth much without Ada-related job openings. And on top of that I will have to live through the frustration of using unhelpful tools and not-so-readable languages when I broaden my search (which will happen as soon as I finish accepting that said frustration is unavoidable). I wonder whether it would be easier to bear if I gave up Ada in my free time too, and bury it with all reliability wishes in some remote place of my mind. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 8:45 ` Natasha Kerensikova @ 2014-10-28 11:58 ` Bill White 2014-10-28 14:56 ` Adam Beneschan 2014-10-28 18:29 ` Jeffrey Carter 1 sibling, 1 reply; 97+ messages in thread From: Bill White @ 2014-10-28 11:58 UTC (permalink / raw) On 2014-10-28, Natasha Kerensikova <lithiumcat@instinctive.eu> wrote: > On 2014-10-27, Maciej Sobczak <see.my.homepage@gmail.com> wrote: >> >>> Anyway, I think Bob is right that it shouldn't make a difference--a >>> competent programmer should be able to switch to a new language (or >>> OS or platform or toolset) fairly easily. That's ok for people with no purpose other than to make money. Good programmers, the ones you want working for you and with you, usually love and hate languages for good reasons. Most of the mainstream languages are worth hating for very good reasons. Like Natasha sortof said there is a lot of angst prostituting yourself as a code monkey if you're a really talented and passionate developer. Many people like to kid themselves and point out how they can learn new languages and technologies all the time and they happily bounce from job to job coding web or iPhone apps. But those people are either lying to themselves in that they don't really ever learn anything and become cut and paste junkies or they are more focused on business or how many apps they have worked on or other issues and coding is just a way to accomplish that. OTOH if coding is the journey and coding is the destination and if you really love what you do and believe in it you're likely to be much better in almost every aspect of your job then somebody who just goes with the flow. But there aren't a lot of jobs where somebody like that can thrive. As somebody who has spent almost 40 years coding in one mostly one language on mostly one platform I can identify with people who love this or that language or tech and can't find a job anymore for reasons that aren't technical or even good business reasons. I'd rather change jobs than code on another language or platform but I'm too old for anybody to hire me. It's a bitter feeling when good is defined by cheap and stuff like quality and performance don't matter anymore. Because I remember when they did. Be glad if you're young enough to change now so you don't get unvoluntarily retired when you're past the point of old dogs learning new tricks as far as they know. >> The problem is - once you are competent you are recognized as a senior >> or expert and this recognition has a value - both in terms of peer >> relations and on the job market. Why would such a person "switch" to >> some other language? To become a novice again? To write in his CV that >> instead of having (let's say) 8 years of Java experience, he has only >> 1 year in Ada? And what is the value of such CV if nobody is looking >> for Ada programmers anyway? Isn't it better to have N+1 years of Java >> experience instead? Yes, it is. Reality is often not pretty. > And I feel the problem is even worse after the switch, but maybe I'm > based by currently living through it. > > I switched years ago, but it isn't worth much without Ada-related job > openings. And on top of that I will have to live through the frustration > of using unhelpful tools and not-so-readable languages when I broaden my > search (which will happen as soon as I finish accepting that said > frustration is unavoidable). > > I wonder whether it would be easier to bear if I gave up Ada in my free > time too, and bury it with all reliability wishes in some remote place > of my mind. I think Ada is a poorer than average choice for a hobby language (and I don't use the word hobby lightly but only in the lack of vocabulary) since you're stuck with essentially one toolchain regardless that it happens to be a very good one. But there isn't any reason if you love Ada not to keep using it for your own projects. If nothing else, you'll stay sharp and notice things that will help you and your coworkers that people working with inferior and unsafe languages would probably miss. And you may even be able to wrapper safety valves around unsafe code in those languages that will stop problems from happening before they ever start. The only thing is nobody will have any idea what you did and they won't understand why you "wasted" time doing that. But at least you'll be able to sleep at night. Bill ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 11:58 ` Bill White @ 2014-10-28 14:56 ` Adam Beneschan 2014-10-28 19:36 ` Bill White 0 siblings, 1 reply; 97+ messages in thread From: Adam Beneschan @ 2014-10-28 14:56 UTC (permalink / raw) On Tuesday, October 28, 2014 4:58:56 AM UTC-7, Bill White wrote: > >>> Anyway, I think Bob is right that it shouldn't make a difference--a > >>> competent programmer should be able to switch to a new language (or > >>> OS or platform or toolset) fairly easily. > > That's ok for people with no purpose other than to make money. Good > programmers, the ones you want working for you and with you, usually love > and hate languages for good reasons. Beg to differ--**strongly**. I think I'm a good programmer. And while every language has its annoyances and some are more annoying than others, the things I love about programming--the problem-solving and creative aspects, among other things--don't have to do with one or another particular language. (I recently completed a personal project, no money involved, in my least-favorite language, PHP, and still enjoyed working on it despite all the things I don't like about that language. I chose PHP because I knew it would work on that particular platform and I didn't know what else would work.) I would hope that programmers who love the art of programming more than they love working in a particular language are the majority, not the minority. Please do not denigrate us as having "no purpose other than to make money." Thank you. > Many people > like to kid themselves and point out how they can learn new languages and > technologies all the time and they happily bounce from job to job coding web > or iPhone apps. > But those people are either lying to themselves in that they don't really > ever learn anything and become cut and paste junkies or they are more > focused on business or how many apps they have worked on or other issues and > coding is just a way to accomplish that. I believe you are way, way off base here, although I'm sure there are some such programmers who are kidding themselves. -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 14:56 ` Adam Beneschan @ 2014-10-28 19:36 ` Bill White 0 siblings, 0 replies; 97+ messages in thread From: Bill White @ 2014-10-28 19:36 UTC (permalink / raw) On 2014-10-28, Adam Beneschan <adambeneschan@gmail.com> wrote: > On Tuesday, October 28, 2014 4:58:56 AM UTC-7, Bill White wrote: > >> >>> Anyway, I think Bob is right that it shouldn't make a difference--a >> >>> competent programmer should be able to switch to a new language (or >> >>> OS or platform or toolset) fairly easily. >> >> That's ok for people with no purpose other than to make money. Good >> programmers, the ones you want working for you and with you, usually love >> and hate languages for good reasons. I had to reformat your post to get aioe to accept it. You're posting from google, right? How about formatting the text for usenet rather than web? Sane line lengths would help. > > Beg to differ--**strongly**. I think I'm a good programmer. And while every > language has its annoyances and some are more annoying than others, the > things I love about programming--the problem-solving and creative aspects > , among other things--don't have to do with one or another particular language. > (I recently completed a personal project, no money involved, in my > least-favorite language, PHP, and still enjoyed working on it despite all the > things I don't like about that language. I chose PHP because I knew it would > work on that particular platform and I didn't know what else would work.) > I don't know you and I have no intention of offending you and I'm not sure why you should care what I think. Actually I don't see where you are replying to any particular point I made but perhaps extrapolating unnecessarily and tangentially. Likely we have a different view of what being a good programmer means. Your comments about a recent project are exactly what I'm talking about. There is a very big difference between people for whom programming is just one of many tools to get a job done and people for whom programming itself is what's important. The former utilitarians are not much concerned with finding the best language or system becauses they are practical and more results oriented. The latter craftsmen focus on tools because the programming is what they value and the results are not the essence although good results are a natural result of doing things correctly with a refusal to cut corners or take shortcuts for the sake of booting something out the door. This divide is found in most things, not just programming and it's ok. I don't want any of the practical types around because I'm not interested in those kinds of compromises. Mostly in all my life I've been able to avoid those situations. The one time I couldn't I quit rather than do things contrary to the way they should be done. I have to love my tools. I'm the same way with mechanical work. I won't use lousy tools under any circumstances. To me the way the work is done is more important than other considerations. In my experience it turns out doing things correctly using the best tools possible always produces the best result so it's hard to say where this doesn't work. And I don't find it's more expensive, just the opposite. Sanitary design and coding is far cheaper in the long run. It's the classic measure twice cut once. Could you get "acceptable" results with substandard tools? It happens every day. But I don't work in that world. I don't have a utilitarian bone in my body. I'll happily go without something I can't implement the way it should be done although in my work this doesn't happen. For my own projects I don't use second-rate tools or languages _even_ if it means not having this or that feature. > I would hope that programmers who love the art of programming more than they love working in a particular language are the majority, not the minority. > Please do not denigrate us as having "no purpose other than to make money." Thank you. I don't see any conflict between what I wrote and what you wrote. If anything what you wrote seems to be in agreement with what I wrote. I said and you quoted further on "or they are more focused on business or how many apps they have worked on or other issues and coding is just a way to accomplish that." Did I misunderstand you or are you violently agreeing with me? >> Many people >> like to kid themselves and point out how they can learn new languages and >> technologies all the time and they happily bounce from job to job coding web >> or iPhone apps. > >> But those people are either lying to themselves in that they don't really >> ever learn anything and become cut and paste junkies or they are more >> focused on business or how many apps they have worked on or other issues and >> coding is just a way to accomplish that. Perhaps I should have broken that up into a few statements. There is a value judgement there but that's the whole point of this thread. > I believe you are way, way off base here, although I'm sure there are some such programmers who are kidding themselves. I don't know how you can possibly say that. In my experience 90% or more of the programmers and coders I have come across either by working with them or having to work on their code are not qualified to work in the business at all. Most people employed to write code are incapable of writing a complete program without cutting and pasting, and certainly not an entire system from scratch in any language on any platform. But that level of incompetence is probably not limited to programming. If you take a hard look it appears that most of the people in most jobs don't do them very well. Bill ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 8:45 ` Natasha Kerensikova 2014-10-28 11:58 ` Bill White @ 2014-10-28 18:29 ` Jeffrey Carter 2014-10-28 18:37 ` Adam Beneschan 2014-10-28 19:18 ` Simon Clubley 1 sibling, 2 replies; 97+ messages in thread From: Jeffrey Carter @ 2014-10-28 18:29 UTC (permalink / raw) On 10/28/2014 01:45 AM, Natasha Kerensikova wrote: > > I switched years ago, but it isn't worth much without Ada-related job > openings. And on top of that I will have to live through the frustration > of using unhelpful tools and not-so-readable languages when I broaden my > search (which will happen as soon as I finish accepting that said > frustration is unavoidable). The Software-Engineering Code of Ethics (from the ACM/IEEE-CS) says (in part) "Software engineers shall ensure that their products and related modifications meet the highest professional standards possible." Using error-prone, poorly designed languages would seem to violate this. Anyone who would do work in such a language must, therefore, either not be a S/W engineer, be an unethical S/W engineer, or think that producing substandard S/W is ethical practice. -- Jeff Carter "My mind is a raging torrent, flooded with rivulets of thought, cascading into a waterfall of creative alternatives." Blazing Saddles 89 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 19:18 ` Simon Clubley 1 sibling, 2 replies; 97+ messages in thread From: Adam Beneschan @ 2014-10-28 18:37 UTC (permalink / raw) On Tuesday, October 28, 2014 11:29:26 AM UTC-7, Jeffrey Carter wrote: > On 10/28/2014 01:45 AM, Natasha Kerensikova wrote: > > > > I switched years ago, but it isn't worth much without Ada-related job > > openings. And on top of that I will have to live through the frustration > > of using unhelpful tools and not-so-readable languages when I broaden my > > search (which will happen as soon as I finish accepting that said > > frustration is unavoidable). > > The Software-Engineering Code of Ethics (from the ACM/IEEE-CS) says (in part) > > "Software engineers shall ensure that their products and related modifications > meet the highest professional standards possible." > > Using error-prone, poorly designed languages would seem to violate this. Anyone > who would do work in such a language must, therefore, either not be a S/W > engineer, be an unethical S/W engineer, or think that producing substandard S/W > is ethical practice. I'm sorry, but this is one of the most ridiculous things I've ever seen posted in this newsgroup. -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 18:37 ` Adam Beneschan @ 2014-10-28 19:14 ` David Botton 2014-10-28 21:06 ` Jeffrey Carter 1 sibling, 0 replies; 97+ messages in thread From: David Botton @ 2014-10-28 19:14 UTC (permalink / raw) > I'm sorry, but this is one of the most ridiculous things I've ever seen posted in this newsgroup. No I think the time machine thing was :) While I am sure Jeff was exaggerating and being a bit humorous, using low quality tools or shoddy materials in any trade is a sign of a poor engineer. David Botton ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 ` (2 more replies) 1 sibling, 3 replies; 97+ messages in thread From: Jeffrey Carter @ 2014-10-28 21:06 UTC (permalink / raw) On 10/28/2014 11:37 AM, Adam Beneschan wrote: > > I'm sorry, but this is one of the most ridiculous things I've ever seen posted in this newsgroup. Thanks! I think Botton may be right about the time machine, though. I was mainly playing devil's advocate, but there are ethical issues in language choice. And Simon Clubley wrote: > I am currently learning how to write a small extension for Android > Firefox because the Android version of Firefox doesn't support the > extension I use on the desktop version of Firefox. > > Should I not implement this extension (and hence do without it's > functionality) simply because I can't implement it in Ada ? Denying one's own comfort or convenience for the greater good is generally the essence of ethical problems. As such, rather than use an error- and security-vulnerability-filled browser, you should deny yourself the functionality while you write a better browser in Ada and give it away. The ethics of taking a job using a lousy language vs suffering unemployment may not be significant. It's certainly not on a par with collaborating with Nazis and remaining alive vs certain death. But what about when the S/W is to provide secure network communications or to control a self-driving car? Then those who choose to use the lousy language are at least partly responsible for the billions in financial consequences of a security vulnerability, or the deaths due to a S/W error. The ethical significance of the choice seems much greater. -- Jeff Carter "My mind is a raging torrent, flooded with rivulets of thought, cascading into a waterfall of creative alternatives." Blazing Saddles 89 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 21:06 ` Jeffrey Carter @ 2014-10-28 21:32 ` Simon Clubley 2014-10-28 21:37 ` Adam Beneschan 2014-11-08 4:45 ` Randy Brukardt 2 siblings, 0 replies; 97+ messages in thread From: Simon Clubley @ 2014-10-28 21:32 UTC (permalink / raw) On 2014-10-28, Jeffrey Carter <spam.jrcarter.not@spam.not.acm.org> wrote: > And Simon Clubley wrote: > >> I am currently learning how to write a small extension for Android >> Firefox because the Android version of Firefox doesn't support the >> extension I use on the desktop version of Firefox. >> >> Should I not implement this extension (and hence do without it's >> functionality) simply because I can't implement it in Ada ? > > Denying one's own comfort or convenience for the greater good is generally the > essence of ethical problems. As such, rather than use an error- and > security-vulnerability-filled browser, you should deny yourself the > functionality while you write a better browser in Ada and give it away. > with Good_Natured_Response; use Good_Natured_Response; Sometimes you make a religious fanatic sound like a bleeding heart liberal by comparison. :-) Simon. (European liberal, so I know of what I speak. :-)) -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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-11-08 4:45 ` Randy Brukardt 2 siblings, 1 reply; 97+ messages in thread From: Adam Beneschan @ 2014-10-28 21:37 UTC (permalink / raw) On Tuesday, October 28, 2014 2:06:23 PM UTC-7, Jeffrey Carter wrote: > On 10/28/2014 11:37 AM, Adam Beneschan wrote: > > > > I'm sorry, but this is one of the most ridiculous things I've ever seen posted in this newsgroup. > > Thanks! I think Botton may be right about the time machine, though. I was mainly > playing devil's advocate, but there are ethical issues in language choice. I apologize--I may have taken you too literally. > The ethics of taking a job using a lousy language vs suffering unemployment may > not be significant. It's certainly not on a par with collaborating with Nazis > and remaining alive vs certain death. > > But what about when the S/W is to provide secure network communications or to > control a self-driving car? Then those who choose to use the lousy language are > at least partly responsible for the billions in financial consequences of a > security vulnerability, or the deaths due to a S/W error. The ethical > significance of the choice seems much greater. I don't know--I see it differently. Consider this situation: You're an expert programmer skilled at both Ada and C++. You have been offered a position working on the software for a self-driving car. The code will be in C++. You will not be in charge of the project and will not have the power to change the language decision. Which is more ethical: (1) Turn down the job; (2) Accept the position, and plan to use the skills you possess in writing safe, secure code, to influence the rest of the team to adopt coding (and testing) practices that result in code that's as reliable as anything written in Ada would be. If the team would be writing sketchy code without your presence, would it really be more ethical to turn down the job, let them foist unsafe cars on the market, and then say "Well, they've caused six deaths, but hey, my hands are clean because I had nothing to do with that project"?? I'm not so sure. (And if anyone believes #2 is impossible, because the C++ language somehow emits unsafeness waves that travel through the air and into your monitor and turn all your carefully-written safe code into unsafe code ... OK, I'm being silly, but that just isn't correct. That's one of the reasons I reacted so strongly to Jeff's earlier post, because it seemed to equate using an unsafe language to writing unsafe code, which of course is wrong. You can write safe code in any language. It may take a little more work in some languages; but if you're aware of the need to write safe code, and are disciplined, it can be done. And if you're not, Ada isn't going to help.) -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 21:37 ` Adam Beneschan @ 2014-10-28 23:59 ` Jeffrey Carter 2014-10-29 0:34 ` Adam Beneschan 0 siblings, 1 reply; 97+ messages in thread From: Jeffrey Carter @ 2014-10-28 23:59 UTC (permalink / raw) On 10/28/2014 02:37 PM, Adam Beneschan wrote: > > (2) Accept the position, and plan to use the skills you possess in writing > safe, secure code, to influence the rest of the team to adopt coding (and > testing) practices that result in code that's as reliable as anything > written in Ada would be. > > (And if anyone believes #2 is impossible, because the C++ language somehow > emits unsafeness waves that travel through the air and into your monitor and > turn all your carefully-written safe code into unsafe code ... OK, I'm being > silly, but that just isn't correct. That's one of the reasons I reacted so > strongly to Jeff's earlier post, because it seemed to equate using an unsafe > language to writing unsafe code, which of course is wrong. You can write > safe code in any language. It may take a little more work in some languages; > but if you're aware of the need to write safe code, and are disciplined, it > can be done. And if you're not, Ada isn't going to help.) I don't think #2 is impossible, just unlikely, given the kind of people who like C++. You're more likely to be ostracized by your fellow coders for writing "inefficient code", labeled "not a team player" by manglement, and fired. I'm not sure about the "any language", either. We have decades of experience that show that humans cannot write critical networking S/W safely in C. I would say that some people can write safe code in (almost) any language, and most people will write unsafe code in any language. -- Jeff Carter "My mind is a raging torrent, flooded with rivulets of thought, cascading into a waterfall of creative alternatives." Blazing Saddles 89 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 23:59 ` Jeffrey Carter @ 2014-10-29 0:34 ` Adam Beneschan 2014-10-29 5:24 ` Jeffrey Carter 0 siblings, 1 reply; 97+ messages in thread From: Adam Beneschan @ 2014-10-29 0:34 UTC (permalink / raw) On Tuesday, October 28, 2014 4:59:32 PM UTC-7, Jeffrey Carter wrote: > > (And if anyone believes #2 is impossible, because the C++ language somehow > > emits unsafeness waves that travel through the air and into your monitor and > > turn all your carefully-written safe code into unsafe code ... OK, I'm being > > silly, but that just isn't correct. That's one of the reasons I reacted so > > strongly to Jeff's earlier post, because it seemed to equate using an unsafe > > language to writing unsafe code, which of course is wrong. You can write > > safe code in any language. It may take a little more work in some languages; > > but if you're aware of the need to write safe code, and are disciplined, it > > can be done. And if you're not, Ada isn't going to help.) > > I don't think #2 is impossible, just unlikely, given the kind of people who like > C++. You're more likely to be ostracized by your fellow coders for writing > "inefficient code", labeled "not a team player" by manglement, and fired. By "impossible" I was referring to the possibility of writing safe code in C++, not the possibility of convincing your fellow programmers to actually try to do so. My wording was unclear. But even so, let's say you're right about what would happen--are you still going to argue that taking the job in the first place would be a less ethical choice, as you seemed to be arguing earlier? -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-29 0:34 ` Adam Beneschan @ 2014-10-29 5:24 ` Jeffrey Carter 2014-10-29 8:37 ` Dmitry A. Kazakov 0 siblings, 1 reply; 97+ messages in thread From: Jeffrey Carter @ 2014-10-29 5:24 UTC (permalink / raw) On 10/28/2014 05:34 PM, Adam Beneschan wrote: > > By "impossible" I was referring to the possibility of writing safe code in > C++, not the possibility of convincing your fellow programmers to actually > try to do so. My wording was unclear. But even so, let's say you're right > about what would happen--are you still going to argue that taking the job in > the first place would be a less ethical choice, as you seemed to be arguing > earlier? Good question. Writing S/W that kills is clearly unethical, even if due to incompetence. Where does writing part of the S/W that kills fall? It's even possible, if our S/W engineer did a good job on the part of the S/W he worked on, that this allowed the project to complete where it would have failed otherwise. A liability lawsuit that went after the S/W developers would undoubtedly consider him equally responsible. This stuff isn't simple. I hoped to spark some discussion on the ethical aspects of language choice. I hope more people will want to comment. -- Jeff Carter "My mind is a raging torrent, flooded with rivulets of thought, cascading into a waterfall of creative alternatives." Blazing Saddles 89 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-29 5:24 ` Jeffrey Carter @ 2014-10-29 8:37 ` Dmitry A. Kazakov 2014-10-29 17:20 ` Jeffrey Carter 0 siblings, 1 reply; 97+ messages in thread From: Dmitry A. Kazakov @ 2014-10-29 8:37 UTC (permalink / raw) On Tue, 28 Oct 2014 22:24:31 -0700, Jeffrey Carter wrote: > This stuff isn't simple. I hoped to spark some discussion on the ethical aspects > of language choice. I hope more people will want to comment. I think that the flaw in your reasoning is that engineering cannot be ethical or unethical. It is a methodology of organizing human and physical resources in order to achieve certain goals, just a tool. What if I say that making programmers responsible for language choices made by *others* directly (by [mis-]management) and indirectly (through crippled software developing market) is unethical too? -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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-30 15:38 ` Maciej Sobczak 0 siblings, 2 replies; 97+ messages in thread From: Jeffrey Carter @ 2014-10-29 17:20 UTC (permalink / raw) On 10/29/2014 01:37 AM, Dmitry A. Kazakov wrote: > > What if I say that making programmers responsible for language choices made > by *others* directly (by [mis-]management) and indirectly (through crippled > software developing market) is unethical too? Surely if the language is chosen by management, they share in the responsibility for its effect. A developer who agrees to work on the project using the poor language has made a decision to do so, and is clearly responsible for that decision. -- Jeff Carter "This school was here before you came, and it'll be here before you go." Horse Feathers 48 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 15:38 ` Maciej Sobczak 1 sibling, 2 replies; 97+ messages in thread From: Dmitry A. Kazakov @ 2014-10-29 20:43 UTC (permalink / raw) On Wed, 29 Oct 2014 10:20:12 -0700, Jeffrey Carter wrote: > On 10/29/2014 01:37 AM, Dmitry A. Kazakov wrote: >> >> What if I say that making programmers responsible for language choices made >> by *others* directly (by [mis-]management) and indirectly (through crippled >> software developing market) is unethical too? > > Surely if the language is chosen by management, they share in the responsibility > for its effect. A developer who agrees to work on the project using the poor > language has made a decision to do so, and is clearly responsible for that decision. No taxation without representation. The blame is put squarely on those who make these decisions. Refusing to work is an extraordinary measure outside normal developing process to be used only in the cases of clearly criminal orders. IMO it is more unethical than using an inferior language. E.g. if programmers refused to work on a new aircraft there would be none and the country could become defenseless. Remember how Ada was snubbed because used by DoD? Was that ethical? -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-29 20:43 ` Dmitry A. Kazakov @ 2014-10-29 20:55 ` Jeffrey Carter 2014-10-29 21:40 ` Georg Bauhaus 1 sibling, 0 replies; 97+ messages in thread From: Jeffrey Carter @ 2014-10-29 20:55 UTC (permalink / raw) On 10/29/2014 01:43 PM, Dmitry A. Kazakov wrote: > > No taxation without representation. The blame is put squarely on those who > make these decisions. Refusing to work is an extraordinary measure outside > normal developing process to be used only in the cases of clearly criminal > orders. IMO it is more unethical than using an inferior language. E.g. if > programmers refused to work on a new aircraft there would be none and the > country could become defenseless. Remember how Ada was snubbed because used > by DoD? Was that ethical? It appears we disagree, then. If no one would work on a new aircraft unless it was done in Ada, then I suspect it would be done in Ada. That seems like a desirable outcome to me. -- Jeff Carter "This school was here before you came, and it'll be here before you go." Horse Feathers 48 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 1 sibling, 1 reply; 97+ messages in thread From: Georg Bauhaus @ 2014-10-29 21:40 UTC (permalink / raw) On 29.10.14 21:43, Dmitry A. Kazakov wrote: > E.g. if > programmers refused to work on a new aircraft there would be none and the > country could become defenseless. There is a premiss not mentioned in this, which if mentioned, would depict Mahatma Gandhi as an amoral person. The premiss is that a people, in order to be free, needs staffed and unstaffed flying weapons, or, generalizing, people all need to carry and use guns, knives, pepper spray, tasers, etc.) Considering northern Mesopotamia, many agree at this time, even outside the USA, but aircraft does not seem to be the most effective defense right now. Considering India, many once disagreed. Is there a single conclusion to be drawn? The subject, if it is "do the right thing using the right tool", is akin to that of http://en.wikipedia.org/wiki/The_Rider_on_the_White_Horse ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-29 21:40 ` Georg Bauhaus @ 2014-10-30 8:56 ` Dmitry A. Kazakov 2014-11-08 4:52 ` Randy Brukardt 0 siblings, 1 reply; 97+ messages in thread From: Dmitry A. Kazakov @ 2014-10-30 8:56 UTC (permalink / raw) On Wed, 29 Oct 2014 22:40:58 +0100, Georg Bauhaus wrote: > On 29.10.14 21:43, Dmitry A. Kazakov wrote: >> E.g. if >> programmers refused to work on a new aircraft there would be none and the >> country could become defenseless. > > There is a premiss not mentioned in this, which if mentioned, > would depict Mahatma Gandhi as an amoral person. He possibly was. But I wrote about evidently criminal orders, which justify actions like public disobedience. Using C++ is not criminal, not even amoral. It is only stupid. Stupidity is not a crime. The hidden point was that the theory of small deeds is all wrong. You cannot rely on humans acting morally, e.g. choosing Ada being under economical, social and other pressures to choose C++. It would not work. And it is not engineering, which in essence is about making things *less* dependent on human decisions, in particular, putting moral out of the equation. > The premiss > is that a people, in order to be free, needs staffed and > unstaffed flying weapons, or, generalizing, people all need to > carry and use guns, knives, pepper spray, tasers, etc.) Maybe true, but this is a difficult question of balance. > Considering northern Mesopotamia, many agree at this time, > even outside the USA, but aircraft does not seem to be the > most effective defense right now. Actually it is. The problem is how the weapon applied. There are constraints put by politicians which prevent its effective usage, or sometimes any meaningful usage. Military under democracy is meant to be ineffective, beginning with Athens expedition to Syracuse and on... > Considering India, many once disagreed. > Is there a single conclusion to be drawn? Considering what followed, split of the country, religious war, millions of dead and refugees, the conflict that keeps on going for a half of century, maybe India would be better off without this... -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-30 8:56 ` Dmitry A. Kazakov @ 2014-11-08 4:52 ` Randy Brukardt 2014-11-08 8:12 ` Dmitry A. Kazakov 0 siblings, 1 reply; 97+ messages in thread From: Randy Brukardt @ 2014-11-08 4:52 UTC (permalink / raw) "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message news:1i3ybg2vfpww7$.blbdxnclootv$.dlg@40tude.net... ... > He possibly was. But I wrote about evidently criminal orders, which > justify > actions like public disobedience. Using C++ is not criminal, not even > amoral. It is only stupid. Stupidity is not a crime. But why not? Why do we tolerate stupidity? It's the root of much of our (humanities') trouble... Randy. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-08 4:52 ` Randy Brukardt @ 2014-11-08 8:12 ` Dmitry A. Kazakov 0 siblings, 0 replies; 97+ messages in thread From: Dmitry A. Kazakov @ 2014-11-08 8:12 UTC (permalink / raw) On Fri, 7 Nov 2014 22:52:30 -0600, Randy Brukardt wrote: > "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message > news:1i3ybg2vfpww7$.blbdxnclootv$.dlg@40tude.net... > ... >> He possibly was. But I wrote about evidently criminal orders, which >> justify >> actions like public disobedience. Using C++ is not criminal, not even >> amoral. It is only stupid. Stupidity is not a crime. > > But why not? Why do we tolerate stupidity? It's the root of much of our > (humanities') trouble... Per definition. Stupidity and criminality are merely definitions of what the society [presently] consider criminal and/or stupid. Criminal things are fought by prosecution. Stupidity is rather lovingly fostered among electorate, watchers, listeners, buyers etc... (:-)) But seriously, as history had shown many times, it is readiness not to tolerate which brings us real, fat troubles. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-29 17:20 ` Jeffrey Carter 2014-10-29 20:43 ` Dmitry A. Kazakov @ 2014-10-30 15:38 ` Maciej Sobczak 2014-10-30 15:49 ` Alan Jump ` (2 more replies) 1 sibling, 3 replies; 97+ messages in thread From: Maciej Sobczak @ 2014-10-30 15:38 UTC (permalink / raw) > Surely if the language is chosen by management, they share in the responsibility > for its effect. A developer who agrees to work on the project using the poor > language has made a decision to do so, and is clearly responsible for that decision. Sorry, I got lost in this. I mean - in the taking responsibility part. Does it mean that if we choose Ada and then shit happens, are we cleared from responsibility, because the choice was good? The difference between Ada and C++ is not that in Ada there will be no bugs and in C++ there will be only bugs. At best, the language choice will have some influence on the probability and economy of failure. So, let's say (just for the sake of discussion, with no regard to how ridiculous it got already) that with C++ the probability of project failure is 30% and with Ada the probability of project failure is 20%. I don't care if these numbers reflect reality. a) And I choose C++. And then shit happens. Am I responsible? To what extent? b) And I choose Ada. And then shit happens. Am I responsible? To what extent? Are you ready to throw some numbers or can we agree that the discussion went out of control and the whole responsibility argument is just nonsense? On the other hand, I can imagine a world where programmers are covered by civil responsibility insurance (just like in many other industries) and insurance companies will offer insurance discounts to better programmers (just as they do to people with good car driving history or with no smoking habits, etc.). And then, it will be in the interest of programmers to stick to technologies that allow them pay less for insurance (ultimately, programmers that stick to good technologies will be also cheaper to hire, as their insurance will be levied on employers anyway). So, when the manager says "this project will be written in C++", the programmer will answer "this will cost me/you more in insurance, better switch to Ada" and then the manager will go back to his Excel to rethink his choices. Insurance companies would then make sure that primes are periodically reviewed and reflect the actual industry failure rates, which will allow good technologies to bubble up and shitware sink down. Would that work? I was elaborating on this idea several times and it makes sense to me, as it puts money into the equation just as it already does in many other parts of our life. If my insurance company cares about me doing proper technical service of my car, it might as well guide me in the choice of my programming language, there is really little difference here. But until this (or something equivalent) happens, please don't argue that the programmer is responsible for his language choices, as such argument has no tangible (and countable) foundations. It's just hand-waving. -- Maciej Sobczak * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 16:07 ` Bill White 2014-10-31 13:24 ` Jacob Sparre Andersen 2 siblings, 1 reply; 97+ messages in thread From: Alan Jump @ 2014-10-30 15:49 UTC (permalink / raw) On Thursday, October 30, 2014 8:38:45 AM UTC-7, Maciej Sobczak wrote: > The difference between Ada and C++ is not that in Ada there will be no bugs and in C++ there will be only bugs. At best, the language choice will have some influence on the probability and economy of failure. So, let's say (just for the sake of discussion, with no regard to how ridiculous it got already) that with C++ the probability of project failure is 30% and with Ada the probability of project failure is 20%. I don't care if these numbers reflect reality. > > a) And I choose C++. And then shit happens. Am I responsible? To what extent? > > b) And I choose Ada. And then shit happens. Am I responsible? To what extent? > > Are you ready to throw some numbers or can we agree that the discussion went out of control and the whole responsibility argument is just nonsense? As a neophyte student of Ada, I'm quickly learning that Ada really does exactly one thing well: it saves the programmer from committing some simple coding errors that would go undetected until runtime under C++. With that said, no language, no matter how carefully crafted or how thoroughly validated or formally proven, can save a developer from a poorly-defined design question, nor the subsequent poorly-designed solution to that problem. If I am presented with a project, "write an application that does this and that", and I don't do the proper analysis of that project to determine precisely what's needed, it won't matter if I write the application in Ada, C++, Python, or Z/80 assembler...it WILL FAIL, because I didn't properly or adequately define the problem the application is intended to solve. Just my 2p worth. Save up the change for a root beer or something. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-30 15:49 ` Alan Jump @ 2014-10-30 22:33 ` Dennis Lee Bieber 2014-10-30 23:13 ` Jeffrey Carter 0 siblings, 1 reply; 97+ messages in thread From: Dennis Lee Bieber @ 2014-10-30 22:33 UTC (permalink / raw) On Thu, 30 Oct 2014 08:49:16 -0700 (PDT), Alan Jump <alan.jump@gmail.com> declaimed the following: >With that said, no language, no matter how carefully crafted or how thoroughly validated or formally proven, can save a developer from a poorly-defined design question, nor the subsequent poorly-designed solution to that problem. If I am presented with a project, "write an application that does this and that", and I don't do the proper analysis of that project to determine precisely what's needed, it won't matter if I write the application in Ada, C++, Python, or Z/80 assembler...it WILL FAIL, because I didn't properly or adequately define the problem the application is intended to solve. > And that is one justification for why the DoD dropped the "Ada mandate" -- it was concluded that the analysis/design process had improved enough to reduce the risk of using less strict languages {If you do enough front-end work, and put checks on the coding practices, you don't need as much compiler assistance} -- Wulfraed Dennis Lee Bieber AF6VN wlfraed@ix.netcom.com HTTP://wlfraed.home.netcom.com/ ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-30 22:33 ` Dennis Lee Bieber @ 2014-10-30 23:13 ` Jeffrey Carter 0 siblings, 0 replies; 97+ messages in thread From: Jeffrey Carter @ 2014-10-30 23:13 UTC (permalink / raw) On 10/30/2014 03:33 PM, Dennis Lee Bieber wrote: > > And that is one justification for why the DoD dropped the "Ada mandate" > -- it was concluded that the analysis/design process had improved enough to > reduce the risk of using less strict languages {If you do enough front-end > work, and put checks on the coding practices, you don't need as much > compiler assistance} Well, no. The replacement mandate (universally ignored) is to choose the language with the lowest lifecycle costs, and justify that choice. This, we were promised, would insure that Ada was chosen until a better language was created. -- Jeff Carter "I like it when the support group complains that they have insufficient data on mean time to repair bugs in Ada software." Robert I. Eachus 91 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-30 15:38 ` Maciej Sobczak 2014-10-30 15:49 ` Alan Jump @ 2014-10-30 16:07 ` Bill White 2014-10-30 22:37 ` Maciej Sobczak 2014-10-31 13:24 ` Jacob Sparre Andersen 2 siblings, 1 reply; 97+ messages in thread From: Bill White @ 2014-10-30 16:07 UTC (permalink / raw) On 2014-10-30, Maciej Sobczak <see.my.homepage@gmail.com> wrote: > >> Surely if the language is chosen by management, they share in the responsibility >> for its effect. A developer who agrees to work on the project using the poor >> language has made a decision to do so, and is clearly responsible for that decision. > > Sorry, I got lost in this. I mean - in the taking responsibility part. > Does it mean that if we choose Ada and then shit happens, are we cleared > from responsibility because the choice was good? It is not about escaping responsibility but come from the other end and try to be responsible. People are required to be diligent. Choosing the right platforms, languages, techniques etc. are all part of engineering just like choosing the right concrete, steel, and designs are are all part of making a bridge. Choosing something that's known to be defective or provably unsuitable is irresponsible and not certainly not good engineering practice. Choosing something less-than-optimal often is "acceptable" engineering practice. When forced to do something like that you can either quit or send memos and keep copies. > The difference between Ada and C++ is not that in Ada there will be no bugs and in C++ there will be only bugs. At best, the language choice will have some influence on the probability and economy of failure. I think that's misleading. It is not only the probability of failures that's important but their type and consequences. Those are engineering limits that can usually be quantified fairly well. > So, let's say (just for the sake of discussion, with no regard to how ridiculous it got already) > that with C++ the probability of project failure is 30% and with Ada the probability of project > failure is 20%. I don't care if these numbers reflect reality. If that was all there was to it then it would be a simple matter of budgeting. Is the 10% you'll have to pay in claim settlements and damages worth it? If so, choose C++. If not, choose Ada. But I don't think it's the quantity (and I don't think C++ is only 10% worse than Ada even by pure quantity). > > a) And I choose C++. And then shit happens. Am I responsible? To what extent? If the system requires safety and you are responsible for choosing an inappropriate tool then you're certainly responsible. You're might also be incompetent and criminally negligent. > b) And I choose Ada. And then shit happens. Am I responsible? To what extent? Nobody says Ada is a silver bullet. The point is diligence. You don't use things with known safety issues in systems where safety is an issue. If you did the best you can and you followed good engineering practice then failures should have been mitigated as much as possible. People can still do the wrong thing with good tools. The question is whether people acted responsibly, cautiously, and in good faith. And those are things that make a difference in court. > > Are you ready to throw some numbers or can we agree that the discussion went out of > control and the whole responsibility argument is just nonsense? The discussion is not nonsense. The idea that people should refuse to use bad tools on the job is hard because when push comes to shove many people feel obligated to not be homeless or starving, especially if other people are depending on them. The question is a question of ideals, having a sense of social responsibility and right and wrong, and how close you can get to doing the right thing. You're at least obligated to make your objections and questions known and then if it's my way or the highway then only you can decide what to do. Immorality is not ok just because you're in an office. > Would that work? I was elaborating on this idea several times and it makes sense to me, > as it puts money into the equation just as it already does in many other parts of our life. > If my insurance company cares about me doing proper technical service of my car, it might > as well guide me in the choice of my programming language, there is really little difference here. > > But until this (or something equivalent) happens, please don't argue that the programmer is > responsible for his language choices, as such argument has no tangible (and countable) > foundations. It's just hand-waving. That is a very odd assertion. Just because there is no legal ecosystem for something hardly means it's hand-waving or irrelevant. The (attempted) solution usually comes after the problem, not before. Bill ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-30 16:07 ` Bill White @ 2014-10-30 22:37 ` Maciej Sobczak 2014-10-31 9:41 ` Georg Bauhaus 2014-10-31 10:11 ` Bill White 0 siblings, 2 replies; 97+ messages in thread From: Maciej Sobczak @ 2014-10-30 22:37 UTC (permalink / raw) > It is not about escaping responsibility but come from the other end and try > to be responsible. People are required to be diligent. Choosing the right > platforms, languages, techniques etc. are all part of engineering just like > choosing the right concrete, steel, and designs are are all part of making a > bridge. And yet, among hundreds of available materials and components, architects choose those that are most economically viable in the given context, not the ones that have the best known parameters. For every bridge or building I would be able to prove that better materials exist - and they were not chosen for valid reasons. Every single day my life depends on materials that were chosen based on some economic compromises and sometimes that economy argument is passed on us - for example we have to choose what car we will buy to drive our kids to school and that decision also involves economy compromises. I bet that nobody on this group bought the best car that was ever created. Should we feel bad about it? I am not aware of any engineering industry where purely technical arguments are the only ones that are taken into account. It would be naive to expect that IT should be any different. > I think that's misleading. It is not only the probability of failures that's > important but their type and consequences. That C++ bugs have more severe consequences than Ada bugs? :-) > The question is whether people acted > responsibly, cautiously, and in good faith. And those are things that make a > difference in court. And I assure you that no programmer in the world selects his tools in bad faith (at least I don't know any such wrongdoers). Everybody can swear on their good intentions. That should solve the court problem, right? If I understand things correctly, lack of due diligence has to be proven in court. But who is responsible if most programmers are simply *not aware* of better tools? Nowadays the universities teach that the best language for everything is Java. Is the Java programmer liable for the broken system or should we sue his university instead? -- Maciej Sobczak * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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-10-31 10:11 ` Bill White 1 sibling, 2 replies; 97+ messages in thread From: Georg Bauhaus @ 2014-10-31 9:41 UTC (permalink / raw) On 30.10.14 23:37, Maciej Sobczak wrote: > I am not aware of any engineering industry where purely technical arguments are the only ones that are taken into account. It would be naive to expect that IT should be any different. To an engineer, it is obvious that no terribly broken tools should ever be used in engineering, including bridge building, except in an emergency. So obvious that engineers and mechanics just never face a discussion like this: They do use a reasonably good soldering iron even when there is a good candle, bellows and skillful use at hand. Such curiosities would be admired, and requested to be understood, but they would never replace the soldering iron. C++, as an example of a tool different from C and used in engineering, has got soooo much to address the shortcomings of its foundation (C). But it keeps it, and not just as a curiosity. Why? By analogy, any engineer would by now have considered replacing the foundation, or at least part of it. But here in programming, we keep C as the foundation. We keep our backwards compatibility, our pride, our demonstrable consistency of the C standard, our group pressure, our dreams of always doing things correctly, our stereotypes, the ubiquity of C (self-fulfilling), etc. All this happens even in the presence of refactoring IDEs, automatic proof systems, or static analysis (really redefining C implicitly), This evidence would definitely allow saying Good Bye to int and *p. So I don't believe the continued use of error prone foundations can be explained with the help of just the pricing-related attributes of economy. On the other hand, the history of Ada pricing seem strikingly obvious: The 4+ digits/year of a good tool have been in anyone's face (including compilers for use in teaching), while the ROI would appear in an uncertain future. How could this have been compatible with gaining market share? ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 1 sibling, 0 replies; 97+ messages in thread From: Brad Moore @ 2014-10-31 12:51 UTC (permalink / raw) On 2014-10-31 3:41 AM, Georg Bauhaus wrote: > To an engineer, it is obvious that no terribly broken tools should ever > be used in engineering, including bridge building, except in an > emergency. So obvious that engineers and mechanics just never face a > discussion like this: They do use a reasonably good soldering iron even > when there is a good candle, bellows and skillful use at hand. > This argument seems weak, given that there are many engineers out there who program in C++. Maybe they should be facing discussions like this, as the engineering community can have significant clout, and could influence the choice of software tools for a project, particularly if there are safety requirements involved. ^ permalink raw reply [flat|nested] 97+ messages in thread
* C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-10-31 9:41 ` Georg Bauhaus 2014-10-31 12:51 ` Brad Moore @ 2014-11-01 3:03 ` Simon Clubley 2014-11-01 13:35 ` Georg Bauhaus ` (2 more replies) 1 sibling, 3 replies; 97+ messages in thread From: Simon Clubley @ 2014-11-01 3:03 UTC (permalink / raw) On 2014-10-31, Georg Bauhaus <bauhaus@futureapps.invalid> wrote: > > But here in programming, we keep C as the foundation. We keep our > backwards compatibility, our pride, our demonstrable consistency of the > C standard, our group pressure, our dreams of always doing things > correctly, our stereotypes, the ubiquity of C (self-fulfilling), > etc. All this happens even in the presence of refactoring IDEs, > automatic proof systems, or static analysis (really redefining C implicitly), We keep C because the C compilers generate code to run on everything out there - and there are always options for each target which don't restrict what you can do with the generated code unlike GNAT GPL. > This evidence would definitely allow saying Good Bye to int and *p. > So I don't believe the continued use of error prone foundations can > be explained with the help of just the pricing-related attributes of > economy. > When you are building foundation libraries, which by definition are intended to run on a wide range of platforms/targets, you need to use an implementation language which is freely available across that wide range of platforms/targets. As I keep saying in one way or another: Ada: nice language, lousy compiler situation. Most people here keep focusing on how great Ada is compared to C. You are right but you have also completely missed the point as that means nothing without a compiler situation comparable to C's if you want to start replacing foundation libraries. There's also the possibility that Ada may be a step too far for the average C programmer. Instead we should consider the possibility of a half-way language which is better (safer) than C but not as strict as Ada and would have ease of implementation/porting as one of it's goals. You can always introduce them to Ada later for the critical stuff after they have have used this language for the non-critical projects they would use C for now. Simon. -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 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-01 13:46 ` Maciej Sobczak 2014-11-03 12:40 ` Florian Weimer 2 siblings, 1 reply; 97+ messages in thread From: Georg Bauhaus @ 2014-11-01 13:35 UTC (permalink / raw) On 01.11.14 04:03, Simon Clubley wrote: > We keep C because the C compilers generate code to run on everything > out there - and there are always options for each target which don't > restrict what you can do with the generated code unlike GNAT GPL. Then why not use FSF GNAT? Because it is not as convenient as a fully supported compiler? There is more, though. I am abbreviating by using "freeware" notions such as no-cost, or <100 price range, no run-time cost, and no tit-for-tat license. I could have used "gift". Then, first, many C compilers are not freeware in commercial or closed source projects. Second, there are fewer freeware run-times for Ada than there are freeware run-times for C. But, of both there are few. There is no freeware Ada for iOS right now. There is no workable freeware Ada for Android right now. This should cover the mass market of computers for entertainment, communication, and contacts, excluding gaming. Then, embedded. ARM, AVR, ... does a car count as a development target of the kind you mention, where there are, allegedly, freeware C implementations that don't restrict in any way? Side note: AVR chips are usually programmed using GCC. > When you are building foundation libraries, which by definition are > intended to run on a wide range of platforms/targets, you need to use > an implementation language which is freely available across that wide > range of platforms/targets. Which, as outlined, isn't necessarily C, is it? If you wanted Ada to target AVR, and be co-operative, just Export subprograms with convention C, or Standard, and everyone can work with them. > Instead we should consider the possibility of > a half-way language which is better (safer) than C but not as strict > as Ada and would have ease of implementation/porting as one of it's > goals. Imagine C++ without int, without char, and without C-pointers (see MISRA for int,see JSF++ for the latter). Now replace this part of C++'s foundation with a "modern" type system that is informed of the benefits of Ada's type system as well as of others that allow e.g., saturating arithmetic as part of the type system.(*) C++ should be an interesting formalism if it has tight integration of everything in the language. If they can get this replacement in the foundations working, everyone can. __ (*) No! Noo! NOT a library. No. NO!! The. Type. System!!! Damn! ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-01 13:35 ` Georg Bauhaus @ 2014-11-03 1:54 ` Simon Clubley 2014-11-03 9:42 ` Georg Bauhaus ` (2 more replies) 0 siblings, 3 replies; 97+ messages in thread From: Simon Clubley @ 2014-11-03 1:54 UTC (permalink / raw) On 2014-11-01, Georg Bauhaus <bauhaus@futureapps.invalid> wrote: > On 01.11.14 04:03, Simon Clubley wrote: > >> We keep C because the C compilers generate code to run on everything >> out there - and there are always options for each target which don't >> restrict what you can do with the generated code unlike GNAT GPL. > > Then why not use FSF GNAT? Because it is not as convenient as > a fully supported compiler? > I _only_ use FSF GNAT and not ACT's GPL version. :-) The point you are missing is that just because there is C language support within the FSF kit, it doesn't mean there is viable Ada support. Two good examples are ARM and PIC32. Luke's done some good work in this area, but the last time I checked (a year or two ago) he was having problems with things breaking between gcc versions and getting gcc to build for these targets seemed way more fragile than it should be. There are also the specialist microcontrollers which don't have Ada compilers but do have C compilers. A popular example would be the 8-bit PICs or (less mainstream) the smaller microcontrollers from Freescale. > There is more, though. I am abbreviating by using "freeware" notions > such as no-cost, or <100 price range, no run-time cost, > and no tit-for-tat license. I could have used "gift". > > Then, first, many C compilers are not freeware in commercial or closed > source projects. Second, there are fewer freeware run-times for Ada > than there are freeware run-times for C. But, of both there are few. > There is no freeware Ada for iOS right now. There is no workable > freeware Ada for Android right now. This should cover the mass market of > computers for entertainment, communication, and contacts, excluding gaming. > I thought someone had brought up an Ada cross compiler for Android by using a FreeBSD host ? Are you saying it doesn't work ? (I'm currently getting into the world of Android development and once I understand it enough using the supported languages, I was going to have a look at Ada on Android). BTW, I was amused to see someone has got Fortran code running on an Android target. :-) > Then, embedded. ARM, AVR, ... does a car count as a development target > of the kind you mention, where there are, allegedly, freeware C > implementations that don't restrict in any way? Side note: AVR chips > are usually programmed using GCC. > Even in a specialist environment such as the one you mention, you should usually have a C compiler available which means for the non-critical stuff you can always import existing C language libraries from other environments. Will you always have an Ada compiler available in this case to import existing Ada libraries ? Writing libraries in C gives you portability and general flexibility options you don't currently have with Ada. I wish that wasn't the case, but that's the reality. Simon. -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 1:54 ` Simon Clubley @ 2014-11-03 9:42 ` Georg Bauhaus 2014-11-03 12:07 ` Luke A. Guest 2014-11-03 14:26 ` Brian Drummond 2 siblings, 0 replies; 97+ messages in thread From: Georg Bauhaus @ 2014-11-03 9:42 UTC (permalink / raw) On 03.11.14 02:54, Simon Clubley wrote: > Even in a specialist environment such as the one you mention, you > should usually have a C compiler available which means for the > non-critical stuff you can always import existing C language libraries > from other environments. Assuming "specialist environments" such as the workplace ... > Will you always have an Ada compiler available in this case to import > existing Ada libraries ? ... there currently are fewer Ada environments than there are C environments, and ... > Writing libraries in C gives you portability and general flexibility > options you don't currently have with Ada. I wish that wasn't the case, > but that's the reality. ... then there appears to be a personal incentive for continued use of the C vehicle, even when the writer of the C library in question adds abstractions that really are "flexible" emulations of language features that are built-in elsewhere, uses tools that go way beyond what a C compiler does, and adds a special touch of magical configuration software called automess^H^H^H^Hconf. (Defeating the purpose of a portable library, but that's another topic.) This, then, is how the business-centric attitude, the economic aspect at the individual level, contributes to C forever, unless someone "above" sees an incentive to intervene, and stops this practice of consultancy at its best ;-) Maybe a SPARK profile run-time can help get more environments in place? ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 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 2 siblings, 1 reply; 97+ messages in thread From: Luke A. Guest @ 2014-11-03 12:07 UTC (permalink / raw) Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> wrote: > Two good examples are ARM and PIC32. Luke's done some good work in I never got to pic32, but it's just nips and if mops have finally added the patches to GCC in the Fsf tree then it should be ok and at the same level as any other arch-elf target. > this area, but the last time I checked (a year or two ago) he was > having problems with things breaking between gcc versions and getting > gcc to build for these targets seemed way more fragile than it should > be. It's been a while for me. But it's always been a bitch and it shouldn't be. >> There is no freeware Ada for iOS right now. There is no workable >> freeware Ada for Android right now. This should cover the mass market of >> computers for entertainment, communication, and contacts, excluding gaming. >> > > I thought someone had brought up an Ada cross compiler for Android by > using a FreeBSD host ? John Marino did that, I used his patches to get it to work on linux, but they didn't come over straight, I had to fiddle with it as BSD /= Linux. > Are you saying it doesn't work ? (I'm currently getting into the world > of Android development and once I understand it enough using the supported > languages, I was going to have a look at Ada on Android). It should do. What you won't get are bindings to the Android API. > BTW, I was amused to see someone has got Fortran code running on an > Android target. :-) And people think we're wasting our time with Ada! Luke ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 12:07 ` Luke A. Guest @ 2014-11-04 2:01 ` Simon Clubley 0 siblings, 0 replies; 97+ messages in thread From: Simon Clubley @ 2014-11-04 2:01 UTC (permalink / raw) On 2014-11-03, Luke A Guest <laguest@archeia.com> wrote: > Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> wrote: > >> Two good examples are ARM and PIC32. Luke's done some good work in > > I never got to pic32, but it's just nips and if mops have finally added the > patches to GCC in the Fsf tree then it should be ok and at the same level > as any other arch-elf target. > My mistake. :-) (Like I said, it's been a couple of years since I last looked at your work). I do remember you saying you were looking at targeting the PIC32 after your ARM work. >> this area, but the last time I checked (a year or two ago) he was >> having problems with things breaking between gcc versions and getting >> gcc to build for these targets seemed way more fragile than it should >> be. > > It's been a while for me. But it's always been a bitch and it shouldn't be. > You will get absolutely no argument from me on that one. > >> Are you saying it doesn't work ? (I'm currently getting into the world >> of Android development and once I understand it enough using the supported >> languages, I was going to have a look at Ada on Android). > > It should do. What you won't get are bindings to the Android API. > Thanks. That's quite a bit of the way down the road however; I'm currently spending my "Android time" learning to write extensions for Firefox Mobile to add functionality I miss from desktop Firefox. BTW, there's one hell of a difference between the formal, present the background and conceptual material upfront world of Ada, and the cut and paste learn by example world of Firefox addons... I must say I prefer the Ada approach as you get a solid grounding in the material as hand. I guess doing lots of background reading before designing and implementing something is considered "old fashioned" these days however. Simon. -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 1:54 ` Simon Clubley 2014-11-03 9:42 ` Georg Bauhaus 2014-11-03 12:07 ` Luke A. Guest @ 2014-11-03 14:26 ` Brian Drummond 2 siblings, 0 replies; 97+ messages in thread From: Brian Drummond @ 2014-11-03 14:26 UTC (permalink / raw) On Mon, 03 Nov 2014 01:54:38 +0000, Simon Clubley wrote: > On 2014-11-01, Georg Bauhaus <bauhaus@futureapps.invalid> wrote: >> There is no freeware Ada for iOS right now. There is no workable >> freeware Ada for Android right now. This should cover the mass market >> of computers for entertainment, communication, and contacts, excluding >> gaming. >> > I thought someone had brought up an Ada cross compiler for Android by > using a FreeBSD host ? > > Are you saying it doesn't work ? (I'm currently getting into the world > of Android development and once I understand it enough using the > supported languages, I was going to have a look at Ada on Android). The compiler (John Marino's, as Luke says) works fine and apparently passes the full ACATS suit. I have built it and made simple command line applications, which worked. (Same is true of the Fortran compiler you noted) The "workable" part of Georg's statement comes from the fact that command line apps on Android are ... kinda missing the point. At that time (2011) integration with the GUI was ... painful would be the polite way to put it. And I've not seen any evidence that has changed in the last 3 years. - Brian ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-01 3:03 ` C versus Ada (once again :-)), was: " Simon Clubley 2014-11-01 13:35 ` Georg Bauhaus @ 2014-11-01 13:46 ` Maciej Sobczak 2014-11-03 2:01 ` Simon Clubley 2014-11-03 12:40 ` Florian Weimer 2 siblings, 1 reply; 97+ messages in thread From: Maciej Sobczak @ 2014-11-01 13:46 UTC (permalink / raw) > There's also the possibility that Ada may be a step too far for the > average C programmer. Instead we should consider the possibility of > a half-way language which is better (safer) than C but not as strict > as Ada and would have ease of implementation/porting as one of it's > goals. This sentence sounds like a 100% description of C++. Which also explains the difficulty of Ada in penetrating the business landscape that seems to be already covered and where people are more comfortable with gradual improvements (think Scala vs. Java) than with complete technology replacements. In other words, C++ and Java do not leave any place for Ada to shine (even if, when given a chance, Ada would shine in every category). -- Maciej Sobczak * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 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 0 siblings, 2 replies; 97+ messages in thread From: Simon Clubley @ 2014-11-03 2:01 UTC (permalink / raw) On 2014-11-01, Maciej Sobczak <see.my.homepage@gmail.com> wrote: >> There's also the possibility that Ada may be a step too far for the >> average C programmer. Instead we should consider the possibility of >> a half-way language which is better (safer) than C but not as strict >> as Ada and would have ease of implementation/porting as one of it's >> goals. > > This sentence sounds like a 100% description of C++. It would also be nice if it applied to some scaled up version of a Wirth style language such as Oberon with more Ada style syntax and a simplified (and less strict) version of Ada's type system added. Not as safe as Ada, but potentially much safer than C. The ease of implementation comment refers to the compiler itself BTW, so it would be easy to bring up the compiler (either native hosted or as a cross compiler) for a new environment. Simon. -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 2:01 ` Simon Clubley @ 2014-11-03 9:10 ` Maciej Sobczak 2014-11-03 12:09 ` Luke A. Guest 1 sibling, 0 replies; 97+ messages in thread From: Maciej Sobczak @ 2014-11-03 9:10 UTC (permalink / raw) > > This sentence sounds like a 100% description of C++. > > It would also be nice if it applied to some scaled up version of a Wirth > style language Why? What problem would that solve? There are 10.000 programming languages already and some of them are even "nice", so you need to have stronger selling points to get noticed. Creating 10.001-st language that will be neglected by everybody is not worth the effort (that's the economy part of engineering). -- Maciej Sobczak * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 2:01 ` Simon Clubley 2014-11-03 9:10 ` Maciej Sobczak @ 2014-11-03 12:09 ` Luke A. Guest 1 sibling, 0 replies; 97+ messages in thread From: Luke A. Guest @ 2014-11-03 12:09 UTC (permalink / raw) Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> wrote: > > It would also be nice if it applied to some scaled up version of a Wirth > style language such as Oberon with more Ada style syntax and a simplified > (and less strict) version of Ada's type system added. > > Not as safe as Ada, but potentially much safer than C. > > The ease of implementation comment refers to the compiler itself BTW, > so it would be easy to bring up the compiler (either native hosted or > as a cross compiler) for a new environment. If you want easy to bring up, then you should implement it in C++ or C. Luke ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-01 3:03 ` C versus Ada (once again :-)), was: " Simon Clubley 2014-11-01 13:35 ` Georg Bauhaus 2014-11-01 13:46 ` Maciej Sobczak @ 2014-11-03 12:40 ` Florian Weimer 2014-11-03 21:58 ` Shark8 2 siblings, 1 reply; 97+ messages in thread From: Florian Weimer @ 2014-11-03 12:40 UTC (permalink / raw) * 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. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 12:40 ` Florian Weimer @ 2014-11-03 21:58 ` Shark8 2014-11-03 22:28 ` Dmitry A. Kazakov 2014-11-04 13:42 ` Florian Weimer 0 siblings, 2 replies; 97+ messages in thread From: Shark8 @ 2014-11-03 21:58 UTC (permalink / raw) 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? 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? (Would such atomic instructions need to be incorporated at the Run-time level?) ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 21:58 ` Shark8 @ 2014-11-03 22:28 ` Dmitry A. Kazakov 2014-11-04 13:42 ` Florian Weimer 1 sibling, 0 replies; 97+ messages in thread From: Dmitry A. Kazakov @ 2014-11-03 22:28 UTC (permalink / raw) 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 ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-03 21:58 ` Shark8 2014-11-03 22:28 ` Dmitry A. Kazakov @ 2014-11-04 13:42 ` Florian Weimer 2014-11-04 15:01 ` G.B. 1 sibling, 1 reply; 97+ messages in thread From: Florian Weimer @ 2014-11-04 13:42 UTC (permalink / raw) * Shark8: >> 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? The actual implementation is platform-dependent, but the C11 memory model abstracts over it. You use the <stdatomic.h> functionality which you need to implement your parallel algorithm, and the C implementation will select something matching for the target architecture (either an exact match, or a stronger (and slower) variant). > 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? It's difficult to get that right because it needs a lot of knowledge of the target architecture and its variations. If you stick to the C11 memory model (or C++11 variant, they are supposed to be compatible), you only need to learn that, and the C implementation will map it to the hardware. > (Would such atomic instructions need to be incorporated at the > Run-time level?) Some systems need kernel calls for certain barriers, yes. But Ada code needs to issue these barriers today, so support already has to be present. The main challenge is to expose weaker (and therefore more efficient) synchronization primitives. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-04 13:42 ` Florian Weimer @ 2014-11-04 15:01 ` G.B. 2014-11-04 15:50 ` Florian Weimer 0 siblings, 1 reply; 97+ messages in thread From: G.B. @ 2014-11-04 15:01 UTC (permalink / raw) On 04.11.14 14:42, Florian Weimer wrote: > The main challenge is to expose weaker (and therefore more efficient) > synchronization primitives. In view of the work on parallel loops of current Ada standardization: what algorithms will remain as not expressible with the help of parallel loops? So that they will need more than Volatile and a fast Suspension_Object in order to be just as efficient? ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: C versus Ada (once again :-)), was: Re: F-22 ADA Programming 2014-11-04 15:01 ` G.B. @ 2014-11-04 15:50 ` Florian Weimer 0 siblings, 0 replies; 97+ messages in thread From: Florian Weimer @ 2014-11-04 15:50 UTC (permalink / raw) * G. B.: > On 04.11.14 14:42, Florian Weimer wrote: >> The main challenge is to expose weaker (and therefore more efficient) >> synchronization primitives. > > In view of the work on parallel loops of current Ada > standardization: what algorithms will remain as > not expressible with the help of parallel loops? Anything that merely updates some global datastructure instead processing large chunks of it, e.g., a storage pool, or a concurrent hash table used for session IDs in a multi-threaded server application. > So that they will need more than Volatile and a fast > Suspension_Object in order to be just as efficient? No, for large multiprocessors, you need weaker ordering constraints (I think Ada's signaling between tasks implies sequentially consistent ordering, which is the most expensive variant), and it's best to avoid suspension objects and other heavyweight synchronization primitives as far as possible. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-30 22:37 ` Maciej Sobczak 2014-10-31 9:41 ` Georg Bauhaus @ 2014-10-31 10:11 ` Bill White 2014-10-31 12:52 ` Maciej Sobczak 1 sibling, 1 reply; 97+ messages in thread From: Bill White @ 2014-10-31 10:11 UTC (permalink / raw) On 2014-10-30, Maciej Sobczak <see.my.homepage@gmail.com> wrote: > >> It is not about escaping responsibility but come from the other end and try >> to be responsible. People are required to be diligent. Choosing the right >> platforms, languages, techniques etc. are all part of engineering just like >> choosing the right concrete, steel, and designs are are all part of making a >> bridge. > > And yet, among hundreds of available materials and components, architects choose those that are most economically viable in the given context, not the ones that have the best known parameters. For every bridge or building I would be able to prove that better materials exist - and they were not chosen for valid reasons. Every single day my life depends on materials that were chosen based on some economic compromises and sometimes that economy argument is passed on us - for example we have to choose what car we will buy to drive our kids to school and that decision also involves economy compromises. I bet that nobody on this group bought the best car that was ever created. Should we feel bad about it? I didn't say the best. I said "just like choosing the right concrete, steel, and designs. Engineering these days is mostly about choosing the cheapest possible materials and procedures that will meet the performance goals. OTOH in safety area people have found it worthwhile to over engineer somewhat. > > I am not aware of any engineering industry where purely technical > arguments are the only ones that are taken into account. It would be naive > to expect that IT should be any different. > >> I think that's misleading. It is not only the probability of failures that's >> important but their type and consequences. > > That C++ bugs have more severe consequences than Ada bugs? :-) Are you kidding me? Are you not aware that buffer overflows are a major ongoing, intractable issue in C and C++ deployments? Depending on the platform the results can be much worse than a segfault message. These kinds of errors can corrupt memory and produce "should never happen" errors that are unhandled or break the code of even the OS in unforseeable ways. And these kinds of errors are totally avoidable and never happen in Ada with the right compilation options. C and C++ pointers are another area where wild storage references are common and have the same damaging effects as buffer overflows. Things like that just don't happen in Ada and other safe languages. There's no excuse for using C or C++ in safety or even business-critical applications. And that's the tip of the iceberg. So much about C++ encourages rather than discourages complexity. And complexity kills. >> The question is whether people acted >> responsibly, cautiously, and in good faith. And those are things that make a >> difference in court. > > And I assure you that no programmer in the world selects his tools in bad >> faith (at least I don't know any such wrongdoers). Everybody can swear on >> their good intentions. That should solve the court problem, right? Nonsense. Most people are not even qualified to choose the tools they use and the majority of them don't even think this is a discussion. > If I understand things correctly, lack of due diligence has to be proven >in court. That depends. In criminal cases in America they are supposed to have to prove guilt. But in civil cases and that's where the money is, accused parties have to prove their innocence. > But who is responsible if most programmers are simply *not aware* >of better tools? Nowadays the universities teach that the best language for >everything is Java. Is the Java programmer liable for the broken system or >should we sue his university instead? You continue to try to twist the discussion into the framework of avoiding liability and who to collect money from, where I am coming from the angle of wanting people to be aware of the issues and do the right thing, because it's the right thing to do. Bill ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-31 10:11 ` Bill White @ 2014-10-31 12:52 ` Maciej Sobczak 2014-11-02 15:40 ` Bill White 0 siblings, 1 reply; 97+ messages in thread From: Maciej Sobczak @ 2014-10-31 12:52 UTC (permalink / raw) > > That C++ bugs have more severe consequences than Ada bugs? :-) > > Are you kidding me? > > Are you not aware that buffer overflows are a major Yes, I am. And the recent Heartbleed mess is a very good example of why you are both right and wrong at the same time. The problem is - most of the buffer overflows that we had to deal with were related to foundation infrastructure, which has long historic links. Nobody is going to replace those foundations without taking those historic links into account - and choosing Ada at the top level does not help much if foundations are not replaced. In the context of Heartbleed this means that your Ada-based web service (like with AWS) would be compromised anyway, because it would use the foundations that are broken, but which you would not be willing to reimplement yourself. And if you attempt to do it, you will take the risk of introducing new bugs, perhaps not buffer overflows, but maybe more subtle (and not less dangerous), like related to the cryptographic correctness of your new foundations. This is a huge economic question mark. It is not obvious (and has no existing data to back up) that replacing the software world with Ada would be automatically beneficial. Which brings us to another question: what "switching to Ada" is supposed to mean, anyway? That we will take literally billions of lines of C code and put our several thousands of Ada on top of it and call it a success? This is pointless, the impact on overall quality would be exactly zero (think Heartbleed). Or maybe that we will replace the billions of LOC in C with new and untested billions of LOC in Ada? We both know it's not going to happen, and it would not even be necessarily good. Things look different in those deployments where you can control the whole stack, like in embedded systems. There, "switching to Ada" is actually meaningful and I fully applaud it. Which is actually very relevant and viable with most safety critical systems. > C and C++ pointers are another area where wild storage references are > common and have the same damaging effects as buffer overflows. Things like > that just don't happen in Ada and other safe languages. They also don't happen with appropriate language subsetting, which is a valid and widely used strategy in safety critical systems. There is no need to abandon the whole language just because you want to get rid of one language feature. > There's no excuse > for using C or C++ in safety or even business-critical applications. The excuse is economy of replacing billions of lines in foundation layers. And, let's be a bit objective, statistically it looks like both safety and business are doing fine. Fuckups get more media attention for obvious reasons (media have their economy, too), but from what I see more banks are thriving thanks to well working systems than falling due to buffer overflows. These are the excuses you are looking for and these are the reasons why future banking systems will be written in C++ and Java, too. > Nonsense. Most people are not even qualified to choose the tools they use And who is going to forbid them? > > If I understand things correctly, lack of due diligence has to be proven > >in court. > > That depends. In criminal cases in America they are supposed to have to > prove guilt. But in civil cases and that's where the money is, accused > parties have to prove their innocence. OK, easy. There is a concept of widely accepted practice (also known as "nobody was ever fired for buying IBM"). If all universities teach that Java is the best technology and if all companies use it, then it must be an accepted practice. Then, just as "nobody was ever fired for buying IBM", nobody will be ever sued for writing business systems in Java. On the contrary - choosing niche technologies might look like taking unnecessary risks and this is certainly a question mark in court. Ada is a niche technology and its technical properties might not be obvious to the judge. > You continue to try to twist the discussion into the framework of avoiding > liability and who to collect money from, where I am coming from the angle of > wanting people to be aware of the issues and do the right thing, because > it's the right thing to do. Right. So for most people the right thing to do is not to take risks and do what everybody else does and write in C. Or in Java. Sorry. If all this seems twisted to you, it was not me who has twisted the world. -- Maciej Sobczak * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-31 12:52 ` Maciej Sobczak @ 2014-11-02 15:40 ` Bill White 2014-11-02 22:23 ` Maciej Sobczak 0 siblings, 1 reply; 97+ messages in thread From: Bill White @ 2014-11-02 15:40 UTC (permalink / raw) On 2014-10-31, Maciej Sobczak <see.my.homepage@gmail.com> wrote: > >> > That C++ bugs have more severe consequences than Ada bugs? :-) >> >> Are you kidding me? >> >> Are you not aware that buffer overflows are a major > > Yes, I am. And the recent Heartbleed mess is a very good example of why you are both right and wrong at the same time. > The problem is - most of the buffer overflows that we had to deal with > were related to foundation infrastructure, which has long historic > links. Nobody is going to replace those foundations without taking those > historic links into account - and choosing Ada at the top level does not > help much if foundations are not replaced. In the context of Heartbleed this > means that your Ada-based web service (like with AWS) would be compromised > anyway, because it would use the foundations that are broken, but which you > would not be willing to reimplement yourself. You are a master at living with and promoting failure as a lifestyle. Virtually everything you write screams "We can't, we can't!" Your "examples" have no connection to reality. They're just setups to prove why the world is coming to an end. The OpenBSD project got sick enough to throw out OpenSSL and replace it and with their new 5.6 release have shipped their own modifications. The work will be ongoing until all the problems in OpenSSL have been gutted and reworked. You can fix the world one step at a time. And if you don't start now then your failures are self-inflicted and you're part of the problem. Ada is not the answer, it's part of the answer. Being aware of how unsafe languages propose unacceptable risks is a discussion college kids don't even get into. That has to change. Engineering ethics have to be made part of an education. > Things look different in those deployments where you can control the whole >stack, like in embedded systems. There, "switching to Ada" is actually >meaningful and I fully applaud it. Which is actually very relevant and >viable with most safety critical systems. That's my world so I fail to see the necessity of gaining a few weeks schedule while giving up the ship with crappy third party libraries. We do everything ourselves and take responsibility for everything with no finger pointing. > >> C and C++ pointers are another area where wild storage references are >> common and have the same damaging effects as buffer overflows. Things like >> that just don't happen in Ada and other safe languages. > > They also don't happen with appropriate language subsetting, which is a >valid and widely used strategy in safety critical systems. There is no need >to abandon the whole language just because you want to get rid of one >language feature. But you do need to get rid of C and C++ because their culture is broken. They value ease of implementation over correctness. They value running on everything with a battery more important than doing whatever it is they're supposed to do well. That culture has to go. > OK, easy. There is a concept of widely accepted practice (also known as >"nobody was ever fired for buying IBM"). If all universities teach that >Java is the best technology and if all companies use it, then it must be an >accepted practice. Then, just as "nobody was ever fired for buying IBM", >nobody will be ever sued for writing business systems in Java. Java is not pretty but it's still a lot safer than C or C++. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-02 15:40 ` Bill White @ 2014-11-02 22:23 ` Maciej Sobczak 2014-11-02 22:52 ` Peter Chapin ` (2 more replies) 0 siblings, 3 replies; 97+ messages in thread From: Maciej Sobczak @ 2014-11-02 22:23 UTC (permalink / raw) > You are a master at living with and promoting failure as a lifestyle. I did not promote failure in any of my previous posts, so your statement is misplaced. Still, I find it telling and that you have switched to ad-hominem arguments, as it shows that you are running out of technical ones. > The OpenBSD project got sick enough to throw out OpenSSL and > replace it and with their new 5.6 release have shipped their own modifications. > The work will be ongoing until all the problems in OpenSSL have been gutted and reworked. Excellent. This is exactly what should happen and I applaud it (which falsifies your imagination of my lifestyle). So what is the language that they have used for implementing their "modifications"? > Engineering ethics have to be made part of an > education. Great idea, I'm all for it. On this page: http://en.wikipedia.org/wiki/Engineering the word "economy" is found in 9 places, every time as a component that is as important as "science". One example is this: "Engineers use their knowledge of science, mathematics, logic, economics, and appropriate experience or tacit knowledge to find suitable solutions to a problem." You cannot build any "engineering ethic" construction with any one of these components removed. Economy is part of the equation whether you like it or not. I have already given an example of buying a car. There is a lot of ethics implied in it, but it cannot be done without economy in mind. The same applies to programming, too. > But you do need to get rid of C and C++ because their culture is > broken. The C++ culture is now exploring Mars. I find this "culture" pretty convincing. > They value ease of implementation over correctness. The correctness is heavily impaired if the ease of implementation is not encouraged. All safety standards that I'm aware of encourage solutions that are easy to implement (see also the "logic" part of the engineering description above). > They value > running on everything Portability seems to be a valid engineering goal. > with a battery No. This is Python's domain. C and C++ are relatively naked. > more important than doing whatever it > is they're supposed to do well. I'm not sure if difficult to implement and not working on existing hardware could be counted as "doing well". > That culture has to go. It's not going anywhere. > Java is not pretty but it's still a lot safer than C or C++. Java introduces more problems than it solves - that's why C++ is now on Mars while Java had to stay on Earth. And that's also why you can find C++ in safety-related deployments (to the highest levels of criticality), whereas you are not likely to find Java there anytime soon. Unless you want failure to be part of your lifestyle... Actually, as I have already written in a similar discussion here some time ago, it is not C++ which is a biggest enemy of Ada (believe it or not, C++ programmers are the only ones who are likely to become Ada recruits) - the biggest and most dangerous enemy of Ada is Java, which makes Ada and C++ look like close friends. And the only way for Ada to survive is to stop blindly fighting with C++, as the reasons to fight are no longer valid today. This is the part that you seem to be missing. -- Maciej Sobczak * http://www.inspirel.com ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 2 siblings, 0 replies; 97+ messages in thread From: Peter Chapin @ 2014-11-02 22:52 UTC (permalink / raw) On Sun, 2 Nov 2014, Maciej Sobczak wrote: > Actually, as I have already written in a similar discussion here some > time ago, it is not C++ which is a biggest enemy of Ada (believe it or > not, C++ programmers are the only ones who are likely to become Ada > recruits) - the biggest and most dangerous enemy of Ada is Java, which > makes Ada and C++ look like close friends. I've often thought that Ada and C++ have more commonality than differences. Both target systems programming and yet provide tools for building high level abstractions. Both have largely similar feature sets with a few tweaks here and there. Both are "value oriented" and require the programmer to do explicit things to manipulate objects by reference (compare: Java). I tell my students that "anywhere it is reasonable to deploy C++ it would be reasonable to deploy Ada and vice-versa." This is from a technical standpoint not a social, political, or economic one. Of course Ada emphasizes safety whereas I would say C++ emphasizes performance. C++ maintains the C legacy where as Ada "only" needs to be worried about being compatible with itself. There are differences in the details. But compared with, say, Python or Haskell or even Java, C++ and Ada might as well be brothers. Peter ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 2 siblings, 0 replies; 97+ messages in thread From: Simon Clubley @ 2014-11-03 1:36 UTC (permalink / raw) On 2014-11-02, Maciej Sobczak <see.my.homepage@gmail.com> wrote: > >> They value >> running on everything > > Portability seems to be a valid engineering goal. > >> with a battery > > No. This is Python's domain. C and C++ are relatively naked. > In what I think is the OP's case, C is way more portable than Python because it can be used for things that Python will never run on such as small microcontrollers. I think that's what the OP meant with the "battery" reference. However, the OP is out of touch with reality when saying this level of portability is a bad thing. This level of portability is required in the real world and with the right language, and widely supported compilers, we should be able to have wide ranging portability _and_ a safer programming ecosystem. Simon. -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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 2 siblings, 0 replies; 97+ messages in thread From: Laurent @ 2014-11-03 19:04 UTC (permalink / raw) Am Sonntag, 2. November 2014 23:23:15 UTC+1 schrieb Maciej Sobczak: > Java introduces more problems than it solves - that's why C++ is now on Mars while Java had to stay on Earth. And that's also why you can find C++ in safety-related deployments (to the highest levels of criticality), whereas you are not likely to find Java there anytime soon. > Unless you want failure to be part of your lifestyle... > Maciej Sobczak * http://www.inspirel.com Not sure if my info is correct, don't remember where I read that but I think there are ATMs and medical equipment running under Java. Don't know if that is a wise choice. Only a thought of mine. Laurent ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-30 15:38 ` Maciej Sobczak 2014-10-30 15:49 ` Alan Jump 2014-10-30 16:07 ` Bill White @ 2014-10-31 13:24 ` Jacob Sparre Andersen 2 siblings, 0 replies; 97+ messages in thread From: Jacob Sparre Andersen @ 2014-10-31 13:24 UTC (permalink / raw) Maciej Sobczak wrote: > On the other hand, I can imagine a world where programmers are covered > by civil responsibility insurance (just like in many other industries) > and insurance companies will offer insurance discounts to better > programmers (just as they do to people with good car driving history > or with no smoking habits, etc.). I think this is an interesting idea. It seems to work in other fields, so why not in software development. Greetings, Jacob -- »And what about homo sapiens? Yes, we think that would be a very good idea ...« -- not Gandhi ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 21:06 ` Jeffrey Carter 2014-10-28 21:32 ` Simon Clubley 2014-10-28 21:37 ` Adam Beneschan @ 2014-11-08 4:45 ` Randy Brukardt 2014-11-08 23:43 ` Shark8 2 siblings, 1 reply; 97+ messages in thread From: Randy Brukardt @ 2014-11-08 4:45 UTC (permalink / raw) "Jeffrey Carter" <spam.jrcarter.not@spam.not.acm.org> wrote in message news:m2p0g5$4d0$1@dont-email.me... ... > Denying one's own comfort or convenience for the greater good is generally > the > essence of ethical problems. As such, rather than use an error- and > security-vulnerability-filled browser, you should deny yourself the > functionality while you write a better browser in Ada and give it away. FYI,, I seriously considered doing that years ago. I built my own mail and web servers in Ada for this reason, and browsers were the next frontier. The effort of a passable rendering engine stopped me (I wasn't going to support Javascript or plugins of any kinds, as they were precisely what I wanted to avoid in the first place, so the effort there was irrelevant). Randy. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-08 4:45 ` Randy Brukardt @ 2014-11-08 23:43 ` Shark8 2014-11-09 8:39 ` Simon Wright 0 siblings, 1 reply; 97+ messages in thread From: Shark8 @ 2014-11-08 23:43 UTC (permalink / raw) On 07-Nov-14 21:45, Randy Brukardt wrote: > "Jeffrey Carter" <spam.jrcarter.not@spam.not.acm.org> wrote in message > news:m2p0g5$4d0$1@dont-email.me... > ... >> Denying one's own comfort or convenience for the greater good is generally >> the >> essence of ethical problems. As such, rather than use an error- and >> security-vulnerability-filled browser, you should deny yourself the >> functionality while you write a better browser in Ada and give it away. > > FYI,, I seriously considered doing that years ago. I built my own mail and > web servers in Ada for this reason, and browsers were the next frontier. The > effort of a passable rendering engine stopped me (I wasn't going to support > Javascript or plugins of any kinds, as they were precisely what I wanted to > avoid in the first place, so the effort there was irrelevant). > > Randy. Ah, that's rather disappointing -- I should think a solid browser would be excellent, as for JavaScript I understand not wanting to write an engine for /that/... (I'd actually like to write a Flash-Player, but I keep running into little gotchas in the spec and getting discouraged) but I think that an Ada-based/Ada-like scripting language would be an excellent thing (esp. if it was type-/source-compatible w/ the backend [true] Ada) and provided facilities for DSA, modules, versioning on modules, and consistency-checks. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-08 23:43 ` Shark8 @ 2014-11-09 8:39 ` Simon Wright 2014-11-09 20:53 ` Shark8 0 siblings, 1 reply; 97+ messages in thread From: Simon Wright @ 2014-11-09 8:39 UTC (permalink / raw) Shark8 <OneWingedShark@gmail.com> writes: > I think that an Ada-based/Ada-like scripting language would be an > excellent thing http://sparforte.com ? ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-11-09 8:39 ` Simon Wright @ 2014-11-09 20:53 ` Shark8 0 siblings, 0 replies; 97+ messages in thread From: Shark8 @ 2014-11-09 20:53 UTC (permalink / raw) On 09-Nov-14 01:39, Simon Wright wrote: >> I think that an Ada-based/Ada-like scripting language would be an >> >excellent thing > http://sparforte.com ? I thought Sparforte was more a CLI/Shell[/OS-level] scripting language than a web-based one... I could be wrong; maybe I should check it out again. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-28 18:29 ` Jeffrey Carter 2014-10-28 18:37 ` Adam Beneschan @ 2014-10-28 19:18 ` Simon Clubley 1 sibling, 0 replies; 97+ messages in thread From: Simon Clubley @ 2014-10-28 19:18 UTC (permalink / raw) On 2014-10-28, Jeffrey Carter <spam.jrcarter.not@spam.not.acm.org> wrote: > > The Software-Engineering Code of Ethics (from the ACM/IEEE-CS) says (in part) > > "Software engineers shall ensure that their products and related modifications > meet the highest professional standards possible." > > Using error-prone, poorly designed languages would seem to violate this. Anyone > who would do work in such a language must, therefore, either not be a S/W > engineer, be an unethical S/W engineer, or think that producing substandard S/W > is ethical practice. > I am currently learning how to write a small extension for Android Firefox because the Android version of Firefox doesn't support the extension I use on the desktop version of Firefox. Should I not implement this extension (and hence do without it's functionality) simply because I can't implement it in Ada ? Simon. -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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:34 ` David Botton 2014-10-27 16:51 ` brbarkstrom 2014-10-27 20:06 ` Adam Beneschan 2014-10-28 11:34 ` tonyg 3 siblings, 2 replies; 97+ messages in thread From: David Botton @ 2014-10-27 16:34 UTC (permalink / raw) > But maybe after David is done working on GNOGA, he'll be able to build a time machine using Ada, and then we can fix the problem. Won't have time, too many people will be using Ada and asking for more features for their cool new projects for me to take time to work on has been situations. David Botton ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 16:34 ` David Botton @ 2014-10-27 16:51 ` brbarkstrom 2014-10-27 18:03 ` G.B. 2014-10-27 20:06 ` Adam Beneschan 1 sibling, 1 reply; 97+ messages in thread From: brbarkstrom @ 2014-10-27 16:51 UTC (permalink / raw) On Monday, October 27, 2014 12:34:28 PM UTC-4, David Botton wrote: > > But maybe after David is done working on GNOGA, he'll be able to build a time machine using Ada, and then we can fix the problem. > > Won't have time, too many people will be using Ada and asking for more features for their cool new projects for me to take time to work on has been situations. > > David Botton While the discussion has some interest, I haven't seen anything more than opinion. In marketing terms, we need empirical studies of the sources of "market friction" that impedes adoption of Ada. The economics of Ada programmers and of career switching certainly seem like sensible rationales. However, maybe there's a perception that all Ada is good for is building weapons systems or heart monitors. What new business opportunities do we have to offer. Personally, I'll suggest long-term information preservation of scientific data for citizen science. Can we interest science prone individuals (a distinctive market segment that includes about 2% of the population) in building ultra-low maintenance archives that could thrive because the amount of maintenance is measured in a small number of person-hours per month, rather than daily updates that require a system administrator? Could we interest people in building bare bones systems that could collect data in an untended state? Would this kind of project be of interest to community college computer science teachers - particularly since that might increase the pool of CS people trained in Ada? What other markets might we think of that offer opportunities outside of the historical core of Ada? Bruce B. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 16:51 ` brbarkstrom @ 2014-10-27 18:03 ` G.B. 2014-10-27 22:06 ` Simon Wright 0 siblings, 1 reply; 97+ messages in thread From: G.B. @ 2014-10-27 18:03 UTC (permalink / raw) On 27.10.14 17:51, brbarkstrom@gmail.com wrote: > we need empirical studies of the sources of > "market friction" that impedes adoption of Ada Among the empirically substantiated claims are: - herd instinct, - risk avoidance, and - price. If there are entities with an interest in empirical studies of adoption/rejection of Ada, who will be funding the studies? Vendors, most likely, so science is perceived to be replaced with bias. Who else? The NSA, maybe, given Tokeneer, but its reputation has suffered a bit, lately. Also, will studies be published if they affect the interest of employees at all levels who are not using Ada? Anecdotal evidence (helicopters, TTBOMK) claims that an effective use of Spark/Ada in comparison to C++ has led to a preference for the less successful C++ because of internal reporting difficulties: Two teams competed for 1 year. While Spark/Ada meant no bugs and 100% achievement (C++ meant some bugs and ~80% achievement), late use of simulators, and progress in theory first, this situation of no visible progress had led to close-to-heart-attack conditions in project management. ("Can you show me something?") ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 18:03 ` G.B. @ 2014-10-27 22:06 ` Simon Wright 2014-10-28 9:40 ` Georg Bauhaus 0 siblings, 1 reply; 97+ messages in thread From: Simon Wright @ 2014-10-27 22:06 UTC (permalink / raw) "G.B." <bauhaus@futureapps.invalid> writes: > Anecdotal evidence (helicopters, TTBOMK) claims that an > effective use of Spark/Ada in comparison to C++ has led > to a preference for the less successful C++ because of internal > reporting difficulties: Two teams competed for 1 year. > While Spark/Ada meant no bugs and 100% achievement (C++ > meant some bugs and ~80% achievement), late use of simulators, > and progress in theory first, this situation of no visible > progress had led to close-to-heart-attack conditions > in project management. ("Can you show me something?") If that was indeed a competition, I'm surprised that it lasted as long as a year. I'd have cut the SPARK/Ada project long before that. On the other hand, to plan a competition to last a year without agreeing how progress was to be monitored to the satisfaction of both management and engineers sounds pretty daft too. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 22:06 ` Simon Wright @ 2014-10-28 9:40 ` Georg Bauhaus 0 siblings, 0 replies; 97+ messages in thread From: Georg Bauhaus @ 2014-10-28 9:40 UTC (permalink / raw) On 27.10.14 23:06, Simon Wright wrote: > On the other hand, to plan a competition to last a year without agreeing > how progress was to be monitored to the satisfaction of both management > and engineers sounds pretty daft too. True, I guess that this human side of SPARK/Ada was the "something new" that had not be planned in the given circumstances: If thinking before coding is part of the SPARK/Ada process, then to deploy SPARK/Ada within a progress reporting scheme, one needs a change in setup on both sides: - a way for the team to report progress on thought processes, - a way for the recipients of reports to understand this is happening and a way to evaluate these reports. If so, then there is an important lesson to learn before even considering SPARK/Ada: "It's different, like research, only productive in the end, but quite so." (Avoid the word "research".) ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 16:34 ` David Botton 2014-10-27 16:51 ` brbarkstrom @ 2014-10-27 20:06 ` Adam Beneschan 2014-10-27 20:21 ` David Botton 1 sibling, 1 reply; 97+ messages in thread From: Adam Beneschan @ 2014-10-27 20:06 UTC (permalink / raw) On Monday, October 27, 2014 9:34:28 AM UTC-7, David Botton wrote: > > But maybe after David is done working on GNOGA, he'll be able to build a time machine using Ada, and then we can fix the problem. > > Won't have time, too many people will be using Ada and asking for more features for their cool new projects for me to take time to work on has been situations. > Build the time machine first. Then, when people start asking for more GNOGA features, you'll be able to deliver the new features before they even ask for them. -- Adam ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 20:06 ` Adam Beneschan @ 2014-10-27 20:21 ` David Botton 0 siblings, 0 replies; 97+ messages in thread From: David Botton @ 2014-10-27 20:21 UTC (permalink / raw) > Build the time machine first. Then, when people start asking for more GNOGA features, you'll be able to deliver the new features before they even ask for them. Is possible I'm already acting on hints left to myself from the future and don't realize it yet. I guess if the future has a return of unencumbered versions of GNAT available in nice packaging for all platforms, cool software written in Ada, a good solid job market for those wanting to develop in Ada and startups considering it, I did leave myself notes. David Botton ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-27 15:04 ` Adam Beneschan ` (2 preceding siblings ...) 2014-10-27 16:34 ` David Botton @ 2014-10-28 11:34 ` tonyg 3 siblings, 0 replies; 97+ messages in thread From: tonyg @ 2014-10-28 11:34 UTC (permalink / raw) Actually there is a time machine JQueryUI call. ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 2014-10-26 23:24 ` Jeffrey Carter ` (2 preceding siblings ...) 2014-10-27 15:04 ` Adam Beneschan @ 2014-10-27 17:01 ` Pascal Obry 3 siblings, 0 replies; 97+ messages in thread From: Pascal Obry @ 2014-10-27 17:01 UTC (permalink / raw) Le dimanche 26 octobre 2014 à 16:24 -0700, Jeffrey Carter a écrit : > "Lack of Ada developers" Right, this to me fall down as "Lack of good developers". It is so hard to find good software engineers that understand what a design is, know about software quality, code review, tests... Most of the easy to hire people for other languages are mostly poor coders. And frankly I do not know lot of projects that need only coders! -- Pascal Obry / Magny Les Hameaux (78) The best way to travel is by means of imagination http://v2p.fr.eu.org http://www.obry.net gpg --keyserver keys.gnupg.net --recv-key F949BD3B ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-22 ADA Programming 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-27 4:53 ` Jerry Petrey 2014-10-29 1:49 ` F-35 (was:F-22 ADA Programming) Robert Love 2 siblings, 1 reply; 97+ messages in thread From: Jerry Petrey @ 2014-10-27 4:53 UTC (permalink / raw) On 10/26/2014 11:31 AM, nathandsash@gmail.com wrote: > I read a few articles on ADA programming and came across a very interesting fact: that the F-22 was/is programmed in ADA. So this raises a few questions for me: > > 1) What version of ADA is the F-22 programmed in? > 2) What exactly were the parts of the F-22 were programmed in ADA? Were all the avionic components programmed in ADA or are there some programmed in another language like C, C++, VHDL, Verilog, etc. > > I was working for Lockheed during the time the F22 software was being developed. I worked on other aircraft using Ada (the C130J and the C27J) and we all used Ada - it was Ada83 and we sometimes shared some code with the F22 people. Ada was very successful on all those aircraft. By the way, the Boeing 777 was also done mostly in Ada as was the Rosetta spacecraft which has just recently achieved a comet rendezvous after a 10 year journey. Jerry ^ permalink raw reply [flat|nested] 97+ messages in thread
* F-35 (was:F-22 ADA Programming) 2014-10-27 4:53 ` Jerry Petrey @ 2014-10-29 1:49 ` Robert Love 2014-10-30 9:01 ` Frédéric Praca 0 siblings, 1 reply; 97+ messages in thread From: Robert Love @ 2014-10-29 1:49 UTC (permalink / raw) On 2014-10-27 04:53:56 +0000, Jerry Petrey said: > On 10/26/2014 11:31 AM, nathandsash@gmail.com wrote: >> I read a few articles on ADA programming and came across a very >> interesting fact: that the F-22 was/is programmed in ADA. So this >> raises a few questions for me: >> >> 1) What version of ADA is the F-22 programmed in? >> 2) What exactly were the parts of the F-22 were programmed in ADA? Were >> all the avionic components programmed in ADA or are there some >> programmed in another language like C, C++, VHDL, Verilog, etc. >> >> > > I was working for Lockheed during the time the F22 software was being > developed. I worked on other aircraft using Ada (the C130J and the > C27J) and we all used Ada - it was Ada83 and we sometimes shared some > code with the F22 people. Ada was very successful on all those > aircraft. By the way, the Boeing 777 was also done mostly in Ada as > was the Rosetta spacecraft which has just recently achieved a comet > rendezvous after a 10 year journey. > > Jerry Does anyone have knowledge of how software for the F-35 went? Budget, schedule and quality? Was it autocoded from UML or written in the traditonal fashion? Is there any way to compare software development success between F-22 and F-35? ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-35 (was:F-22 ADA Programming) 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 0 siblings, 1 reply; 97+ messages in thread From: Frédéric Praca @ 2014-10-30 9:01 UTC (permalink / raw) On Tue, 28 Oct 2014 20:49:56 -0500, Robert Love wrote: > On 2014-10-27 04:53:56 +0000, Jerry Petrey said: > >> On 10/26/2014 11:31 AM, nathandsash@gmail.com wrote: >>> I read a few articles on ADA programming and came across a very >>> interesting fact: that the F-22 was/is programmed in ADA. So this >>> raises a few questions for me: >>> >>> 1) What version of ADA is the F-22 programmed in? >>> 2) What exactly were the parts of the F-22 were programmed in ADA? >>> Were all the avionic components programmed in ADA or are there some >>> programmed in another language like C, C++, VHDL, Verilog, etc. >>> >>> >>> >> I was working for Lockheed during the time the F22 software was being >> developed. I worked on other aircraft using Ada (the C130J and the >> C27J) and we all used Ada - it was Ada83 and we sometimes shared some >> code with the F22 people. Ada was very successful on all those >> aircraft. By the way, the Boeing 777 was also done mostly in Ada as >> was the Rosetta spacecraft which has just recently achieved a comet >> rendezvous after a 10 year journey. >> >> Jerry > > Does anyone have knowledge of how software for the F-35 went? Budget, > schedule and quality? Was it autocoded from UML or written in the > traditonal fashion? Is there any way to compare software development > success between F-22 and F-35? Well, you can find several things about that. First, on Wikipedia page (https://en.wikipedia.org/wiki/ Lockheed_Martin_F-35_Lightning_II#Program_cost_increases_and_delays ), you will learn that software is one of the main actors in the delays. More technical information can be found there (https://www.csiac.org/ sites/default/files/ journal_files/2010_03_30_SoftwareQualityReliabilityandErrorPrediction.pdf ) from page 36 to 39. One thing linked to the other posts in this thread is the choice of C/C++ for staffing concerns. But don't count on me to make the link between software delays and the C++ choice :) Fred ^ permalink raw reply [flat|nested] 97+ messages in thread
* Re: F-35 (was:F-22 ADA Programming) 2014-10-30 9:01 ` Frédéric Praca @ 2014-10-30 9:07 ` Frédéric Praca 0 siblings, 0 replies; 97+ messages in thread From: Frédéric Praca @ 2014-10-30 9:07 UTC (permalink / raw) On Thu, 30 Oct 2014 09:01:06 +0000, Frédéric Praca wrote: > On Tue, 28 Oct 2014 20:49:56 -0500, Robert Love wrote: > >> On 2014-10-27 04:53:56 +0000, Jerry Petrey said: >> >> Does anyone have knowledge of how software for the F-35 went? Budget, >> schedule and quality? Was it autocoded from UML or written in the >> traditonal fashion? Is there any way to compare software development >> success between F-22 and F-35? > > Well, you can find several things about that. > First, on Wikipedia page (https://en.wikipedia.org/wiki/ > Lockheed_Martin_F-35_Lightning_II#Program_cost_increases_and_delays ), > you will learn that software is one of the main actors in the delays. > > More technical information can be found there (https://www.csiac.org/ > sites/default/files/ > journal_files/2010_03_30_SoftwareQualityReliabilityandErrorPrediction.pdf > ) from page 36 to 39. > One thing linked to the other posts in this thread is the choice of > C/C++ > for staffing concerns. > > But don't count on me to make the link between software delays and the > C++ choice :) > > Fred And I also forgot the latest information I got from CPPCon through these slides (http://tinyurl.com/qze7nhh ) but it's only C++ :) Fred Ps: sorry for the long URLs. Here are shorter ones that fit in one line - Wikipedia : http://tinyurl.com/pdrnoax - CSIAC : http://tinyurl.com/nvglaab ^ permalink raw reply [flat|nested] 97+ messages in thread
end of thread, other threads:[~2014-11-17 0:33 UTC | newest] Thread overview: 97+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 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 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
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox