[Beowulf] A start in Parallel Programming?
06002352 at brookes.ac.uk
Mon Mar 19 10:19:33 PDT 2007
> C for damn sure isn't "safe". Neither is assembler. Very few compilers
> could be called safe in the sense that it is impossible to write buggy
> code that is vulnerable to various exploits or at risk of crashing an
> application, but C is arguably more dangerous than most because with
> pointers and inlined assembler you can do "anything".
> Total power and complete control is never safe. C is like an M-1 tank
> armed with pocket nukes and with a built in levitation system and
> antimatter propulsion system -- misuse it and you can blow up whole
> worlds, but it can solve lots of problems very quickly. Safe is a kiddy
> bike with training wheels -- not fast, not powerful, but if you pedal
> long enough you can get where you want to go.
> Unless you get run over by a tank, that is.
>> I can understand why c is considered naughty but isn't it bad
>> programming (systems development) to blame rather than the flexibility
>> of the language?
> Absolutely. With great power comes great responsibility. Neurosurgery
> is not safe. Consequently Neurosurgeons require immense amounts of
> training and have to work extremely carefully -- and people still die.
> However, far more of them live! Putting band-aids on is safe. However,
> try putting a band-aid on a brain tumor.
Very entertaining explanations. Especially the M-1 tank...
Therefore; absolute safety = language safety x "programmer's safety"
c is being penalized for giving the freedom and power to humans. They
should consider programmer's safety in IEC 1508.
I had a lecture on "Secure coding" last week and the c was frowned upon
again for obvious reasons. I think it's narrow minded and gives out the
wrong message when the programmer is not included in the equation.
More information about the Beowulf