Python for air traffic control?

Magnus Lie Hetland mlh at
Sun Jul 1 02:22:53 CEST 2001

"Russ" <18k11tm001 at> wrote in message
news:bebbba07.0106291642.6c799d15 at
> I am thinking about using Python for a unique safety-critical
> application in air traffic control. It will monitor a few hundred
> aircraft for conformance to assigned trajectories, and it will
> initiate an automatic alarm (for both controller and pilot) if an
> aircraft deviates from its assigned trajectory and is in danger of a
> collision. (The trajectory and tracking data will come from existing
> C/C++ programs.) The software must be as simple, clean, and robust as
> humanly possible. The default languages here are C/C++, but I am
> toying with the idea of using Python instead. However, I am a bit
> nervous about the lack of type checking and function prototyping,
> among other issues. Is Python up to this task? Thanks for your
> insights.

Just an amusing parallel... A snippet from the current JDK
(Java) license:

--- begin ---
8.1 Licensee acknowledges that Licensed Software may contain errors
and is not designed or intended for use in the design, construction,
operation or maintenance of any nuclear facility ("High Risk
Activities"). Sun disclaims any express or implied warranty
of fitness for such uses. Licensee represents and warrants to Sun
that it will not use, distribute or license the Licensed Software for
High Risk Activities.
---- end ----

I seem to remember a notice in earlier licenses about air traffic-control
as well (which is why I at first thought your posting was a joke), but
it may just be my mind playing tricks on me.

I'm sure Python can be fine for high risk systems... But perhaps you
should look into one of the few languages actually designed for this
sort of thing, Ada?

Just a thought...

And, of course, there are books out there on how to remove as many
bugs as possible from your programs... I like "Toward Zero-Defect
Programming" by Allan M. Stavely [1]. Implementing its principles
may not be an easy task, but it would probably increase the
stability of the system.

(And, having a couple of backup-servers running might not be a bad
idea either ;)



  Magnus Lie Hetland

 "Reality is that which, when you stop believing in
  it, doesn't go away."           -- Philip K. Dick

More information about the Python-list mailing list