Sun apre il codice di un altro linguaggio

0
570

Sviluppato per un progetto di supercomputing finanziato da DARPA (Defense Advanced Research Projects Agency), Fortress è un linguaggio di nuova generazione pensato per rimpiazzare l'ormai vetusto Fortran e semplificare la creazione di applicazioni per il calcolo parallelo. Il nuovo linguaggio di Sun, infatti, è stato progettato per sfruttare a fondo le architetture multiprocessore e multicore, dunque anche l'ultima generazione di CPU mainstream di Intel e AMD e il processore UltraSPARC T1 della stessa Sun. A tal fine Fortress utilizza una sintassi, una semantica e una tipizzazione dei dati studiate ad hoc, ed è in grado di generare codice multithreading già ottimizzato per l'esecuzione su più processori logici o fisici.

Pur essendo orientato al calcolo numerico, Fortress si rivolge a campi applicativi più ampi di quelli di Fortran, e questo anche grazie al supporto nativo, sppure ancora lacunoso, alla programmazione orientata agli oggetti.

"Fortress è stato progettato come un linguaggio "growable" (capace di crescere, NdR), in grado di supportare con eleganza l'aggiunta di future funzionalità", si spiega sul sito di Fortress. "Infatti, buona parte del linguaggio stesso (persino la definizione degli array e di altri tipi base) è codificato in librerie che si trovano al di sopra del nucleo, relativamente piccolo, di Fortress".

Come si è anticipato, la prima implementazione del linguaggio è costituita da un prototipo open source dell'interprete che esegue il codice Fortress riga per riga. Sun ha scelto di far girare tale interprete al di sopra di Java in modo da renderlo immediatamente compatibile con un grande numero di sistemi e piattaforme.

Il team di sviluppo ha già in cantiere la creazione di un compilatore Fortress che, anche grazie ad una tecnologia di ottimizzazione dinamica del codice, dovrebbe migliorare significativamente le performance dei programmi.

L'interprete, scaricabile da qui, è corredato da alcuni tool e librerie che adottano licenze open source differenti da quella BSD, tra cui GPL e Apache.

 

Articolo tratto da: Punto Informatico