http://www-verimag.imag.fr/SYNCHRONE/history.pdf
The logic was written in a real-time language formulated especially for the task. I'm nowhere near as current or academic as bsieker or PBL, but my Software Reliability lecturer was Peter Mellor, who was about as knowledgeable about the subject as anyone.
I do know enough to say that the concept of programming that kind of realtime system is about as far away from the Imperative or Declarative paradigms used in 99% of everyday computing applications as it is possible to get.
My experience of the A320 story was that the problems came about as much from knee-jerk reactions from a certain breed of pilot...
I'm not a schoolboy, I'm a trained 727 captain. In that case I do not need to be here. I'll go back to Hamburg and fly your crate.
as it did the assumption by Airbus's sales people (*not* their engineers) that the human brain would not be able to find a way around their 'failsafe' system.
In this particular case, it looks like a split-second mistake by an experienced crew may have had tragic consequences. You can try to dig for faults in the logic and the design all you like, but it's going to work out the same every time - for whatever reason they did it, leaving the TL significantly forward of the IDLE position sealed their fate.