comp.lang.ada
 help / color / mirror / Atom feed
From: kalvin.news@gmail.com
Subject: Re: Ada and Java/C++
Date: Mon, 27 Aug 2012 22:35:28 -0700 (PDT)
Date: 2012-08-27T22:35:28-07:00	[thread overview]
Message-ID: <b4a5d6c4-ddf3-4230-98d1-2f6ac9a81739@googlegroups.com> (raw)
In-Reply-To: <8bfbf709-18ac-43cd-b037-ce47adde96c2@googlegroups.com>

Let's elaborate this subject a bit more. Facts:
- Embedded software and hardware deployed everywhere
- Software projects are getting bigger and more complex all the time
- Software is getting close to people each day
- Mission critical software is entering our daily lives in form on automation (like Google cars, home automation, nursing systems etc. just name it)

1. Ada (2005 and 2012) is ready for prime time
2. Ada is designed for mission critical and embedded software
3. Java and C are common languages in embedded systems
4. Java and C are weak languages for mission critical system eg. poor type checking, exception handling, tasks are not native in the language etc.
- C is notoriously poor language in terms of type checking, pointer arithmetics, arrays, packages, just name it
- Although efforts in Misra C, it is still C with its faults and shortcomings
- Java has some improvements to C, but it still can be improved
- Java is not designed for mission critical systems
5. Ada programmers are hard to find
- For example, DoD has faced the problem of finding Ada programmers, DoD has been force into situation that mission critical software is being implemented in Java
- Java and C programmers see Ada as a complex language
- Ada is perceived as military language
- Ada is perceived as a complex and heavy language

As you may see from list above, the points 1&2, and points 3-5 are contradicting. Could the situation be improved somehow, so that existing Java and C programmers can adopt Ada-mindset more easily, and can the Java and C syntax be fixed to allow more robust software engineering.

My suggestion here is to introduce Ada's good virtues for C and Java programmers in syntax that is familiar to most of the software engineers.

As many writers has well pointed out, it may not be easy or possible to represent full Ada features in Java and C syntax. What is required here, it that we retain as much Java and C syntax as possible, and then extend it and fix it as necessary - type definition, dangling else problem and switch-case-break are a good but simple examples of this.

- Calvin



  parent reply	other threads:[~2012-08-28  5:35 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-27 10:46 Ada and Java/C++ kalvin.news
2012-08-27 11:48 ` Dmitry A. Kazakov
2012-08-27 13:44   ` kalvin.news
2012-08-27 14:33     ` Dmitry A. Kazakov
2012-08-27 15:26     ` J-P. Rosen
2012-08-27 15:46       ` Georg Bauhaus
2012-08-27 16:08       ` kalvin.news
2012-08-27 23:16     ` Randy Brukardt
2012-08-28  2:14       ` Adam Beneschan
2012-08-28 10:50         ` Brian Drummond
2012-08-28 14:22           ` kalvin.news
     [not found]           ` <gcup38ldi4afrt9q2uj70qoe7l2lcn4rk1@invalid.netcom.com>
2012-08-28 23:00             ` Brian Drummond
     [not found]               ` <fouq38tqdp7fh86l2dp2pmr8jfdgi24i7j@invalid.netcom.com>
2012-08-29 10:39                 ` Brian Drummond
2012-08-27 14:35   ` Nomen Nescio
2012-08-27 21:23     ` gautier_niouzes
2012-08-27 14:09 ` Niklas Holsti
     [not found] ` <al1n38tdd0tq6p1os6p6angt91mginhoup@invalid.netcom.com>
2012-08-27 14:49   ` kalvin.news
2012-08-27 14:53   ` kalvin.news
2012-08-27 19:46     ` Shark8
2012-08-27 20:11     ` gautier_niouzes
2012-08-27 19:41 ` Shark8
2012-08-27 20:06 ` gautier_niouzes
2012-08-28  5:35 ` kalvin.news [this message]
2012-08-28  6:57   ` Shark8
2012-08-28  8:28     ` kalvin.news
2012-08-28 10:00       ` Niklas Holsti
2012-08-28  8:31     ` kalvin.news
2012-08-28  9:15       ` Niklas Holsti
2012-08-28  9:54   ` gautier_niouzes
2012-08-28 14:08     ` kalvin.news
2012-08-29 10:52 ` kalvin.news
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox