4 ms·
> The last 10 years have created a legion of developers who are really only familiar with JavaScript That probably played 0 role into this. When the project wa
by zaarn 8y ago
> The last 10 years have created a legion of developers who are really only familiar with JavaScript
That probably played 0 role into this. When the project was created, about 20 to 15 years ago, people put in the design specs. The language selection was JS, Python 1.5 (1.5, not 2, not 3, 1.5, released in 1999) and a custom script language.
NASA decided for JS because Python used more memory.
The JS that is being run is essentially IE6 or IE5-level, so none of the modern features introduced in IE8 and forwards that make it all so easy.
I'd expect more modern variants of JS (TypeScript) or even something like Rust to make an appearence in 15 years or so. Atleast for these kinds of missions.
- plopz 8y agoYeah, in 2003 this version of js worked with vxworks and didn't leak memory like python. I'm sort of surprised they didn't go with tcl though.
- harshreality 8y agoThe reason they didn't choose tcl had nothing to do with the language. > 2. An attempt was made to port each scripting engine to the VxWorks real-time operating system on a flight-like Power PC by embedding it into a payload flight software application. TCL was dropped from the study when it could not be successfully ported to VxWorks. JavaScript, Python and G-script were successfully ported and a series of tests with prototype flight software applications were run in order to rank them against the success criteria. https://www.scribd.com/document/407354589/Event-driven-James-Webb-Space-Telescope-operations-using-on-board-JavaScripts https://www.scribd.com/document/407354589/Event-driven-James...
- plopz 8y agoAhh, that makes sense then.
- cartoonfoxes 8y agoI would have assumed porting TCL would have been the most straightforward of the bunch. What features made it so difficult to work with?
- theandrewbailey 8y agoWas the Python 1 to 2 migration anywhere near as bad as the bloodbath that 2 to 3 has been? (My guess: no, but that happened well before my Python initialization.)
- simonh 8y agoThe Python community was growing so fast, within a couple of years most Python developers had never used 1.x. Also 2.0 introduced an awful lot of very valuable improvements. In any case, 1.6 had some source incompatibilities with 1.5.2 anyway, so eh.
- michelpp 8y ago1->2 was not backwards incompatible like 2->3 was.