Gli sviluppatori del linguaggio di programmazione Mojo hanno pubblicato la versione 0.7 dello strumento Mojo SDK, che consente di compilare progetti in locale. Mojo SDK include i componenti necessari per sviluppare applicazioni nel linguaggio Mojo, tra cui il compilatore, il runtime, un'interfaccia REPL interattiva per la creazione e l'esecuzione di programmi, un debugger, un'estensione per l'editor di codice Visual Studio Code (VS Code) con supporto per l'autocompletamento, il formattaggio del codice e l'evidenziazione della sintassi, e un modulo per l'integrazione con Jupyter per la creazione e l'esecuzione di notebook Mojo. Le build di Mojo SDK sono preparate per la piattaforma Linux. I sorgenti del compilatore e di altre parti del progetto saranno resi disponibili dopo il completamento della progettazione dell'architettura interna.
Nella nuova versione:
- È stato aggiunto il tipo Dict con implementazione di array associativi per memorizzare coppie chiave/valore.
- È stato introdotto un tipo sicuro (safe) per lavorare con i puntatori "Reference", che può essere utilizzato come alternativa ai normali puntatori non sicuri (unsafe). Reference si distingue per il tracciamento delle informazioni sulla durata di vita del puntatore e per i controlli sugli accessi indiretti.
- Nella libreria standard sys.info sono state aggiunte le funzioni num_physical_cores, num_logical_cores e num_performance_cores per ottenere informazioni sui CPU fisici e logici, oltre ad accedere ai contatori delle prestazioni.
- Nel compilatore è stata aggiunta l'opzione «-D MOJO_ENABLE_ASSERTIONS» per attivare i controlli di debug (assertion) nelle funzioni della libreria standard, al fine di individuare vari tipi di errori. Per default, la modalità è disattivata, poiché influisce negativamente sulle prestazioni.
- Nel Mojo Language Server e nel plugin per Visual Studio Code sono state aggiunte le operazioni di ricerca di tutti i riferimenti (Find All References) e di accesso ai riferimenti (Go to References).

Il progetto Mojo si sviluppa sotto la guida di Chris Lattner, fondatore e principale architetto del progetto LLVM e creatore del linguaggio di programmazione Swift. Il linguaggio Mojo combina la facilità d'uso per ricerche e rapidi prototipi con la capacità di creare prodotti finali ad alte prestazioni. Questo è possibile grazie all'uso della sintassi familiare di Python, mentre l'alto rendimento è garantito dalla possibilità di compilazione in codice macchina, da meccanismi di gestione sicura della memoria (come la tipizzazione statica, il tracciamento del ciclo di vita dei riferimenti e la verifica dei prestiti delle variabili) e dal ricorso a strumenti per l'accelerazione hardware delle calcolazioni (ad esempio, possono essere coinvolti GPU, acceleratori specializzati per l'apprendimento automatico e istruzioni per processori vettoriali). Maggiori informazioni su Mojo possono essere trovate nel primo annuncio del progetto.
Fonte: opennet.ru

