Wikipedia:Reference desk/Archives/Computing/2025 April 6

Computing desk
< April 5 << Mar | April | May >> Current desk >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is a transcluded archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


April 6

edit

source code

edit

Which programming languages were used to write the software of the Space Shuttle controls? I need to build a control system by using their programming language to make simulators. Is it C or C++? Or maybe Assembly?   Gnu779 ( talk) 13:50, 6 April 2025 (UTC)[reply]

Mainly HAL/S. But since your code will be different from the original software and will run on different hardware (unless you can find five IBM AP-101Bs), who cares what it is written as long as it is functionally the same?  ​‑‑Lambiam 16:03, 6 April 2025 (UTC)[reply]
Wait, are there any HAL/S compilers on GNU/Linux?   Gnu779 ( talk) 05:57, 7 April 2025 (UTC)[reply]
There must be because LinuxCNC uses HAL. Look at https://www.linuxcnc.org/ for more descriptions and I see it has tutorials. 68.187.174.155 (talk) 10:34, 7 April 2025 (UTC)[reply]
Ok, downloaded that. But which programming language is used in the Orion control system.   Gnu779 ( talk) 12:57, 7 April 2025 (UTC)[reply]
NASA documentation page 11 suggests flight software is a mix of C and C++. Tool chains, simulation software, and the ground segment are a mix of C, C++, and Java. Some of the stuff is open source, so google and github are your friends if you want to take a peek. If you are interested in Orion computer stuff, that PDF has some quite nice tech porn. 85.76.98.115 (talk) 13:24, 7 April 2025 (UTC)[reply]
Are they in public ___domain? I want to relicense it with the GPL after compiling with gcc.   Gnu779 ( talk) 13:35, 7 April 2025 (UTC)[reply]
What OS do they use? gnu/lINUX? uNIX?   Gnu779 ( talk) 13:33, 8 April 2025 (UTC)[reply]
Page 11 describes the simulator and ground machines being in Linux (presumably GNU/Linux, though there are distros that lack the former) and the flight computer itself using VxWorks. Sesquilinear (talk) 06:33, 10 April 2025 (UTC)[reply]
Yep, it's used ANYWHERE.   Gnu779 ( talk) 09:16, 11 April 2025 (UTC)[reply]
I believe the space shuttle control software was written primarily in Fortran. Stanleykswong (talk) 18:43, 8 April 2025 (UTC)[reply]
The space shuttle program began in the 1960s, and the C language first appeared in 1972. C++ came later.  Therefore, the space shuttle control software cannot be written in C or C++. Stanleykswong (talk) 18:56, 8 April 2025 (UTC)[reply]
But it fully started in 1981, 9 years after C.   Gnu779 ( talk) 12:45, 9 April 2025 (UTC)[reply]
Yes, the program was fully started in 1981. But its development started in 1969. I think it would be difficult to switch to another programming language once a prototype is developed.  Moreover, for a project as serious as the space shuttle, project managers may be afraid to use a newly launched software platform. Stanleykswong (talk) 16:15, 9 April 2025 (UTC)[reply]
Plus they think C is kinda unsafe. Buffer overflows, bugs, memory leaks and crashes can crash shuttles and kill crew.   Gnu779 ( talk) 12:21, 10 April 2025 (UTC)[reply]
Ok, but how about Crew Dragon?   Gnu779 ( talk) 13:01, 11 April 2025 (UTC)[reply]
I am not going to look up licensing terms for you. Learn to google. Consult your lawyer if you think compiling something allows you to license something somehow. If you think "relicencing" is a real thing, consult your lawyer. We do not offer legal advice here. 15:56, 7 April 2025 (UTC)