La scorsa estate i mass media internazionali hanno dedicato un’ampia copertura alle prime foto scattate dal James Webb Space Telescope, il telescopio spaziale lanciato nello spazio il 25 dicembre 2021 per studiare formazioni stellari, nuclei di galassie e dischi protoplanetari.
Ad oggi è lo strumento più all’avanguardia che esista per l’astronomia a raggi infrarossi. Negli ultimi giorni si è scoperto che il programma impiegato per la gestione della sua strumentazione scientifica è scritto in JavaScript, uno dei linguaggi di programmazione più popolari al mondo.
JavaScript sul James Webb Space Telescope
Gli strumenti scientifici di cui è dotato il telescopio spaziale James Webb Space Telescope sono alloggiati in un modulo denominato ISIM, acronimo di Integrated Science Instrument Module. In totale sono quattro: FGS/NIRISS, MIRI, NIRCam e NIRSpec. Tutti e quattro concorrono al processo di acquisizione delle immagini da parte del telescopio.
L’elemento più interessante è che gli script eseguiti dalla sorgente dei comandi di questo modulo – denominata Script Processor Task – sono scritti in JavaScript.
Perché è sorprendente? È presto detto: JavaScript, pur essendo ancora oggi uno dei linguaggi di programmazione più usati in ambito informatico, ha alle spalle quasi 30 anni di onorata carriera.
Eppure, per il controllo delle operazioni scientifiche del James Webb Space Telescope, progetto da oltre 10 miliardi di dollari, la scelta è ricaduta su JavaScript. Per essere più precisi, il JWST utilizza una versione personalizzata di JavaScript, nota con il nome di Nombas ScriptEase 5.00e. Il rilascio di quest’ultima versione risale al 2003.
Perché proprio JavaScript?
Da una parte, dunque, per tanti può essere una sorpresa vedere l’utilizzo di JavaScript in un veicolo spaziale di una certa rilevanza. Dall’altra parte, però, sorprende fino a un certo punto.
Per risalire alla progettazione iniziale del James Webb Space Telescope bisogna tornare indietro fino al 1989. Da allora, trascorsero quindici anni prima che il team di sviluppo iniziasse a costruire il telescopio spaziale. Nel 2004 la versione personalizzata di JS – ScriptEase 5, rilasciato nel 2002 – era quindi una delle migliori opzioni disponibili.
È però importante sottolineare un altro dato significativo, cioè che JavaScript è il linguaggio degli script eseguiti dallo Script Processor Task, ossia la sorgente dei comandi primaria dell’ISIM (acronimo di Integrated Science Instrument Module).
Al contrario, per lo Script Processor gli scienziati hanno adottato il C++, a detta degli esperti un linguaggio di programmazione che più si addice a un veicolo spaziale.