Slashdot Mirror


Ada 2012 Language Approved As Standard By ISO

hypnosec writes "The Ada Resource Association (ARA) announced that the Ada 2012 programming language has been approved and published as a standard by the International Organization for Standardization (ISO). Announcing the development, ARA and Ada-Europe said that the new version brings with it the concept of contract-based programming, Concurrency and Multicore Support, Increased Expressiveness and Container Enhancements.'"

165 comments

  1. Wtf Slashdot? by Anonymous Coward · · Score: 0

    I click on the contract based programming link to know what the fuss is about and I get landed on a separate press release? Wtf?

    1. Re:Wtf Slashdot? by VortexCortex · · Score: 4, Funny

      I click on the contract based programming link to know what the fuss is about and I get landed on a separate press release? Wtf?

      Always read the fine print before you agree to follow a contract...

      Now you know, and knowing is half the battle.

    2. Re:Wtf Slashdot? by jbolden · · Score: 1

      The idea is that between modules you always include a security level:

      require check the input. Thus it is able to detect a bug in client.
      ensure checks the output before sending. Thus it is able to detect a bug in supplier, that is an input which gave an unexpected/unreliable/unusable output was in some way unexpected in its effects. The ensure code prevents the situation of the caller's code being more flexible and handling a weird input but creating a call with variables the responder's code is having trouble processing.

  2. Anybody using Ada? by Tough+Love · · Score: 1

    Anybody here using Ada, or has used Ada? Not implying anything, but genuinely interested. Isn't Ada one of the most crazy complex algorithm languages ever invented? Just my impression.

    --
    When all you have is a hammer, every problem starts to look like a thumb.
    1. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      I tried to learn it, but the syntax made me puke.

    2. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      Isn't Ada one of the most crazy complex algorithm languages ever invented? Just my impression.

      Hardly.

    3. Re:Anybody using Ada? by Anonymous Coward · · Score: 4, Informative

      Seen it used for some logic in a gateway that converted one network medium to another (and did a bunch of other not-so-trivial things while it was at it..).

      I wouldn't really have classified it as an "algorithm" language. If anything it's a logic language with a major focus on reliability (lots of strong typing and compile time error detection) and fault handling (really good run time error handling).

    4. Re:Anybody using Ada? by Anrego · · Score: 5, Interesting

      I've seen it. Nothing crazy or particularly unusual about it.

      Big thing with ADA is the focus on reducing errors. Very strongly typed with a lot of compile time checking and strong run time checks (and the ability to handle them gracefully). It seems to be used in environments where reliability and error free execution are critical: defense, aviation (the planes and air traffic control), etc. I've never heard of it used in the medical field but it would make sense.

      Like anything else though there is of course trade offs to support this. Plus because ADA is expensive (yes yes, I know, GNAT..) and people who know it are rare and expensive. This seems to have turned it into a niche language.

      Also the ADA community in general are an unusual bunch. There is almost an apple level fanboyism going on.. it's weird.

    5. Re:Anybody using Ada? by Anonymous Coward · · Score: 1

      for a slightly dated status of the Ada market:
      http://www.crosstalkonline.org/storage/issue-archives/2001/200103/200103-Brosgol.pdf

      and current Ada customers of the GNAT compiler (from GCC family):
      http://www.adacore.com/customers

    6. Re:Anybody using Ada? by AmiMoJo · · Score: 3, Informative

      I did it at university because they thought it would teach people good programming habits. In fact it just made us hate Ada and look for ways to subvert it, like redefining "-" to add values together.

      Ada is extremely pedantic. The idea is that it enforces good coding practices and prevents the kinds of subtle errors that can creep into more flexible languages like C. Supposedly some people in the aviation and space industries use it for mission critical stuff.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    7. Re:Anybody using Ada? by Brett+Buck · · Score: 2

      I've used it, its not any crazier or complex than anything else.

    8. Re:Anybody using Ada? by gl4ss · · Score: 5, Informative

      I used it once, for a course on parallel programming.

      the choice of ADA for that language by the faculty was stupid as hell - it's practically the only course in that university that uses ADA so the course becomes an ADA course rather than parallel programming course, the practice work is really trivial except for the fact that it's ada and it's a bitch to find ada information that isn't loaded with "IT'S MILITARY GRADE, YO!!!" bullshit for the first 10 pages of the text, making it a bitch to find out the simplest things about string manipulation and output.

      on the other hand, ADA had such sweet parallel programming mechanisms(rendezvous etc) that you didn't have to learn much anything about parallel programming, last I heard they even dropped semaphores from the course work.

      it's supposed to be really reliable though, but if every fucking book about it has to justify it's existence with that for half the book.. it just starts feeling fishy.

      --
      world was created 5 seconds before this post as it is.
    9. Re:Anybody using Ada? by davester666 · · Score: 1

      I believe I had to complete one project in Ada as part of my Computing Engineering degree, in a CompSci course that basically went through the different kinds of languages available back then. C, Prolog, Lisp, Pascal, Ada, probably a couple others.

      Prolog and Lisp were the main brain rewiring languages.

      --
      Sleep your way to a whiter smile...date a dentist!
    10. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      The TIOBE language popularity index says Ada is holding steady in 16th place - actually up from 24th place 5 years ago, but down from being the second most popular language (after C) 25 years ago.

      According to The Great Programming Language ShootOut (recently renamed to The Benchmarks Game), Ada is almost as fast as C (then again, so are Pascal and Fortran), but it's also the most verbose language in the comparison!

      Unsurprising, given how much them lazy overpaid government contract moochers hate efficiency...

      Also note that there doesn't seem to be a genuinely free implementation of Ada... (Note that LLVM DragonEgg is still based on GPLv3'ed GCC, puke.)

      The only thing to like about that language is its name!

      --libman

    11. Re:Anybody using Ada? by cheesybagel · · Score: 2
      There was much rejoicing amount the two Ada programmers left in the planet for the approval of this standard. Ooops.

      You know you are doing poorly when the major user of your product, in this case the military, has been turning away from Ada to C/C++ for the last decade. The F-35 is one example. Even parts of the F-16 software have been rewritten to C/C++ by now. There are still some use cases but all newly written software seems to be C++. Another example is SpaceX who used C/C++ to write their flight control software as well.

    12. Re:Anybody using Ada? by Anonymous Coward · · Score: 3, Informative

      I've used it in years past. The languages that I've used that help me produce code that just works, no matter how inclined I am to screw things up, are F#, Scala, Ada -- basically your strongly-typed languages keep me out of trouble. If you can handle the pricing and/or license issues, I would still recommend Ada as the best fit for procedural/OO programmers who want to work with tools that sustain quality. I'd expect that a very highly skilled team that wrote F#, Scala, Lisp, or Haskell could beat the dog out of most Ada teams for productivity over a few months or even a few years, but that over a period of many years, a good Ada team would be hard to bear for reliability and maintainability.

    13. Re:Anybody using Ada? by fitteschleiker · · Score: 1

      First language I learned at Uni back in '00.
      Haven't used it since, but I recall it being far more pleasant than the java I had to learn next.
      Just no opportunities for me to use it since, unless I wanted to work for the ADF (Australian Defence Force)

    14. Re:Anybody using Ada? by Anonymous Coward · · Score: 1

      I had to take it in college. To this day, when I see a := operator in source code, I want to close my editor and forget I ever saw it. That I saw the := operator in Visual Basic confirmed this notion.

    15. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      I think that has more to do with available talent and the cost of that talant than anything else.

      You are also seeing a lot of java used in the defense industry (I shit you not!) for this same reason.

      I think ADA is actually very well suited for military and aviation, which traditionally have been it's customers.. however because it never really expanded out (there was some expansion and GNAT theoretically made it more accessible to non-military) in a serious way, it became a high risk and expensive choice. In todays budgets, "c/c++ will do fine" or even "java will probably work" is a little too tempting.

    16. Re:Anybody using Ada? by Kergan · · Score: 1

      Anybody here using Ada, or has used Ada? Not implying anything, but genuinely interested. Isn't Ada one of the most crazy complex algorithm languages ever invented? Just my impression.

      It has a fan base, and specialized uses, if this mother of all Internet trolls from 1997 is any indicator:

      https://groups.google.com/forum/m/?fromgroups#!topic/comp.lang.ada/SHMwUTG_TZQ

      It's like... Wow, just wow, look at the size of that thread!

    17. Re:Anybody using Ada? by kensan · · Score: 2

      I have been using Ada for the last 5 years professionally and for my personal project. Most of them can be found here http://www.codelabs.ch/ or here http://git.codelabs.ch/.

    18. Re:Anybody using Ada? by oursland · · Score: 1

      FYI: It hasn't been called "ADA" for some time, simply "Ada."

    19. Re:Anybody using Ada? by kensan · · Score: 1

      John Carmack mentioned Ada in the 2011 QuakeCon Q&A session: http://www.youtube.com/watch?v=00Q9-ftiPVQ#t=822s

    20. Re:Anybody using Ada? by Mark+Atwood · · Score: 1

      I've used it. I liked it. For a long time my email sig was "The more I use C++, the more I like Ada".

    21. Re:Anybody using Ada? by oneblokeinoz · · Score: 4, Insightful

      Ada is used in lots of places where the application is safety critical or there is a need for high reliability.

      It got a lot of bad press, mostly because it originated from a request from the US DoD for a single language to do "all things". It's original MIL-STD designation was 1815 (Ada Lovelace's birth year).

      Many aircraft have their flight control systems built in Ada, eg: Boeing 777, Apache Helicopter.

      From memory the GPS Block II Satelites, not sure about the Block III.

      The original Ada 83 compilers were pretty awful - slow and produced horrible code. But they got way better. Because the language required a "program library" to store information about the compiled units (yes, GNAT showed that it wasn't really necessary), the optimizers in the middle pass and back-end had access to more information than normal, giving scope to some very effective optimizations. I've seen generated code that was as good as the best hand coded assembly - multiple levels of inlining, removal of sub-routine pre and post amble code, delayed branch slot filling, value propogation used to remove implicit and explicit tests etc.

      My biggest challenge was always the lack of support for the latest and greatest libraries, eg: X11, MOTIF and their Windows equivalents.

    22. Re:Anybody using Ada? by darkestkhan · · Score: 2

      And you know... those projects that moved from Ada to C/C++ are strangely overtime (many years by now) ONLY because of software BUGS. Seems like they got a lot of problems from that switch.

      And IMHO if your programmer can't learn enough Ada to be productive in 2 weeks then they are quite bad programmers.

    23. Re:Anybody using Ada? by Black+Parrot · · Score: 4, Interesting

      Anybody here using Ada, or has used Ada? Not implying anything, but genuinely interested. Isn't Ada one of the most crazy complex algorithm languages ever invented? Just my impression.

      I've used it a lot, but not lately. Its syntax is Pascal-like rather than C-like. However, I think Ada 2005 introduced the C++-style syntax for methods.

      It does have a lot of complex features, e.g. rendezvous for distributed programming, but you can get started by ignoring most of the unusual stuff and using a subset that is very much like Pascal, then learning the advanced features as needed.

      Supposedly when it first came out they had to invent new compiler technology to implement it, but things don't look so exotic now. Lots of integral support for real-time and distributed systems, and as others have said, verbose and an emphasis on reliability. Those last two are related: it makes you say what you mean and mean what you say. Ada programmers laugh when they hear someone describe C++ as "strongly typed".

      However, in my experience the more I worked on it the leaner my code got and the more I was able to think on the level of abstractions rather than details, e.g. by using the 'range attribute when looping over arrays.

      C# went Ada 95 one better on pragmas and attributes, but I don't know what Ada did in 2005 or 2012. I found them *really* helpful.

      Can't give much more comparison, because I'm not up on the latest features of more familiar languages either.

      Supposedly the space shuttle's on-board system was written in a subset of Ada.

      --
      Sheesh, evil *and* a jerk. -- Jade
    24. Re:Anybody using Ada? by Black+Parrot · · Score: 3, Interesting

      I've used it in years past. The languages that I've used that help me produce code that just works, no matter how inclined I am to screw things up, are F#, Scala, Ada -- basically your strongly-typed languages keep me out of trouble. If you can handle the pricing and/or license issues, I would still recommend Ada as the best fit for procedural/OO programmers who want to work with tools that sustain quality. I'd expect that a very highly skilled team that wrote F#, Scala, Lisp, or Haskell could beat the dog out of most Ada teams for productivity over a few months or even a few years, but that over a period of many years, a good Ada team would be hard to bear for reliability and maintainability.

      In my experience Ada catches things at compile time that other languages leave you to catch at run time, and catches things at run time that other languages leave you to discover when you find out you've been getting erroneous results for bog-knows how long.

      --
      Sheesh, evil *and* a jerk. -- Jade
    25. Re:Anybody using Ada? by Black+Parrot · · Score: 2, Informative

      FYI: It hasn't been called "ADA" for some time, simply "Ada."

      Never was "ADA". It was named after Ada, Lady Lovelace, whose birthday we discussed here a few weeks ago.

      --
      Sheesh, evil *and* a jerk. -- Jade
    26. Re:Anybody using Ada? by Black+Parrot · · Score: 1

      I had to take it in college. To this day, when I see a := operator in source code, I want to close my editor and forget I ever saw it. That I saw the := operator in Visual Basic confirmed this notion.

      IIRC that notation was introduced in Algol, as a compromise between the Europeans who wanted "=" and the Americans who wanted "=".

      --
      Sheesh, evil *and* a jerk. -- Jade
    27. Re:Anybody using Ada? by Black+Parrot · · Score: 1

      IIRC that notation was introduced in Algol, as a compromise between the Europeans who wanted "=" and the Americans who wanted "=".

      Sorry; that first one was supposed to look like what we commonly interpret as "less-than-or-equal-to", but it didn't HTMLify very well.

      --
      Sheesh, evil *and* a jerk. -- Jade
    28. Re:Anybody using Ada? by Black+Parrot · · Score: 1

      Also note that there doesn't seem to be a genuinely free [copyfree.org] implementation of Ada...

      Isn't it still part of the GNU Compiler Collection?

      --
      Sheesh, evil *and* a jerk. -- Jade
    29. Re:Anybody using Ada? by aaaaaaargh! · · Score: 2

      I'm using it for time-critical stuff. It's complex and has some arcane syntax features, but it's still easier than C++ and a lot safer than C and C++. One problem is the lack of free or affordable compilers, there is not enough competition to GNAT and AdaCore makes sure that the *really* free FSF version with MGPL lacks essential features, whereas their own free versions are useless for anything but GPL'ed software.

      Overall it's a very powerful and fast language that I would recommend for real software development (as opposed to gluing together other people's libraries).

    30. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      Isn't Ada one of the most crazy complex algorithm languages ever invented? Just my impression.

      Ada 83 looked completely insane compared to the simplicity of other languages available at the time, such as C. Initial Ada compilers were slow, produced inefficient code and were hugely expensive.

      However time moved on. C begat C++ which began to add more and more features. Meanwhile the Ada revision process was more restrained, with new features such as OO being carefully integrated with the existing strong type system. Ada had generics (templates) from the beginning, but even if it hadn't I don't think you would have had the C++ situation where they kept adding template features without any ultimate goal in mind, until one day someone proved that C++ templates had become Turing complete. The Ada people seem to spend a lot more time than the C++ people on understanding the full consequences of any changes they make.

      These days, the Ada standard is actually shorter than the C++ standard by some margin. I think some perceived complexity comes from the strict typing and scope rules, but to be honest the equivalent program in C++ would probably be 'undefined behaviour' or 'implementation dependent'. Certainly if you try to use some of the Ada specialist annexes such as the ability to partition a program across several computers things get hairy, but it would be equally hairy in C++.

    31. Re:Anybody using Ada? by KiloByte · · Score: 1

      Eh? Since when the license on the compiler restricts you from using it for non-GPLed software?

      And if you want to see where anti-GPL FUD leads to, just try to compile for Mac on another system -- or even a different version of OS X.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    32. Re:Anybody using Ada? by mrbester · · Score: 1

      "Its syntax is Pascal-like rather than C-like."

      This was the only annoying thing I found when using it at university, having already learnt Pascal: the number of times I wrote what I thought was valid Ada and wondering why it didn't work only to realise I'd written Pascal instead. Purely my fault, there was nothing wrong with the language.

      --
      "Wait. Something's happening. It's opening up! My God, it's full of apricots!"
    33. Re:Anybody using Ada? by Anonymous Coward · · Score: 1

      turning away from Ada to C/C++ for the last decade. The F-35 is one example.

      I'm not overly sure that is a good example. To my understanding, the F35 is plagued by software issues, delaying it's development and raising costs by the year.

    34. Re:Anybody using Ada? by mvdwege · · Score: 1

      I write the occasional hobby project in it.

      Contrary to what people tell you, it is not a complex language at all, it's a fairly standard Algol descendant. It does have an intricate type system that you must get used to to get anything done, and it is a bit wordy, using actual words as identifiers for everything except for some operators, but aside from that it's a very elegant language, and surprisingly fun to work with.

      --
      "I know I will be modded down for this": where's the option '-1, Asking for it'?
    35. Re:Anybody using Ada? by terec · · Score: 0

      Big thing with ADA is the focus on reducing errors

      Ada forces programmers to think about errors, but you pay a high price for that. If you have DoD-like budget, well-specified requirements, a project spanning decades, high reliability requirements, and a large pool of mediocre programmers, Ada is a good choice because that's what it was designed for. But most products are created by small teams of programmers, have a lifetime of a few years, don't need to be anywhere as reliable, and need to be able to accommodate new requirements on short notice.

    36. Re:Anybody using Ada? by serviscope_minor · · Score: 1

      On a side note: is it just me or has google decided to get rid of nested comments? If so, wow. That's another great misfeature from google. Makes their "products" seem so trustworthy.

      --
      SJW n. One who posts facts.
    37. Re:Anybody using Ada? by Yoda222 · · Score: 1

      I have used Ada professionally. I was working at Thales Alenia Space. I have mostly done software testing, the (satellite) software was in Ada, the tests I wrote were not in Ada (but in a shitty specific language...) but I worked a lot with developers to identify the bugs. I have worked a few months as a developer, where I have directly used Ada. But a lot of the Ada features are disabled on the embedded software for performance. (stuff like range checking and so)

      I'm no more at Thales, but I am working in a satellite operator company, and a lot of our spacecraft use Ada. (but I don't see any code in my current job ;-) ) These GEO plateform use Ada: Thales (ex Alcatel) SpaceBus, Astrium Eurostar, Boeing (ex Hugues) 601/702. I'm not sure for the others.

    38. Re:Anybody using Ada? by mvdwege · · Score: 4, Insightful

      Let me add a note for the community: yes, they are almost as bad as Apple fanbois when it comes to advocating Ada, but aside from that it's the friendliest community I've ever met on the Internet.

      When I as a hobbyist, who dabbles a bit in Ada, can ask questions and get answers from professional industrial programmers with multiple large mission-critical systems to their name, and get these answers in a friendly supportive tone, I think I am justified to say that this is a nice community.

      --
      "I know I will be modded down for this": where's the option '-1, Asking for it'?
    39. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      Eh? Since when the license on the compiler restricts you from using it for non-GPLed software?

      And if you want to see where anti-GPL FUD leads to, just try to compile for Mac on another system -- or even a different version of OS X.

      To produce an executable from Ada source the compiler has to include a (small) run-time that handles things like the multi-tasking and elaborating all the library units (kind of like executing a constructor subroutine for the library). In addition, generics (templates) are also necessary for almost all Ada programming other than trivial stuff.

      Adacore releases a pure-GPL release of GNAT (the Ada GCC front-end) that is fairly up-to-date, but because the associated generic code and run-time are GPL any binary produced becomes covered by the GPL. They also send changes upstream to the 'main' GCC people under a modified GPL that explicitly excludes the run-time and generics from the definition of 'derived work' so you can compile non-GPL binaries. However the main-line version of GNAT is further behind in features and bug fixes.

    40. Re:Anybody using Ada? by Yoda222 · · Score: 1

      He is speaking about copyfree, for which GNU GPL is not free enough, because you have restrictions on redistribution. But yes, GNAT is GPL and support Ada 2012 (I don't know if the support is complete)

    41. Re:Anybody using Ada? by lindi · · Score: 1

      I've spent two years porting Ada code from VMS to Linux. Overall it was a nice experience but compile times were horrible on our VMS system. Getting a syntax error after 15 minutes of waiting is kind of frustrating :)

      GDB support for Ada tasks was also pretty bad. I filed several bugs like http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37245 .

    42. Re:Anybody using Ada? by Anonymous Coward · · Score: 0, Informative

      Yes, and from reading my message (and the link) attentively it's clear that I don't consider GPL (much less GPL v3) to be "genuinely free" software - and neither should you.

      Ada compiler implementations that I'm aware of:

      * GNAT - part of GCC, restrictively licensed as (GM)GPL

      * SPARK (dialect?) - GPL v3

      * A#.net - GPL, and requires Mono (part (L)GPL v2) or MS .NET

      * AdaCore (now also encompasses AdaMagic) - proprietary

      * Aonix ObjectAda - proprietary

      * Green Heels Software - proprietary

      (Am I missing any?)

      The short list of major languages without a fully-functional copyfree implementation includes: Perl, C#/VB.NET, Java (and Groovy / other languages that require the JVM), Delphi (and other dialects not covered by copyfree Pascal compilers, which are ancient), Erlang, and Ada. These are the languages that people should avoid - which isn't much of a loss, because all of them have already been surpassed by better-designed languages that come with no coercive demands attached.

      A language without a copyfree implementation is not a free language - not just because of the severe practical restrictions of how it can be used, but for philosophical / ethical reasons as well!

      --libman

    43. Re:Anybody using Ada? by aaaaaaargh! · · Score: 2

      No FUD at all. Ada is worthless without the runtime. The license of the GNAT Ada runtime forces you to put programs compiled with the GPL version (mainly developed by AdaCore) under the GPL, too. The FSF version is licensed under the MGPL, a modified version of the GPL that allows you to use the runtime in non-GPL'ed software. However, the MGPL version lacks some essential libraries.

      The restrictive licensing of GNAT is probably one of the major reasons why Ada never became very popular for general purpose programming. It's a great language but lacks compilers.

    44. Re:Anybody using Ada? by Anonymous Coward · · Score: 1

      If Syntax puts you off, I suggest you switch profession. Sorry if I am tough to you.

    45. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      No, it is not "weird" to appreciate correctness and reliability. I would call it "weird" how C++ and Java developers accept bags of fleas as software that can be shipped, though.

    46. Re:Anybody using Ada? by jbolden · · Score: 1

      Absolutely. Ada was designed to be like mainstream languages it has a small and gradual learning curve. I don't understand why the sorts of companies that want to use a mainstream language and want exceptional reliability don't use it.

    47. Re:Anybody using Ada? by jbolden · · Score: 1

      Well no the issue is = (assignment) vs. == logical test. == corresponds to what we use = for in math. So it makes more sense to have = be a logical operator and use something else for assignment.

    48. Re:Anybody using Ada? by cheesybagel · · Score: 1

      SpaceX seems to be moving quite quickly. Plus you forget how protracted the F-22 development was and that was in Ada. If you keep piling on more and more requirements after the work started of course the project is going to be late.

    49. Re:Anybody using Ada? by Anonymous Coward · · Score: 2, Insightful

      ..But most products are created by small teams of programmers, have a lifetime of a few years, don't need to be anywhere as reliable..

      And that, dear readers, is why I really hate what passes for programmers nowadays.
      The oldest code I've wrote that I know of which is still currently in daily use is now at the 22 years old mark, was done in assembly, was only really intended to 'work' for a year at most (was done for a R&D prototype, they kept the code in for the production models.)

      (And, yes, I have, for my sins, dabbled in Ada)

    50. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      I used it extensively in an aerospace application where, "a single error could kill hundreds of people". (Pilots that have turned this box off have killed hundreds of people). Ada allows the enforcement of rules that minimize making stupid mistakes. It allows one to focus on solving the real world problem rather that fretting over whether or not the language let you do something "creative and elegant" that ultimately broke something else. So what if it feels Military if it gets the job done. Folks that have been fed C & C++ pablum when they were infants don't like the taste and will find other work.

    51. Re:Anybody using Ada? by Midnight+Thunder · · Score: 1

      Anybody here using Ada, or has used Ada? Not implying anything, but genuinely interested. Isn't Ada one of the most crazy complex algorithm languages ever invented? Just my impression.

      That would be Scala ;) Ada has resemblances to Pascal in certain aspects.

      --
      Jumpstart the tartan drive.
    52. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      My company uses it for programming embedded train safety systems. We still follow the Ada95 standard, after a decision made by the company some time during the 90-ies. Unlike other IT-industries, the train industry is not moving very rapidly forward in terms of technical solutions.. mostly due to the large costs (money & time) involved in replacing an existing train train signalling solution.

      I don't know what to say about Ada really, other than it works well for the types of systems we are delivering. It's strongly typed, the syntax is easy to read/understand. We're restricted by our coding standard to only use a sub-set of the language (for example we don't use dynamic memory allocation as a measure to improve performance stability), so I can't say much about these other language features.

    53. Re:Anybody using Ada? by KiloByte · · Score: 1

      Ok, thanks for clarification. It's still the license of the runtime rather than the compiler that's a problem, but indeed both are in one package.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    54. Re:Anybody using Ada? by Maury+Markowitz · · Score: 2

      "Anybody here using Ada, or has used Ada"

      A LONG time ago. This was in the period long enough after its release that people were getting used to what worked and what didn't. Like C, Ada has any number of constructs that you don't really use because they tend to make things harder. If you used its base functionality you had what was basically Pascal with very strong error checking, and that I didn't mind.

      But throughout my (limited) use, I couldn't help but shake the feeling that Ada *really* wanted to be an OOPS language. For instance, there's constructs in the language itself (as opposed to libraries or such) that return the bounds for variables. That way you can do bounds checking in code using those constructs. The difference between that construct and a dot-syntax OOPS language is basically zero, yet they put all of this machinery into the basic system but not the rest that would give it true OOPS functionality (at the time, I suspect this has changed).

      If anything is "wrong" with Ada, it's that it was defined maybe 3 or 4 years too soon. The structured programming of Pascal was clearly a major input, but at the time of definition the fact that OOPS was the future was still being *heavily* debated. I do wonder what a post-OOPS Ada would have looked like.

    55. Re:Anybody using Ada? by RabidReindeer · · Score: 2

      ..But most products are created by small teams of programmers, have a lifetime of a few years, don't need to be anywhere as reliable

      Because, after all, who cares if people's credit card numbers, SSN's, home phone numbers and other items leak out all over the Internet? Just as long as the software got written fast and cheap.

    56. Re:Anybody using Ada? by Sulphur · · Score: 1

      I've seen it. Nothing crazy or particularly unusual about it.

      Big thing with ADA is the focus on reducing errors.

      When $(Famed_Programmer) heard that $(they) intended to produce 10 million lines of error free code, he left the project.

      If lives depend on code working, it had better run reliably. If a part of the code has a problem, then deal with it without simply quitting.

    57. Re:Anybody using Ada? by Bill_the_Engineer · · Score: 1

      Also the ADA community in general are an unusual bunch.

      Yea those people forcing wheelchair access in public spaces are a rowdy bunch.

      There is almost an apple level fanboyism going on.. it's weird.

      Could be worse... It could have a python level of fanboyism.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    58. Re:Anybody using Ada? by Jedi+Alec · · Score: 1

      I have found over the years that in a lot of communities there's plenty of people that will happily spend time answering questions, provided said questions are asked in the right manner.

      From my experience, the way a community responds to a question often tells more about the individual asking the question than the community itself.

      --

      People replying to my sig annoy me. That's why I change it all the time.
    59. Re:Anybody using Ada? by jmhobrien · · Score: 3, Insightful

      I did it at university because they thought it would teach people good programming habits. In fact it just made us hate Ada and look for ways to subvert it

      That's a shame. I was also introduced to Ada at university and, while I accept that the syntax is pedantic, it was demonstrably extremely useful. Now I just see it as another tool which I could competently apply to problems where high reliability is mandatory and distributed/concurrent algorithms are involved.

      --
      Where is moderation: -1 False?
    60. Re:Anybody using Ada? by stevew · · Score: 2

      This very argument happens in chip design where we have two languages VHDL & Verilog. VHDL is very much done in the Ada Model and is a direct descendant where Verilog comes by way of C. There was a language shoot out back in the late 90s when this argument had more life with similar results. Verilog lets you get things done in about half the amount of text and about twice as fast as writing the equivalent in VHDL. Verilog gives you every chance to mess-up, i.e. it doesn't hold your hand. VHDL smothers you with compile-time warnings, Interface checking, etc.

      Both have a large number of followers now-a-days. VHDL is strong in the FPGA community (pushed by Xilinx) and in Europe. Verilog has more adherents in the US & Asia.

      What it comes down to in my line of work is time - Verilog + Linter is faster than VHDL in getting the job done. (IMHO!)

      --
      Have you compiled your kernel today??
    61. Re:Anybody using Ada? by iluvcapra · · Score: 1

      Huh, I wonder--- does anyone know if there is a web app framework for Ada?

      --
      Don't blame me, I voted for Baltar.
    62. Re:Anybody using Ada? by dkf · · Score: 1

      Ada is worthless without the runtime.

      That's true for virtually all languages; without a runtime, all they can do is spin on the spot and do pointless things like simple calculations that they can never tell anyone else about.

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
    63. Re:Anybody using Ada? by Greyfox · · Score: 2

      I looked at it briefly in college. Everyone I've seen in the "real world" that needs that level of reliability uses C++. You catch a lot of stuff at compile time in C++ that would make run time errors in other languages. This was one of Ada's big selling points too. Strong typing might be a pain in the ass for your average programmer, but it's still around for a reason.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    64. Re:Anybody using Ada? by KZigurs · · Score: 1

      These are the languages that people should avoid - which isn't much of a loss, because all of them have already been surpassed by better-designed languages that come with no coercive demands attached.

      [Citation Needed]

    65. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      But most products are created by small teams of programmers, have a lifetime of a few years, don't need to be anywhere as reliable, and need to be able to accommodate new requirements on short notice.

      I'd love to hear what filesystem developers would have to say to you. After all, without a reliable filesystem, you can kiss all of the products that "don't need to be anywhere as reliable" goodbye, assuming you have the chance.

    66. Re:Anybody using Ada? by chronokitsune3233 · · Score: 2

      One hosted using Google Code (last work appears to be have been done in May 2012):

      Ada Web Application is a framework to build web application.

      • AWA uses Ada Server Faces for the web framework. This framework is using several patterns from the Java world such as Java Server Faces and Java Servlets.
      • AWA provides a set of ready to use and extendable modules that are common to many web application. This includes managing the login, authentication, users, permissions.
      • AWA uses an Object Relational Mapping that helps in writing Ada applications on top of MySQL or SQLite databases. The ADO framework allows to map database objects into Ada records and access them easily.
      • To avoid the blank page syndrome, the Dynamo application generator is provided to quickly create a new project, add a new database model or add a presentation page.

      Here's another one from the AdaCore site:

      What is AWS ? First of all, AWS stands for Ada Web Server but it is more than just another Web server...

      AWS is a complete framework to develop Web based applications. The main part of the framework is the embedded Web server. This small yet powerful Web server can be embedded into your application so your application will be able to talk with a standard Web browser like Microsoft Internet Explorer or Firefox for example. Around this Web server a lot of services have been developed.

      --
      I have been a captive in America my entire life. Everybody and everything uses customary units instead of metric.
    67. Re:Anybody using Ada? by Anonymous Coward · · Score: 1

      It's used heavily in aerospace. I know Boeing uses Ada in the 777 and 787 airliners. I work in avionics development, and I use C++ almost exclusively, but I can't say it's a good language for the job. I have a suspicion that C++ is used because it's a lot easier to find inexpensive programmers from India who are experienced with C++, rather than Ada, since C++ is also used extensively for desktop applications development. Not that I have anything against Indian workers- they are just doing their job, and I can't blame them for making money.

      Back on topic- the small amount of reading and programming I've done in Ada leads me to believe it is a very safe language. Strongly typed. Variables are pre-declared at the beginning of procedures. I don't think there is dynamic memory allocation, and if there is, it is likely discouraged and rarely used. Same thing with access variables (analagous to pointers), They are discouraged in the language. It also has checks for input variable ranges- i.e. you can specify that your input variable to a procedure (for example, an angle) has to be within a certain range, like -180 to 180.

    68. Re:Anybody using Ada? by perry64 · · Score: 1

      I got an MSCS from the Naval Postgraduate School when Ada was "required" for all DoD projects, so it was the intro programming language then. I haven't touched it since 1993, so I can't comment on current version of it, but there are still several people at NPS who swear by it, and, as another commenter said, it is an Apple level of fanboy-ism. Anyone who doesn't like Ada just doesn't get it and needs to be preached to. The main argument for Ada is that it contains many mechanism to prevent errors, so that the code produced will be much safer and reliable, and thus should be used in any system where failure causes significant problems, i.e., aircraft, weapons, etc. There was one faculty member at NPS who would send an e-mail any time a military project was held up by software delays and basically say, "Had they used Ada, this wouldn't have happened." No acceptance of the fact that Ada doesn't protect against logical errors, or that since the libraries are much scarcer than other languages, they probably wouldn't have gotten anywhere near completion had they used Ada. Not to mention needing pretty much EVERY Ada programmer on the planet for any project bigger than "Hello World."

    69. Re:Anybody using Ada? by Ada_Rules · · Score: 1

      I use it all time The complexity assertion is a bit confusing. I am not sure by what measure you'd rate it more complex than languages like Java. I've hired lots of engineers out of college and none has ever had a problem learning it. There are certainly some bad habits from other languages that carry over in their early work but generally not that big of a deal.

      --
      --- Liberty in our Lifetime
    70. Re:Anybody using Ada? by defaria · · Score: 1

      Actually there are Ada bindings to things like X11. I know. I did one for HP's Ada in 1989!

    71. Re:Anybody using Ada? by SvnLyrBrto · · Score: 1

      Yes.

      At one point, the DoD required that software written for the military be written in Ada. So a decent number of schools could jack up the placement rates of their computer science or software engineering majors by teaching it and buddying up with the defense industry recruiters. I went to one of those colleges, and the majority of the early programming classes were all Ada.

      At some point, though, the DoD decided to get with the times and dropped the Ada requirement. My first job out of college was mostly to take an existing Ada codebase and re-write it in C or C++, as appropiate.

      --
      Imagine all the people...
    72. Re:Anybody using Ada? by Brian+Feldman · · Score: 1

      Government projects like that tend NOT to use libraries and so not get benefit from a more popular language either.

      --
      Brian Fundakowski Feldman
    73. Re:Anybody using Ada? by eliphalet · · Score: 1

      That's Green Hills.

    74. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      No one really "teaches" Ada. As in explaining what they are doing before they do it, and why. Every class covers too much material, too fast. Every book fails full coverage. There really isn't a course succession in Ada. (Case in point, when I went to a university, they did Data Structures in Ada, computer graphics in Java, numerical methods in Ada but using notes when they taught it in FORTRAN... Ada wasn't consistently used or taught among all the courses.)

      I say again--there aren't many good books on Ada. Those that cover the basics of the language well (e.g., Skansholm) stop dead right before critical recursive data types such as Binary Trees. Those that cover ADTs (predecessor to OOP) specifically in Ada (e.g., Hillam) have multiple errata in the text and are highly based on generics rather than anything specific and immediately compilable and runnable. Those that provide an encyclopedic reference of Ada (Gonzalez) don't have very many worked examples beyond simple textbook type code fragments for many of the statements and functions--then again, the part of the Gonzalez book is the very terse and quite unable to be learned from Ada LRM... another book that provides a worked example that can be immediately compiled and modified for learning needs to supplement the LRM, or the LRM needs to be updated with worked, compilable, runnable examples.

      Furthermore, the job listings show no real demand for Ada. Yeah, okay, it may be MIL-SPEC-blah-blah-blah but even job listings from government related companies such as Qinetiq aren't showing an explicit demand for Ada.

    75. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      Ada can help prevent logic errors--there are simple extensions that allow you to prove the correctness of your program.

    76. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      If Google is getting rid of nested comments in Groups, that it a good thing. Although it may make a Usenet discussion read more like a flat threaded discussion board, it will also get rid of the Show Quoted Text and Hide Quoted Text entries that end up in replies to Usenet posts.

      I'd rather they just get rid of Groups as it is just riddled with spam for newer posts, the older posts are well hidden due to the algorithm favoring flame and ridicule posts to the top of the Groups search results, and some are misusing Groups as some lazy background checker to try to disqualify job candidates or get someone already employed fired. I can't think of anything useful I've searched for in groups lately.

    77. Re:Anybody using Ada? by larry+bagina · · Score: 1
      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    78. Re:Anybody using Ada? by larry+bagina · · Score: 1

      It's funnier as a compromise between "=" and "=".

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    79. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      We use it a lot to build simulations.

      Here's an online simulation of the Belgian economy, written using the Ada Web Server.

      Several more here.

      Ada is a wondefully expressive language, with lots of nice libraries, and it's well worth a look if you build, for example, simulations, financial systems and the like.

    80. Re:Anybody using Ada? by MichaelSmith · · Score: 1

      Yes Ada is very big in air traffic control and defence. On the system I worked on it was used for all the back end processing, pretty much right up to the user interfaces which are in C and Java. Another system I heard about has the UI in Ada as well.

    81. Re:Anybody using Ada? by Pembers · · Score: 1

      At the university I attended, it was the standard language for all the courses that involved programming or software design. That may have been because the head of the computer science department was on one of the committees that designed it. This was about 20 years ago. I was aware that it's still used for real-time applications, particularly military and aerospace, but I'm mildly surprised that anyone still cares about it enough to develop a new version of the standard. I applied for a programming job at a defence company that used it, circa 1995, but haven't had anything to do with it since.

      I wouldn't describe it as complex, particularly, but it is pedantic and verbose, requiring you to prove that you know what you're doing. You have to spell out a lot of things that other languages assume by default or leave up to the specific implementation. For example, there's a statement that explicitly does nothing, like NOP in assembly languages, so you can say things like "if condition then do something else null; end if;" so that it's clear to the reader that you definitely want to do nothing if the condition is false - you didn't just forget about it. Another quirk is that if you want to mix AND and OR in a Boolean expression, you have to use brackets to show what order you want things evaluated in. "x or y or z" is fine, as is "x and y and z", but "x or y and z" is a syntax error - you have to write "(x or y) and z" or "x or (y and z)". The reasoning is that other languages differ as to whether the two operators have different precedence or the same precedence, so you might expect it to evaluate one way and find that it evaluates the other way.

      Fun fact - Oracle's PL/SQL, the language in which you write triggers and stored procedures for the database, owes a lot of its syntax and semantics to Ada.

    82. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      At least one FFDRC no longer uses VHDL in the backend since VHDL's highly verbose netlists take up too much disk space and are harder to edit. I really wish SystemVerilog allowed strong typing on a per-module basis. It's wonderful for highly arithmetic blocks like DSP algorithms but amazing nonsense for control logic.

    83. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      Citations are needed for arguments that rely on external sources. The "languages that people should avoid" part of my statement is clearly an opinion. I have casually inserted some links that clarify and defend that opinion in my previous posts, and that is as far as that argument can be backed. There's no neon sign in the sky that confirms the negative consequences of copyleft licenses - one needs to look at the arguments and use one's own judgment.

      As for languages without a copyfree implementation being on decline - there's no foolproof means of measuring programming language popularity, but the TIOBE Index that I've already linked to is one indicator. A few years ago copyfree alternatives simply weren't available. C / C++ / ObjC now have a copyfree implementation in LLVM / Clang, among others. JavaScript (which is present in every modern phone and other Web-enabled client device) now has a copyfree implementation, Google's V8, which is also the fastest. The hottest server-side trend is Node.JS (with CoffeeScript, etc) - pure copyfree! PHP and Python are nearly copyfree (increasingly so with alternative implementations like PyPy), and Ruby has recently switched to a copyfree license. Perl remained copyleft, and is gradually being left behind... The only exception to this trend that I can see is Java, where Oracle used GPL and other related restrictions to destroy the competition (i.e. Google Java / Apache Harmony).

      --libman

    84. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      Which part of "most" do you have trouble understanding?

    85. Re:Anybody using Ada? by terec · · Score: 1

      The oldest code I've wrote that I know of which is still currently in daily use is now at the 22 years old mark

      The oldest code I have written that's in production today is older than that; there's a chance you may actually have a few lines of my code on your machine.

      And that, dear readers, is why I really hate what passes for programmers nowadays.

      Give it another decade or so of experience and perhaps you too will figure out why languages like Ada make the wrong tradeoffs.

    86. Re:Anybody using Ada? by terec · · Score: 1

      None of Ada's facilities have any bearing on the common kinds of bugs that cause web applications to leak private information. And the time you spend satisfying Ada's pointless static checks is time you don't have for developing meaningful security audits and test cases. So, given the same budget and time constraints, it is pretty much a given that an Ada based web application would be worse, not better, in terms of privacy and security. Ada tried to address a problem that really existed in the 1980's: the lack of an efficient, strongly typed language. That ceased to be a problem long ago, and Ada is kind of a relic now.

    87. Re:Anybody using Ada? by RabidReindeer · · Score: 1

      None of Ada's facilities have any bearing on the common kinds of bugs that cause web applications to leak private information. And the time you spend satisfying Ada's pointless static checks is time you don't have for developing meaningful security audits and test cases. So, given the same budget and time constraints, it is pretty much a given that an Ada based web application would be worse, not better, in terms of privacy and security.

      Ada tried to address a problem that really existed in the 1980's: the lack of an efficient, strongly typed language. That ceased to be a problem long ago, and Ada is kind of a relic now.

      I really cannot agree. Historically, one of the most common ways to pwn a machine was to exploit buffer overruns. Languages such as Ada and Java are virtually immune to that sort of exploit.

      You are also assuming that time spent making the compiler happy is time "lost". I came to quite a different conclusion long ago. I have worked with a large number of languages, and my observations are that with the possible exception of assembly language, the amount of time and effort to make a secure, robust application is more or less independent of the programming language used. The difference lies in where you spend your time.

      Sadly, management these days doesn't take that into account, and they see late-binding languages as "more productive" because they get pixels in front of eyeballs faster. That's a good thing for prototyping, where you don't need security or robustness, but not so good for more critical apps. Because there's less checking done at design/compile time, sloppier code slips in, and it blows up in production. In some cases, the defective code can lie dormant for months, even years before 4th of July occurs.

      I prefer my embarrassments to happen at my desk, not where the entire planet can see them, so I favor strongly-typed languages, although I realize that I'm swimming against the tide at the moment. Strongly-typed languages are no cure-all, but because I know that if it compiles it's going to run, I'm freed up to worry more about the more problematic aspects of the system.

    88. Re:Anybody using Ada? by terec · · Score: 1

      I really cannot agree. Historically, one of the most common ways to pwn a machine was to exploit buffer overruns. Languages such as Ada and Java are virtually immune to that sort of exploit.

      Sounds like you agree completely: Ada addressed a need in the 1980's that doesn't exist anymore; almost all our languages these days are type safe, and many have excellent static type systems that run rings around Ada's.

      the amount of time and effort to make a secure, robust application is more or less independent of the programming language used. The difference lies in where you spend your time.

      Here too you are pretty much saying what I'm saying: in statically typed languages, the compiler catches a lot of stuff for you, in dynamically typed languages you need to write more tests to achieve the same level of fault detection, and it ends up taking about the same amount of time overall. That means that statically typed languages are good for production but not prototyping, while dynamically typed languages are good for both prototyping and production, and furthermore let you transform a prototype into a production system gradually by adding tests. Anyway, use statically typed languages if you like, but Ada's static type system is really obsolete and unnecessarily cumbersome. (And please don't use "strong typing" when you mean "static typing".)

    89. Re:Anybody using Ada? by inline_four · · Score: 1

      This is quickly turning into yet another language holy war, but why not? It's fun.

      I really cannot agree. Historically, one of the most common ways to pwn a machine was to exploit buffer overruns. Languages such as Ada and Java are virtually immune to that sort of exploit.

      Sounds like you agree completely: Ada addressed a need in the 1980's that doesn't exist anymore; almost all our languages these days are type safe, and many have excellent static type systems that run rings around Ada's.

      the amount of time and effort to make a secure, robust application is more or less independent of the programming language used. The difference lies in where you spend your time.

      Here too you are pretty much saying what I'm saying: in statically typed languages, the compiler catches a lot of stuff for you, in dynamically typed languages you need to write more tests to achieve the same level of fault detection, and it ends up taking about the same amount of time overall. That means that statically typed languages are good for production but not prototyping, while dynamically typed languages are good for both prototyping and production, and furthermore let you transform a prototype into a production system gradually by adding tests. Anyway, use statically typed languages if you like, but Ada's static type system is really obsolete and unnecessarily cumbersome. (And please don't use "strong typing" when you mean "static typing".)

      Having come from a long personal history with statically typed languages and then landed in a Python project (using it in a variety of ways and systems), I would say that while there's certainly a difference in workflow and approach, it's not as drastic as one might think. As much as people espouse Python's dynamic nature, ever more professional teams adhere to rigid principles that include lots of static analysis (unit testing, dedicated static analysis tools, REPL, etc.).

      And at the same time, I saw lots of leaky abstractions and twisting of the type system by some of the frameworks, bleeding of run-time needed components into configuration and other artifacts not visible to the compiler and so on. And so conventions arise and the stack grows with ever more sophisticated frameworks.

      The fact is, modern computing is both easier and harder. It's easier because we have amazing advances in hardware and software available to us. There are tons of libraries, frameworks, and components that can be put together in lots of interesting ways. Operationally, there are myriads of tools available as well. But it's also harder because making sense of it all isn't so simple and because the pace of development that is expected of us is higher too. Many organizations have built up a higher appetite for risk in dealing with the latest technologies in search of an edge. This isn't only typical of start-ups, as the pressure is on for everyone now. The next great database, analytics engine, server, framework, or language could come equally from Microsoft or Google, as well as from some unknown 17-year-old's home in Netherlands.

      The principals of building successful systems now are rooted in computer science and good operational practices. Languages are important, but not the be-all-end-all of a team's success. Openness to alternative approaches and a willingness to look under the hood to understand what you're producing are equally important. Don't get me wrong, I love static analysis and compilers and good type systems are the place for it. It can be done elsewhere, but feels icky to me. But icky or not, it won't stop me from solving the problem at hand if I can help it.

      --
      Alexey
    90. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      My bad.

      --libman

    91. Re:Anybody using Ada? by KZigurs · · Score: 1

      Pathetic.

      I don't care about your religious view with regards to 'free' being the holy grail and everything else not worth even considering, I was rather more curious about the better-designed part...

    92. Re:Anybody using Ada? by Anonymous Coward · · Score: 0

      You've misunderstood my position. I have no beef with proprietary software. GPL's problem is that it promotes government overreach and violence, while hypocritically calling itself "free software". It is a major wrong turn in the evolution of FLOSS. I want my software stack to be an extension of my integrity as a person, so I refuse to use things that don't meet my ethical standards. There is now an emerging trend for more copyfree software, and I want to be a part of it.

      --libman

    93. Re:Anybody using Ada? by KZigurs · · Score: 1

      Okay, I can agree with that. Still curious about which languages you'd consider to be better designed and more suited for the task.

  3. Initialism by 1u3hr · · Score: 1
    "the concept of contract-based programming, Concurrency and Multicore Support, Increased Expressiveness and Container Enhancements.'"

    Is Beginning Every Word With A Capital Letter Mandatory In Ada?

    1. Re:Initialism by oursland · · Score: 1

      Amusingly, yes. The language standard adhered to is to capitalize each word AND separate words by underscores. To make matters a little more "interesting", the language is case-insensitive, so the capitalization is only a (unnecessary, imo) luxury for the reader.

    2. Re:Initialism by Yoda222 · · Score: 1

      At Thales Alenia Space the coding rule says: Ada keywords in lower case. Everything else in upper case. THAT WAS AWFUL TO READ, IT'S LIKE SOMEONE IS YELLING AT YOU. YOU WANT A break AFTER A FEW MINUTES. It was also awful to write, so after some times I wrote a script to change everything from normal programming style to this crazy idea. Nobody knows why this rules was there, I guess that the one who write this rule didn't want to buy new glasses.

    3. Re:Initialism by lindi · · Score: 1

      Fortunately gcc has support for the expected style (using the -gnatyy flag).


      with ada.text_iO;
      use ada.text_io;

      procedure hello is
      begin
              put_line("hello world");
      end hello;

      fails with


      hello.adb:1:06: (style) bad casing of "Ada" declared at ada.ads:16
      hello.adb:1:10: (style) bad casing of "Text_IO" declared at a-textio.ads:48
      hello.adb:2:05: (style) bad casing of "Ada" declared at ada.ads:16
      hello.adb:2:09: (style) bad casing of "Text_IO" declared at a-textio.ads:48
      hello.adb:6:05: (style) bad indentation
      hello.adb:6:05: (style) bad casing of "Put_Line" declared at a-textio.ads:263

    4. Re:Initialism by sconeu · · Score: 1

      If I remember correctly MIL-STD-1815, otherwise known as Ada83 had all its sample code written that way, and I suspect Thales just went with the flow.

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
  4. the only important link by RedHackTea · · Score: 4, Informative
    --
    The G
  5. crickets by terec · · Score: 0

    cricket ... crickets ... crickets

  6. Ada 2012? by Anonymous Coward · · Score: 0

    Just as well they approved it: they only had ten days left!

  7. Don't worry, Take Heart! by pollarda · · Score: 3, Funny

    It is always good to know that the language designed by committee has in fact passed the committee.

  8. Ada contracts and Z by Anonymous Coward · · Score: 0

    Design by Contract is a fine idea but it really would be nice if it was extended from expression
    to something a little more useful like Z. There are a few systems out there that
    support forall, exists, before and after state and thus move this into being really useful.

  9. 28 comments... by ignavus · · Score: 4, Funny

    Well, that's all the Ada programmers accounted for.

    --
    I am anarch of all I survey.
    1. Re:28 comments... by mnooning · · Score: 1

      Perl and C are my primary languages, but I used Ada for years in times past.

      In Ada you have to specify things like upper and lower bounds and floating point precision for nearly every such variable. That means you have to consult with the manual of the specific target board. It was a chore, but during run time Ada kept track behind-the-scenes and let you know if an out of bounds number was created, or if something was trying to access an array with an out of bounds index. There are other constructs that are no fun, and are foreign to other languages.

      There is no other language that forces a programmer to do so many things. Ada will never be popular for fun programming. On the other hand, I would love to see the world turn to Ada for all mission critical ventures.

    2. Re:28 comments... by Anonymous Coward · · Score: 0

      No, Ada does not require you to define bounds and precision for every variable.

  10. ISO? We don't trust them any more. by symbolset · · Score: 4, Interesting

    Microsoft bought off all the national bodies of ISO when they ramrodded through their undocumented and impossible to implement "document standard". If ISO knew anything about business processes or standards development they could have prevented that panel-stuffing result. And yet one of the standards they set is business processes for just this situation. I don't trust them any more and I don't think you should either. They are too easily swayed by corporate interests.

    Ada's cool in the esoteric nerd sort of way. Like SNOBOL or APL. I shared a girlfriend with one of the Strawman implementors of ADA and knew him moderately well. She was hot (she's probably a great-grandmother now) and he was cool, it was fun, and I'm still fond of ADA. I'm not fond of overloading operators and keywords in an RTOS in the practical sense, but as an artistic exploration of tech potentials I'm all for it as long as you don't make it the OS/language for a drone or something similar. I've never been a fan of garbage collection. It solved some problems I'd rather work around. Sadly Ada went rather overboard in the dynamic re-purposing of symbols, resulting in some unfortunate but predictable side-effects and plain code that had indeterminate use based on context.

    If you can't count on a word symbol to mean a quite specific and limited thing, you can't anticipate what your app will do. In my own mind, that was the problem with ADA. By subtexting and repurposing everyting - including the "=" operator and keywords like "if" they created a thing that was useful for mapping and mimicking human intellectual processes but not for doing useful stuff.

    --
    Help stamp out iliturcy.
  11. Linda Lovelace any relation to Ada? by Anonymous Coward · · Score: 0

    Charles? Anyone?

    1. Re:Linda Lovelace any relation to Ada? by Anonymous Coward · · Score: 0

      She was quite the tramp, according to wikipedia.

    2. Re:Linda Lovelace any relation to Ada? by Anonymous Coward · · Score: 0

      And wikipedia is quite the busybody

    3. Re:Linda Lovelace any relation to Ada? by Anonymous Coward · · Score: 0

      WHORE!

  12. Re:ISO? We don't trust them any more. by Anonymous Coward · · Score: 0

    I shared a girlfriend with one of the Strawman implementors of ADA and knew him moderately well. She was hot (she's probably a great-grandmother now) and he was cool, ...

    So, tell us more ....

  13. Re:ISO? We don't trust them any more. by darkestkhan · · Score: 1

    Keywords do have well defined behaviors, so I don't see where "repurposing everything - including the ""="" operator and keywords like ""if""" happened.
    And you actually do need to permit overloading of operators (otherwise you end up with nasty code [ie. in complex arithmetic]).

  14. Re:ISO? We don't trust them any more. by Anonymous Coward · · Score: 0

    I've never been a fan of garbage collection. It solved some problems I'd rather work around.

    Garbage collection is not required by Ada, although implementations can offer it. Interestingly, Ada does allow user-defined memory allocators to be used.

    Sadly Ada went rather overboard in the dynamic re-purposing of symbols, resulting in some unfortunate but predictable side-effects and plain code that had indeterminate use based on context.

    If you can't count on a word symbol to mean a quite specific and limited thing, you can't anticipate what your app will do. In my own mind, that was the problem with ADA. By subtexting and repurposing everyting - including the "=" operator and keywords like "if" they created a thing that was useful for mapping and mimicking human intellectual processes but not for doing useful stuff.

    All the major languages have operator overloading these days. Somehow people manage...

  15. Read The Fucking Interwebs by Anonymous Coward · · Score: 0

    Ada is syntactically similar to Pascal. Often used in aerospace applications where a single error can kill 400 people. Think flight control software interpreting pilot input and translating into control surface movements.

    Just because it does not "look" like C++, Java or VBA means nothing.

    Those who are in the know have lots of respect for Ada, because it epitomizes what is good about software engineering, as opposed to "bug-ridden crapola which is weekly updated".

  16. Muhahahaha by Anonymous Coward · · Score: 0

    The F35 is one of the worst-directed projects in history and their decision to "go C++" is one facet of management incompetence.

  17. Re:ISO? We don't trust them any more. by Alomex · · Score: 1

    All the major languages have operator overloading these days.

    Right, like Java... oh wait!

    Operator overloading reached its peak in the mid-80s at the time of Ada and C++. Since then most languages have pulled back from there and today it is considered mostly a source of bugs and heavily discouraged even in languages that allow it, e.g. Python.

  18. Avionics Software by Anonymous Coward · · Score: 0

    Used it for a fighter jet's avionics software back in the day.

  19. Re:ISO? We don't trust them any more. by Fished · · Score: 1

    Operator overloading is not "discouraged" in Python. Rather, you're encouraged to use it to make your objects "Pythonic" (i.e. support a similar range of features to a built-in python object) and to make sure the semantics are basically the same. Eliminating operator overloading from languages entirely is one of the things that makes Java suck so much and so frickin' verbose, in my opinion.

    --
    "He who would learn astronomy, and other recondite arts, let him go elsewhere. " -- John Calvin, commenting on Genesis 1
  20. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    No.

    --
    Help stamp out iliturcy.
  21. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    Do you know how I know you're not an Ada programmer?

    --
    Help stamp out iliturcy.
  22. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    BTW: This interaction is part of how I came to claim "symbolset" as my nym.

    --
    Help stamp out iliturcy.
  23. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    You guys are so far off the Ada mark that you might as well be choking your chicken at the A&P. Would you please learn some little thing about the subject?

    --
    Help stamp out iliturcy.
  24. Re:ISO? We don't trust them any more. by Alomex · · Score: 1

    i.e. support a similar range of features to a built-in python object

    Yes, I should have said something like "heavily restricted to straightforward overloads" such as straightforward extensions comparators and iterators with no unexpected side effects. Any other use is heavily discouraged.

  25. Re:ISO? We don't trust them any more. by Anonymous Coward · · Score: 0

    You are the typical self-aggrandizing blowhard who walks in the middle of a conversation and blurts out "you know nothing about the subject", without giving any evidence of yourself having any knowledge in the subject, thus proving that either you have none or you lack the mental capacity to put it in words and express it in a meaningful way.

    Plus the posting you responded to is not even talking about Ada, but about operator overloading in other languages.

    So all around an epic fail for you. Now crawl back under your rock until you are spoken to.

  26. VHDL and ADA by Anonymous Coward · · Score: 0

    VHDL (a hardware description language) is based on ADA; I never coded ADA but knowing VHDL quite well I felt right at home reading ADA code.

    I wonder though how far the two languages went apart though. The first version of VHDL standard was released in 87 and then upgraded in 93 and 2002 (these were minor upgrades). A new VHDL standard with a slew of new features such as generic functions was released in 2008. I wonder if ADA supports them?

    Basically, VHDL had a reputation for being dead even before 2008 version came out. The only simulator vendor that fully embraced is Aldec as far as I know.

    1. Re:VHDL and ADA by jockm · · Score: 3, Informative

      ADA had generics long before VHDL. From the first version of Ada in fact. Stepanov and Musser wrote the Standard Template Library for Ada in 1987 C++ Standard Template Library was first developed in ADA and then ported to C++ in the early 90s.

      Just to complete the trivia, Oracle's PL/SQL has a syntax that was based somewhat on Ada.

      --

      What do you know I wrote a novel
    2. Re:VHDL and ADA by Anonymous Coward · · Score: 0

      Oracle's PL/SQL is also said to have been inspired by Ada, although it has evolved from its original incarnation.

      The syntax of PL/SQL is a bit jarring for those accustomed to C, C++, Java, and that syntactical language group.

    3. Re:VHDL and ADA by Anonymous Coward · · Score: 0

      VHDL is very much alive, in europe at least. I make a living coding in VHDL :)
      Verilog (the other HDL language that is used for the same kind of tasks in america) lacks a lot of features compared to VHDL, this is partly solved by the system-verilog variant of the language. And VHDL lacks a few things compared to System-verilog...
      As for simulators, Modelsim supports VHDL just fine. And all the synthesis tools for FPGA I know do too.

  27. Difference between this and assert by tepples · · Score: 1

    What's the difference between this and using the existing assert mechanism in C, Python, or the like? Is it able to perform some sort of automated reasoning on require and ensure between functions that allows some assertions to be optimized out?

    1. Re:Difference between this and assert by dwheeler · · Score: 1

      You can see more about Ada 2012 here; the rationale is probably the best place to start.

      Yes, this is similar to the assert mechanism of C, Python, etc., but because it's built into the language, it can do some extras. Often these are optimized out, because the compiler can determine that they're always met. You can also define a "Type_Invariant" once, and then the invariant is checked every time the value can be changed from the point of view of a user (e.g., after initialization, conversion, or return of a value of that type). A type_invariant is like inserting C "assert" calls in every call that might return it, but only having to say it once.

      --
      - David A. Wheeler (see my Secure Programming HOWTO)
    2. Re:Difference between this and assert by jbolden · · Score: 1

      2 things;

      1) There is a lot of additional syntactic sugar which makes this much easier to use in practice. In theory of course you don't need any syntactic sugar for anything but it helps. Making this easy and uniform for developers is different than bare bones tools

      2) The calling functions know how to respond. So a system can come back with "failed require" or "failed ensure" and the caller should know how to respond. Assert just throws an error to the end user. Which means you can embedded these deep into calls and sometimes get useful behaviors.

  28. Ada is in use; it's actually growing by dwheeler · · Score: 2

    Yes, people are using Ada, in fact, it's been making a quiet comeback. Ada is the #16 most popular language according to the TIOBE programming language survey of November and December 2012, an increase from #19 in November 2011. Keller reports that by 2000 Ada use had decreased and then increased again. It's not huge compared to C or Java, of course; its use is focused in certain domains. In certain communities, such as aviation software, it continues to be a popular language and has been credited with helping to produce high-quality software within time and budget.

    Historically, Ada was developed by the Department of Defense (DoD), and the DoD tried to make it the one and only universal language . An NRC report on Ada talks about this. Fundamentally, trying to make one language do everything was a bad idea, and predictably failed; there is still no one language that can be all things to all people, even many years later.

    Ada isn't a complex language by today's standards, but it has a lot of "pickiness" that means you have to obey more rules. Is that a good thing? Well, you first have to understand what it was designed for - and then decide if that design is what you want.

    Ada focuses on software that needs high reliability and yet absolutely no compromise of performance. If reliability isn't really all that important to you, or you can give up a lot of performance, then Ada's trade-offs may not work for you. For reliability, it has a strong typing system, and you have to use generics (etc.) instead of just saying "shut up and trust me" a la C. For performance, it doesn't mandate automatic garbage collection (as compared to Java or Python). Ada shines when you're writing programs that will could un-intentionally kill people if the program is wrong or takes too long. Think airplane flight controls, train systems, medical systems, that sort of thing. A lot of Slashdot readers have never tried to write software that could accidentally kill people, and thus can't understand why you might want a "picky" language like Ada. If your response to "it has a bug" is just "install this patch" maybe another language would be fine. But when mistakes can kill, having a language that helps prevent them can be literally a lifesaver.

    --
    - David A. Wheeler (see my Secure Programming HOWTO)
  29. Re:ISO? We don't trust them any more. by Anonymous Coward · · Score: 0

    No, I don't know how you "know" that. However, I happen to know that he IS an Ada programmer.

  30. Maybe it's time to learn Ada by drwho · · Score: 1

    I am so tired of runtime failure. I am tired of feeling that which has been labeled as 'shipped code' was always shipped too early, and that there's some embarrassing bug that's going to come back and bite me(us) on the ass. Perhaps programming in Ada would allow me to sleep well at night, knowing that I didn't prematurely ship code. Sure, there's still the problems of fundamental logic errors based upon the programmer(s) misunderstanding the problem, but knowing that we're clever idiots is better than being an idiotic idiot.

    I keep on seeing security fails, such as recent one(s) in Android, makes me wary. I trust my old 5 lb desk phone, not the sleek gadget which has the misnomer 'smartphone'. I'd like to have code that is as solid and reliable as my old 5 lb desk phone.

  31. Post OOPS Ada by sconeu · · Score: 1

    It would have looked like Ada95 or Ada05 or Ada2012

    --
    General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
    1. Re:Post OOPS Ada by Maury+Markowitz · · Score: 1

      No, it wouldn't. Because many of the base features of the language would have never been implemented as base features of the language. But they were, and they still are, and wouldn't be.

      This isn't an Ada issue, it's an issue with any procedural language that was "extended". Object Pascal is another good example.

    2. Re:Post OOPS Ada by HiThere · · Score: 1

      Nope. It would have had unbounded string as the basic string type, and it would have included a garbage collector.

      FWIW, I think the other problems with the language have been solved, but those two features would have changed the design drastically, and in an improved way...except for embedded real-time systems.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
  32. Re:ISO? We don't trust them any more. by Anonymous Coward · · Score: 0

    His GF cheated on him with a frenchman. He still probably still can't come to grips with that and claims it was consensual.

  33. Re:ISO? We don't trust them any more. by Anonymous Coward · · Score: 0

    Are you sure you are not thinking of something like Lisp? Ada doesn't have garbage collection. And a drone would be an ideal use for Ada- it was designed for high reliability military systems.

  34. Was taught at ANU by Anonymous Coward · · Score: 0

    ANU taught this language as part of concurrent and distributed systems. Ada is a excellent choice for concurrent and distributed systems or systems that require a high degree of reliability as it provides compiler support for these programming problems.

    Sadly too many undergrads had trouble learning a new language (i thought good programmers could learn new languages easily), so ANU decided to teach the course in Java.

    ANU the degree factory.

  35. Re:ISO? We don't trust them any more. by sco08y · · Score: 1

    Microsoft bought off all the national bodies of ISO when they ramrodded through their undocumented and impossible to implement "document standard".

    Cite please. I'm not asking for a check number, just someone else even making this accusation instead of the usual idiotic assumption that everyone in the standards bodies is all clamoring for a handout from Microsoft.

  36. Is Ada even good for Bondage and Discipline? by Latent+Heat · · Score: 2
    Isn't the original strict type checking language Algol 60? And didn't that effort lead to Algol 68, which somewhere along the lines of the Orange Catholic Bible in the Dune novels ended up "recanted" by its creators or some such thing as working against error reduction in programming, either by becoming to complicated semantically or to difficult to implement a compiler?

    And didn't the failure of Algol 68 lead to Niklaus Wirth's Pascal, as a simpler, better Algol 60? And for whatever Pascal's limitations (Hello! Is there a String type? Is anyone even home?), Pascal developed a reputation of being really simple to parse, which resulted in its adoption by Anders Hejlsberg, er, I mean Phillipe Kahn in Turbo Pascal? And hadn't Wirth by some point admitted that Turbo Pascal had become the "reference dialect" of Pascal?

    And when the U.S. Department of Defense held its competition for One Compiler to Rule Them All, they gave the prize to a French dude named Jean Ichbah, who gave us Ada, which was essentially Pascal with (separately compiled) modules, although Pascal compiled so fast, its fanboys claimed you didn't need separate module compilation and linking? And didn't Wirth come out with Modula, Pascal "done right" with modules, but no one would use it because it was all Bondage and Discipline to an extreme? And didn't Kahn (er, I mean Hejlsberg) come out with Turbo Pascal 4, a much friendlier Pascal with Modules?

    And wasn't Ada immediately disrespected by the Sons of Algol (Djkstra, Wirth) as being a committee-designed Abomination? And wasn't it for the longest time that no one had a compiler for it, which called into question the ambigious semantics and whether programs in Ada would ever be "theorem proof" reliable?

    And hasn't C-style syntax pretty much won out over Algol 60-derived syntax (Pascal, Modula, Ada)? And that everybody who is into "Bondage and Discipline" programming in this day and age (strict types, good compile time and run time error checking) pretty much embraced Java?

    So I guess Ada has its "community" of "dudes with crew cuts, clean shaven, and with pocket protectors working for Defense contractors", does Ada have any "street cred" with the academic "software theorem proof" or "software reliability" communities?

    1. Re:Is Ada even good for Bondage and Discipline? by Archtech · · Score: 1

      "The more I ponder the principles of language design, and the techniques that put them into practice, the more is my amazement at and admiration of ALGOL 60. Here is a language so far ahead of its time that it was not only an improvement on its predecessors but also on nearly all its successors".
      - C.A.R. Hoare, "Hints on Programming Language Design", 1973

      --
      I am sure that there are many other solipsists out there.
    2. Re:Is Ada even good for Bondage and Discipline? by Archtech · · Score: 1

      So I guess Ada has its "community" of "dudes with crew cuts, clean shaven, and with pocket protectors working for Defense contractors", does Ada have any "street cred" with the academic "software theorem proof" or "software reliability" communities?

      https://en.wikipedia.org/wiki/SPARK_(programming_language)

      --
      I am sure that there are many other solipsists out there.
    3. Re:Is Ada even good for Bondage and Discipline? by Anonymous Coward · · Score: 0

      You ask a lot of questions. Perhaps you should use the googles to look for your answers.

  37. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    This is so well documented that your denial is absurd. There are numerous online histories of this whole sordid mess. Here is one: http://www.groklaw.net/staticpages/index.php?page=20071217022527429

    --
    Help stamp out iliturcy.
  38. An Oldtimer's Thoughts (Ada since 1975) by Bob+Munck · · Score: 2
    I've been involved with Ada since the DoD-1 "Strawman" requirements document. A couple of points I haven't seen mentioned in these comments:

    1. Ada lets me say clearly what my code is supposed to be doing in the code itself; I don't have to write coding tricks, I don't have to write comments that explain what the code really does. I can write code that I can read a year from now or some other coder can read ten years from now and we'll both know what it does. Sure, I can still write obscure, obfusticated code, as can anyone who doesn't care about the long term, but it lets me do it right if I want to. Other languages fall short of this.

    2. Ada turned out to be a language for software engineers, not coders. The two guys who were its chief architects, Jean Ichbiah of Honeywell and Tucker Taft of AdaCore, were/are consummate software engineers (Jean did the first version, Ada83, died about 5 years ago; Tucker did Ada95, 2005, and 2012). In general, the more educated and experienced you are as a software engineer, the more you'll like Ada.

    3. In my opinion, the military use of Ada failed because good Ada programmers are not psychologically suited to work for big defense contractors. Likewise, big defense contractors don't want to pay people who write code the kind of money that good Ada programmers are worth. So they hire five cheap coders instead and it takes them seven times as long to do the coding. (It's a good thing that funding for Defense is unlimited.)

    4. Ada also suffered from the COTS (Commercial Off The Shelf) fad that swept the military in the 90's. If any coding was needed and possible, it tended to be Visual Basic or C++. The closest we got was PL/SQL (Ada-derived).

    Will Ada ever make a come-back? Probably not; the urban legends about it being complex, designed by a committee, and militaristic will overcome its ability to be more reliable and cheaper over the life-cycle. I can only hope that all the life-critical software I encounter -- airplanes, medical equipment, my 2021 self-driving Toyota -- is coded in Ada.

  39. Who Still Uses Ada? by Ferretman · · Score: 1

    I'm on a contract that still uses Ada for part of its function; pretty much the only reason is because the government won't pay to have it rewritten in a new language. It's amazing how few engineers still really understand most of it though....

    Ferret

    --
    Sic gorgiamus allos subjectatos nunc
  40. Re:ISO? We don't trust them any more. by tlhIngan · · Score: 1

    Microsoft bought off all the national bodies of ISO when they ramrodded through their undocumented and impossible to implement "document standard". If ISO knew anything about business processes or standards development they could have prevented that panel-stuffing result. And yet one of the standards they set is business processes for just this situation. I don't trust them any more and I don't think you should either. They are too easily swayed by corporate interests.

    Welcome to every standards body in the world where it's all about politics and not standards-making.

    Take say, the 3GPP, responsible for a lot of mobile telephony standards. It's an old boy's club. Why do you think Apple's minor contribution created so much chaos? Basically the telecoms wanted it, RIM, Motorola, Nokia didn't. Basically just a political standoff for the most part - those who are making money backed Apple, those who were suffering because of it opposed it.

    Or say, the IEEE. It's a process of getting your patent in so everyone implementing Wi-Fi or Ethernet will have to pay you.

    Ditto every other standards body out there, whether it's MPEG, JPEG, DVD Forum, Blu-Ray Association, etc. Heck, I'm fairly certain the W3C isn't immune either (Google, Microsoft, Mozilla, Apple, etc., hell, remember trying to get video working and no one could agree on a codec?).

    A standard is just a way for patent owners to try to finangle their way in, because getting FRAND money is well worth it. It's all about political connections - you scratch my back, I'll scratch yours, backroom deals, etc. And we all get stuck with the results.

    Remember who populates these standards bodies - given the cost of entry is often in the 6 to 7 digits (the lower one is just to use the standard, if you want to participate in making them, it's $$$$ and always has been).

  41. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    She did leave me for a frenchman. How did you know?

    --
    Help stamp out iliturcy.
  42. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    I "know" that because in Ada not only can you overload the "=" operator, but you can change the flow of interpretation from left-to-right to Reverse Polish and back again - in the middle of a formula.

    --
    Help stamp out iliturcy.
  43. Re:ISO? We don't trust them any more. by symbolset · · Score: 1

    BTW: Programming in Ada is like "Australian rules football". Changing the rules is part of the game.

    --
    Help stamp out iliturcy.
  44. Re:ISO? We don't trust them any more. by Anonymous Coward · · Score: 0

    I "know" that because in Ada not only can you overload the "=" operator, but you can change the flow of interpretation from left-to-right to Reverse Polish and back again - in the middle of a formula.

    Please point to a section of the Ada reference manual that allows the expression syntax to be changed. Ada's expression grammar doesn't allow for anything of the sort.

    (Yes, you can overload operators. So what? Operators are just special function names. Without that, you'd have to use Equal(A, B) instead, which is no more readable or less ambiguous.)

    (CAPTCHA: nonsense)

  45. Re:ISO? We don't trust them any more. by DrVxD · · Score: 1

    today it is considered mostly a source of bugs

    [Citation Needed]

    Having the facility to overload operators isn't a source of bigs; abusing that facility is a source of bugs.

    --
    Not everything that can be measured matters; Not everything that matters can be measured.
  46. Re:ISO? We don't trust them any more. by DrVxD · · Score: 1

    Remember who populates these standards bodies

    Me, amongst others. I'm a member of a National Body delegation to an ISO committee.

    given the cost of entry is often in the 6 to 7 digits (the lower one is just to use the standard, if you want to participate in making them, it's $$$$ and always has been)

    This is flat out wrong; neither I not my employer pay even a single cent to participate in making ISO standards.

    --
    Not everything that can be measured matters; Not everything that matters can be measured.
  47. Re:ISO? We don't trust them any more. by Alomex · · Score: 1

    abusing that facility is a source of bugs.

    That is a vacuous statement. You are defining "non-abusing" as all the ones that do not create bugs and as abusing the ones that do. Duh!

  48. Re:ISO? We don't trust them any more. by DrVxD · · Score: 1

    No, I define "abusing" as doing things like overloading an addition operator which doesn't perform an additive operation.
    (Which would be just as abusive if you used a non-operator function with a misleading name).

    Can you provide an example which is non-abusive, but is a source of bugs? Or are we just expected to accept the veracity of your unsubstantiated claim that "today it is considered mostly a source of bugs"?

    --
    Not everything that can be measured matters; Not everything that matters can be measured.
  49. Re:ISO? We don't trust them any more. by Alomex · · Score: 1

    I define "abusing" as doing things like overloading an addition operator which doesn't perform an additive operation.

    There are other issues, such as side effects. Say if I add/merge two complex data structures or assign them does it create deep copies through and through or does it creates a new reference to the object?

    It also makes errors harder to catch, since it weakens the type signatures of the overloaded functions.

    Or are we just expected to accept the veracity of your unsubstantiated claim that "today it is considered mostly a source of bugs"?

    No, I expect you to already know this. Just like you to know that there is such a thing as Java, without me having to give a citation.