4 ms·
I associate Forth with astronomy.
by perl4ever 5y ago
I associate Forth with astronomy.
- ollran 5y agoThere is a list of Forth projects used in NASA missions. https://www.forth.com/resources/space-applications/ https://www.forth.com/resources/space-applications/
- praptak 5y agoDon't you mean Fortran?
- rscho 5y agoForth was originally thought of as a "fourth generation" language when Chuck Moore designed it while doing astronomy research.
- macintux 5y agoW. Richard Stevens wrote an early primer on Forth for Kitt Peak. http://forth.org/tutorials.html http://forth.org/tutorials.html
- lebuffon 5y agoSurprise. Fortran was used as well but Forth was used quite a bit by NASA. In some ways it is extremely auditable. A handful of assembler functions sit at the bottom the rest is Forth. Minimal numbers of variables in memory if code is written to use the data stack for inputs and outputs to functions. Much easier to certify than GCC. :-) There were a number of Shuttle experiments where the control software was written in Forth. It gives you a control interpreter out of the box and also bit level access to hardware so you can write custom drivers and then script the hardware control in the functions you wrote or compile them where speed is required, using an 8K..12K kernel. The Cassini probe used Forth software running on a Forth 2-stack CPU.
- perl4ever 5y agoNo, and I didn't mean spaceflight either. Which Forth was apparently used for but I didn't recall until I googled it. I associate Fortran with nuclear reactor engineers. I was told they were some of the earliest users of it, maybe even before it was out of "beta", so to speak. Quote from 1955: "Considerable effort is now being made by various groups to develop automatic coding techniques which would make the use of a large machine feasible on this kind of problem. The system of greatest interest is Fortran, which is being set up by IBM for the 704; there is some chance that it will be available by the end of the year. To use it, the engineer who is setting up the problem must formulate it in a somewhat modified algebraic notation, which is then entered directly in the machine. As a result, the task of stating detailed machine orders and assigning addresses, which is largely a clerical task and constitutes most of the work of coding, is completely eliminated. Some scepticism has been expressed by experienced programmers, on the grounds that the resulting code would be far less efficient than one designed by hand. Even if this is the case, however, a system of this kind will still have a wide range of applicability in reactor analysis and should be kept in mind in considering future machine work."