I was reading a post related to the operating system of American Space Shuttles, then wondered what might Soviets have used. I found a CIA document and several forums saying that Prolog was used in the Buran. I have experience in object oriented and a decent understanding of logic programming languages but I can't find a reason why they might have chosen such a complicated way of developing a system.
-
3$\begingroup$ Obligatory video of Bald & Bankrupt breaking in to see the Buran and causing an international incident 😆 $\endgroup$– Danny BeckettSep 19 at 4:49
-
1$\begingroup$ Prolog would be an incredibly odd - and I might say impossible - choice of programming language for a realtime system like controlling a space plane - even moreso in the period of Shuttle and Buran development. Prolog is a language for expressing pure logic and is used in AI, pattern matching, etc. I don't even know if it can do this kind of realtime command and control task - in that era doing things like tight memory and performance control, interfacing to specialized hardware, etc would likely make the choice C, or even assembly. $\endgroup$– Cullen SkinkSep 19 at 19:02
1 Answer
According to Wikipedia the use of prolog is just a mistake in the CIA report:
Researchers at Keldysh developed two languages: PROL2 (used for real-time programming of onboard systems) and DIPOL (used for the ground-based test systems), as well as the development and debugging environment SAPO PROLOGUE
...
A declassified May 1990 CIA report citing open-source intelligence material states that the software for the Buran spacecraft was written in "the French-developed programming language known as Prolog", possibly due to confusion with the name PROLOGUE.
-
15$\begingroup$ This makes a lot more sense. I was very confused upon reading the OP's question why they would choose Prolog over Refal, which is a language designed in the USSR that would give most of the same benefits that you would get from Prolog. So, it turns out, they used neither :-D $\endgroup$ Sep 17 at 16:54
-
1$\begingroup$ The "virgin" Mary of the space age... $\endgroup$ Sep 19 at 10:42