Quais linguagens de programação de software foram usadas pelo programa espacial da União Soviética?

306

Interessei-me pelo programa espacial soviético e descobri que o software da sonda Buran por volta de 1988 foi escrito em Prolog.

Alguém sabe quais idiomas poderiam ter sido usados ​​em missões anteriores, especialmente as missões rover PrOP-M de Mars do início dos anos 1970, que eram um tanto autônomas e capazes de superar obstáculos?

Editar

Minha fonte para o Buran Prolog é este documento desclassificado do site da CIA de maio de 1990. Não consegui encontrar uma versão de OCR, então aqui está a citação relevante da p. 0449:

De acordo com a literatura de código aberto, os soviéticos usaram a linguagem de programação desenvolvida em francês conhecida como Prolog para desenvolver software de sistema a bordo para o veículo Buran ...

shamp00
fonte
4
você está interessado em todos os projetos listados no artigo da Wikipedia a que se refere - de 1957 a 1987? ou para 2011? Além disso, supondo que os computadores soviéticos fossem usados ​​em seu programa espacial, os idiomas que rodam neles se qualificariam?
Gnat #
2
Eu suspeitaria que o antigo programa espacial russo provavelmente usasse dispositivos de computação analógicos, assim como o US Army Air Corps e o primeiro programa espacial americano. Ouvi rumores de que os russos soviéticos dependiam mais de computadores analógicos do que os EUA, mas não posso confirmar a fonte. Os computadores analógicos eram geralmente mais rápidos e precisos do que os computadores digitais de sua época, mas não eram tão flexíveis (criados para uma única finalidade).
Dave Kennedy
1
@DaveKennedy Você está certo, na medida em que a União Soviética usou a computação analógica mais do que os EUA, até a década de 1970. Fui designado para um projeto usando um computador analógico em 1982 (nos EUA) e lembre-se de meu professor de engenharia mecânica que me disse que computadores analógicos haviam sido usados ​​extensivamente e com sucesso na URSS. Tentarei obter mais informações para que eu possa realmente responda a esta pergunta também.
Ellie Kesselman
2
Reddit discussão sobre esta questão.
precisa
1
Eu diria que qualquer afirmação que comece com "De acordo com a literatura de código aberto" pode estar errada - o programa espacial foi classificado e, portanto, desinformação deliberada pode ser colocada na literatura de código aberto.
Sharptooth

Respostas:

223

Há um livro em russo, alemão Noskin, Primeiros computadores (literalmente embarcado em máquinas de computação digital ) para aplicativos espaciais (Герман Носкин, Первые БЦВМ космического применения), ISBN 978-5-91918-093-7.

O próprio autor participou de muitos projetos iniciais (principalmente em hardware) e, segundo ele, o hardware analógico era a favor por um longo tempo, ele menciona que as tarefas de encontros espaciais não usavam computadores digitais até o final dos anos 70. Devido a essa política, muitos computadores digitais eram realmente provas de conceito, embora utilizados em outras áreas da economia soviética. O primeiro computador de acordo com ele usado a bordo foi o Argon-11S (Аргон-11С) nas missões não tripuladas da Lua, perto da Apollo-8 a tempo. Também Noskin diz brevemente que o computador de bordo Salut-4 era compatível com os computadores de uso geral ES usados ​​na economia soviética, por isso foi possível desenvolver software no PL-1 e no Fortran.

Existem várias menções aos idiomas do programa Buran nos sites russos. De acordo com Vladimir Parondjanov, um engenheiro do programa ( Russian Post ) desenvolveu três idiomas usando o russo como base: PROL2 (ПРОЛ2) para programas a bordo, Dipol (Диполь) para testes de terra e Laks (Лакс) para modelagem. Todos eles foram projetados para uso não apenas por programadores profissionais, mas também por engenheiros de outras áreas.

Quando o programa Buran foi fechado, eles foram fundidos em um novo idioma Drakon (Дракон, palavra russa para "Dragon") que é reivindicada ser uma linguagem "gráfica" com descrições bidimensionais dos programas e usando idiomas conhecidos e arbitrários para geração de código. Essa linguagem também foi projetada para uso por não programadores. O idioma provavelmente não possui uma comunidade internacional e nem é bem conhecido na Rússia, embora tenha sido fortemente promovido por seu autor, Vladimir Parondjanov (o artigo russo da Wikipedia é muito longo e foi excluído uma vez por não seguir as regras da Wikipedia). Drakon foi usado pela primeira vez na programação das missões de lançamento no mar e desde então tem sido usado em outros programas espaciais russos.

Maksee
fonte
3
Ótima resposta! Eu bisbilhotei um pouco mais e encontrei esta entrevista na qual o entrevistador diz 'Me disseram que o Argon-11S havia sido instalado em um veículo espacial enviado a Marte'.
shamp00
Boa resposta, mas o Sea Launch não é um programa russo. É a cooperação dos EUA, Rússia (estágio superior), Noruega e Ucrânia (transportadora).
defhlt
Como referência, os ES eram clones soviéticos diretos dos mainframes da IBM S / 360 . Enorme-a $$ bestas.
DVK
Esse material do DRAKON se parece muito com os diagramas de atividades UML. Ou eu perdi algo importante?
Dmitry Grigoryev
30

Nos anos 80, a terceira geração de computadores aéreos da Argônio usava Pascal, Fortran e Si. (Si?). Eu não encontrei nenhum outro idioma além do assembler usado antes disso.

Da história do computador aéreo de Argon

A família Argônio foi criada em três etapas. Durante o primeiro estágio (1964 - meados dos anos 70), 11 tipos de computadores para sistemas de controle espacial, aéreo e terrestre foram produzidos.

e

Em meados dos anos 80, iniciou-se o terceiro estágio de desenvolvimento dos computadores Argon. Em 1986, foi adotado o programa estadual cujo objetivo era criar famílias unificadas de computadores móveis, o SB EVM, com base nas arquiteturas ES EVM, POISK e SM EVM.

Um deles, o computador aerotransportado SB-3580, tinha:

Instalação de programação: OS RAFOS-11 entre sistemas. As linguagens de programação incluem: Assembler, Si, Pascal, Fortran.

fonte: Apresentando Argônio

David Pointer
fonte
13
Eu acho que Si é realmente apenas C. Eu fiz realmente usar uma marca soviética do compilador C chamado СиМ86 (para o clone CP / M chamado М86)
FIONBIO
20
Sim, C está escrito Си (Si) em russo.
4
foneticamente, dizer "Si" soa como "C" em latim e, presumo, idiomas eslavos.
Victor S
8
C, senhor. El mejor lenguaje.
precisa saber é o seguinte
RAFOS-11 é outro nome para RT-11.
sendmoreinfo
17

Me deparei com este artigo no ACM quote quad alguns anos atrás, " A History of APL in URSS ". Foi escrito por Andrei Kondrashev (Centro de Computação da Academia Russa de Ciências) e Oleg Luksha (Centro Educacional de Obninsk).

Uma citação interessante do artigo:

Pode ser interessante que a APL esteja diretamente relacionada ao design do ônibus espacial soviético "Buran". A proteção térmica é um dos principais elementos na construção de aparelhos desse tipo. É feito de materiais de composição. Modelos matemáticos do processo de secagem e torrefação de placas que cobrem o casco foram feitos com a ajuda da APL. Como resultado, a porcentagem de defeitos durante a produção das placas de cobertura foi reduzida, economizando muito dinheiro e esforço.

K Lettow
fonte