Die Entwickler der Programmiersprache Mojo haben das Toolkit Mojo SDK 0.7 veröffentlicht, mit dem sich Projekte auf einem lokalen System kompilieren lassen. Das Mojo SDK enthält die notwendigen Komponenten für die Anwendungsentwicklung in der Sprache Mojo, darunter einen Compiler, eine Laufzeitumgebung, eine interaktive REPL-Shell zum Erstellen und Ausführen von Programmen, einen Debugger, ein Add-on für den Code-Editor Visual Studio Code (VS Code) mit Unterstützung für automatische Eingabevervollständigung, Codeformatierung und Syntaxhervorhebung sowie ein Modul zur Integration mit Jupyter zum Erstellen und Ausführen von Mojo Notebooks. Mojo SDK-Builds sind für die Linux-Plattform vorbereitet. Der Quellcode des Compilers und weiterer Entwicklungen des Projekts soll nach Abschluss des Entwurfs der internen Architektur veröffentlicht werden.
In der neuen Version:
- Dict-Typ mit Implementierung assoziativer Arrays zum Speichern von Schlüssel-/Wertpaaren hinzugefügt.
- Der sichere Zeigertyp „Reference“ wurde hinzugefügt und kann als Alternative zu regulären unsicheren Zeigern verwendet werden. Reference bietet die Verfolgung von Informationen zur Zeigerlebensdauer und Indirektionsprüfungen.
- Die Funktionen num_physical_cores, num_logical_cores und num_performance_cores wurden der Standardbibliothek sys.info hinzugefügt, um Informationen zu physischen und logischen CPUs zu erhalten und auf Leistungsindikatoren zuzugreifen.
- Der Compiler wurde mit der Option „-D MOJO_ENABLE_ASSERTIONS“ aktualisiert, um Debugprüfungen (Assertions) in Standardbibliotheksfunktionen zu aktivieren und verschiedene Fehlertypen zu erkennen. Standardmäßig ist dieser Modus deaktiviert, da er die Leistung beeinträchtigt.
- Die Vorgänge „Alle Referenzen suchen“ und „Zu Referenzen gehen“ wurden dem Mojo Language Server und dem Visual Studio Code-Plugin hinzugefügt.

Das Mojo-Projekt wird von Chris Lattner geleitet, dem Gründer und Chefarchitekten des LLVM-Projekts und Entwickler der Programmiersprache Swift. Die Sprache Mojo vereint Benutzerfreundlichkeit für Forschung und Rapid Prototyping mit der Eignung für die Erstellung leistungsstarker Endprodukte. Ersteres wird durch die Verwendung der vertrauten Python-Syntax erreicht, Letzteres durch die Fähigkeit zur Kompilierung in Maschinencode, speichersichere Mechanismen (z. B. statische Typisierung, Referenzlebensdauerverfolgung und Variablen-Borrowing-Prüfungen) und den Einsatz von Hardwarebeschleunigung (z. B. GPUs, spezialisierte Beschleuniger für maschinelles Lernen und Vektorprozessoranweisungen). Weitere Informationen zu Mojo finden Sie in der ersten Ankündigung des Projekts.
Source: opennet.ru

