Sign up ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

I got interested in the Soviet space program and was interested to discover that the software on the Buran spacecraft circa 1988 was written in Prolog.

Does anyone know what languages might have been used in earlier missions, especially the Mars PrOP-M rover missions of the early 1970s which were somewhat autonomous and could navigate obstacles?


My source for the Buran Prolog is this declassified document from the CIA site from May 1990. I couldn't find an OCR version, so here's the relevant quote from p. 0449:

According to open-source literature, the Soviets used the French-developed programming language known as Prolog to develop on-board system software for the Buran vehicle...

share|improve this question

put on hold as too broad by MichaelT, Scant Roger, Bart van Ingen Schenau 2 hours ago

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

are you interested in all the projects listed in Wikipedia article you refer to - from 1957 to 1987? or to 2011? Also, assuming that Soviet computers were used in their space program, would languages that run on these qualify? – gnat Apr 23 '12 at 17:48
I would suspect that the early Russian space program probably used analog computation devices, much as the U.S. Army Air Corps and early U.S. space program both did. I've heard rumors that the Soviet Russians relied more heavily on analog computers than the U.S. did, but I can't confirm the source. The analog computers were usually faster and more accurate than the digital computers of their time, but were not as flexible (build for a single purpose). – Dave Kennedy Apr 23 '12 at 19:00
@DaveKennedy You are correct, in that the Soviet Union used analog computing more than the U.S. did, up through the 1970's. I was assigned a project using an analog computer in 1982 (in the U.S.) and recall my mech engineering professor telling me that analog computers had been used extensively and successfully in the U.S.S.R. I'll try to get some more info so I can maybe actually answer this question too. – Ellie Kesselman Apr 24 '12 at 17:17
Reddit discussion on this question. – Yannis Jun 5 '12 at 5:31
I'd say that any claim starting with "According to open-source literature" could be wrong - the space program was classified and so deliberate disinformation could be put in open-source literature. – sharptooth Jun 5 '12 at 7:59

4 Answers 4

up vote 198 down vote accepted

There's a book in Russian, German Noskin, First computers for space applications (Герман Носкин, Первые БЦВМ космического применения), ISBN 978-5-91918-093-7.

The author himself participated in many early projects (mostly in hardware) and according to him analog hardware was in favor for a long time, he mentions that space rendezvous tasks didn't use digital computers until the late 70's. Due to this policy many digital computers were really proofs of concept although used in other areas of soviet economics. The first computer according to him used on-board was the Argon-11S (Аргон-11С) on the unmanned missions to the Moon closer to Apollo-8 in time. Also Noskin briefly says that the on-board computer Salut-4 was compatible with general-purpose computers ES used in Soviet economics so it was possible to develop software in PL-1 and Fortran.

There are several mentions of Buran program languages on Russian websites. According to Vladimir Parondjanov, an engineer from the program (Russian Post) three languages using Russian as a base were developed: PROL2 (ПРОЛ2) for onboard programs, Dipol (Диполь) for earth tests, and Laks (Лакс) for modelling. All of them were intended for use not only by professional programmers but also engineers from other areas.

When the Buran program was closed they were merged into a new language Drakon (Дракон, Russian word for "Dragon") that is claimed to be be a "graphical" language having 2-dimensional descriptions of the programs and using arbitrary well-known languages for code generation. This language was also intended for use by non-programmers. The language probably does not have and international community and isn't even well-known within Russia although heavily promoted by its author, Vladimir Parondjanov (the Russian Wikipedia article article is very long and was even deleted once for not following Wikipedia rules). Drakon was first used for programming for the Sea Launch missions and has been used in other Russian space programs since.

share|improve this answer
Great answer! I poked around some more and found this interview in which the interviewer says 'I was told that the Argon-11S had been installed on a space vehicle sent to Mars.' – shamp00 Apr 27 '12 at 11:23
Good answer, but Sea Launch is not a Russian program. It's cooperation of US, Russia(upper stage), Norway and Ukraine(carrier rocker). – Artem Ice Aug 7 '12 at 9:45
As a reference, ES were direct soviet clones of IBM's S/360 mainframes. Huge-a$$ beasies. – DVK Dec 16 '12 at 8:43

In the 80s, the third generation of Argon airborne computers used Pascal, Fortran and Si. (Si?). I have not found any other language beside assembler used before that.

From Argon airborne computer history

Argon family was created in three stages. During the first stage (1964 - mid 70s) 11 types of computers for space, airborne and ground automated control systems were produced.


In mid80s the third stage of development of Argon computers began. In 1986, the state program was adopted whose goal was to create unified mobile computer families, so-called SB EVM, based on ES EVM, POISK and SM EVM architectures.

One of these, the SB-3580 airborne computer, had:

Programming facility: OS RAFOS-11 cross-system. Programming languages include: Assembler, Si, Pascal, Fortran.а

source: Introducing Argon

share|improve this answer
I think Si is actually just C. I did actually use a Soviet brand of C compiler called СиМ86 (for CP/M clone called М86 ) – fionbio Jun 4 '12 at 9:57
Yes, C is written Си (Si) in Russian. – Adeel Jun 4 '12 at 14:05
Interesting. Thanks! – David Pointer Jun 4 '12 at 14:17
phonetically, saying "Si" sounds like English "C" in Latin and, I presume, Slavic languages. – Victor S Jun 4 '12 at 16:52
C, Señor. El mejor lenguaje. – ObscureRobot Jun 4 '12 at 17:56

My father worked in ЦНИИ РТК and participated in the development of software for Buran manipulator ( ) Software was developed on ES EVM (Soviet clone of IBM S/360-370) using Fortran due to heavy computations.

share|improve this answer

I came across this article in ACM quote quad a few years ago, "A History of APL in the USSR". It was written by Andrei Kondrashev (Computing Center of the Russian Academy of Sciences) and Oleg Luksha (The Obninsk Educational Center).

An interesting quote from the article:

It may be of interest that APL was directly related to the design of the Soviet space shuttle "Buran." Heat protection is one of the major elements in the construction of apparatus of that type. It is made out of composition materials. Mathematical models of the process of drying and roasting of plates covering the hull were made with the help of APL. As a result, the percentage of defects during the production of the cover plates was reduced, saving a lot of money and effort.

share|improve this answer

protected by Yannis Feb 9 '14 at 16:43

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.