* Ganssle plugs Ada
@ 2012-09-14 14:36 mjsilva
2012-09-14 21:29 ` Shark8
0 siblings, 1 reply; 3+ messages in thread
From: mjsilva @ 2012-09-14 14:36 UTC (permalink / raw)
Since nobody else seems to have mentioned this,
http://www.eetimes.com/electronics-blogs/break-points/4395816/Ada-2012?cid=NL_Embedded&Ecosystem=embedded
Of course some of the comments show as much ignorance and close-mindedness as ever.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Ganssle plugs Ada
2012-09-14 14:36 Ganssle plugs Ada mjsilva
@ 2012-09-14 21:29 ` Shark8
2012-09-14 21:48 ` Simon Wright
0 siblings, 1 reply; 3+ messages in thread
From: Shark8 @ 2012-09-14 21:29 UTC (permalink / raw)
Thanks for sharing that; it was a pretty good read.
I found some of the objections in the comments to be rather amusing; in particular this list [comments added]:
>1. Software that was not designed or specified right so that software implemented according to spec would not function correctly in the real world.
-- Granted; that's the problem with having an incorrect model. No language can help there.
> 2. Algorithmic errors. Poorly implemented algorithms. A sort that doesn't, for example.
-- No language can keep you from logic errors like ">" instead of ">=" -- Ada does help in this regard as much as it is able to by not cluttering the "operator namespaces" with similar symbols; this touches two of Ada's design goals: Readability & Maintainability.
> 3. Oversights of the metres vs feet variety, or poor calibration/filtering etc resulting in incorrect calculations.
-- Ada addresses this in as far as possible by disallowing different [numeric] types from freely interacting.
> 4. Timing/locking issues.
-- Ada spent lots of effort dealing with this; there's the Ada.Calendar package, the Duration type, and protected objects/methods which can severely cut down on race-conditions.
> 5. Incorrect hardware handling. For example using edge triggered instead of level triggered interrupts resulting in peripherals going to sleep and product failure.
-- I've not done a lot of low-level work... but I'm under the impression that Ada's interrupt handlers work perfectly fine.
> 6. Buffer overflows, poor pointer handling and the like.
>
> Ada can only address (6).
-- Nope, Ada addressed at least 2/3rds of that list.
> Valgrind etc can help to find (6) too when these turn up in C.
-- Ah, yes, 'help'.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Ganssle plugs Ada
2012-09-14 21:29 ` Shark8
@ 2012-09-14 21:48 ` Simon Wright
0 siblings, 0 replies; 3+ messages in thread
From: Simon Wright @ 2012-09-14 21:48 UTC (permalink / raw)
Shark8 <onewingedshark@gmail.com> writes:
>> 5. Incorrect hardware handling. For example using edge triggered
>> instead of level triggered interrupts resulting in peripherals going
>> to sleep and product failure.
>
> -- I've not done a lot of low-level work... but I'm under the
> impression that Ada's interrupt handlers work perfectly fine.
As noted, the edge/level interrupt triggering is a hardware issue
(normally; could be configuration done by software), so no software
features are going to prevent the wrong choice.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-09-21 13:20 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-14 14:36 Ganssle plugs Ada mjsilva
2012-09-14 21:29 ` Shark8
2012-09-14 21:48 ` Simon Wright
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox