Luau, eine Typprüfungsvariante der Lua-Sprache, wird Open Source

Vor kurzem Die Veröffentlichung der ersten Version wurde angekündigt unabhängig von Programmiersprache Luau, das die Entwicklung von Lua fortsetzt und auch mit früheren Versionen von Lua 5.1 kompatibel ist.

Die Luau-Sprache ist hauptsächlich für die Einbettung von Skript-Engines entwickelt in Anwendungen und zielt auf hohe Leistung und geringen Ressourcenverbrauch ab. Der Projektcode ist in C++ geschrieben und steht unter der MIT-Lizenz.

Luau erweitert Lua um Typprüfungsfunktionen und einige Builds neue Syntax wie String-Literale. Die Sprache ist kompatibel mit früheren Versionen von Lua 5.1 und teilweise mit neueren Versionen. Die Lua Runtime API wird unterstützt, Ermöglicht die Verwendung von Luau mit bereits vorhandenen Codes und Links.

Ab heute ist Luau kein untrennbarer Bestandteil der Roblox-Plattform mehr; ist eine unabhängige Open-Source-Sprache.

Die Sprachlaufzeit basiert auf stark überarbeitetem Lua 5.1 Laufzeitcode, der Interpreter wurde jedoch komplett neu geschrieben. Die Entwicklung beinhaltete einige neue Optimierungstechniken, die eine höhere Leistung im Vergleich zu Lua ermöglichten.

Als Roblox vor 15 Jahren gegründet wurde, haben wir Lua als Programmiersprache gewählt. Lua war klein, schnell, einfach zu integrieren und zu erlernen und eröffnete unseren Entwicklern enorme Möglichkeiten.

Ein Großteil von Roblox wurde auf Lua aufgebaut, darunter Hunderttausende von Zeilen intern entwickelten Codes, der die Roblox-Anwendung und Roblox Studio bis heute antreibt, und die Millionen von Erfahrungen, die Entwickler geschaffen haben. Für viele von ihnen war es die erste Programmiersprache, die sie lernten.

Das Projekt wurde von Roblox entwickelt und wird in Spielplattformcode und benutzerdefinierten Anwendungen verwendet von diesem Unternehmen, einschließlich des Herausgebers von Roblox Studio. Luau wurde zunächst hinter verschlossenen Türen entwickelt, aber am Ende entschied man sich, es in die Kategorie der offenen Projekte zur weiteren gemeinsamen Entwicklung unter Beteiligung der Community zu überführen.

Features:

  • Ein sequentielles Typsystem, das eine Zwischenposition zwischen dynamischem und statischem Schreiben einnimmt. Luau ermöglicht bei Bedarf statisches Schreiben, indem Typinformationen durch spezielle Anmerkungen angegeben werden.
  • Die eingebaute Typen "Any", "nil", "boolean", "number", "string" und "thread". Gleichzeitig bleibt die Möglichkeit erhalten, dynamische Typisierung zu verwenden, ohne den Typ von Variablen und Funktionen explizit zu definieren.
  • Unterstützung für Literalzeichenfolgen (wie in Lua 5.3)
  • Unterstützung des Ausdrucks "continue", zusätzlich zum bestehenden Schlüsselwort "break", um zu einer neuen Iteration der Schleife zu springen.
  • Unterstützung für Verbundzuweisungsoperatoren
  • Unterstützung bei der Nutzung von bedingte Blöcke "Wenn-dann-sonst" in Form von Ausdrücken, die den während der Ausführung des Blocks berechneten Wert zurückgeben. Sie können eine beliebige Anzahl von elseif-Anweisungen in einem Block angeben.
  • Das Vorhandensein eines Sandbox-Modus wodurch Sie nicht vertrauenswürdigen Code ausführen können. Diese Funktion kann verwendet werden, um Ihren eigenen Code und Code, der von einem anderen Entwickler geschrieben wurde, zu organisieren, zum Beispiel Bibliotheken von Drittanbietern, die nicht garantiert werden können, um nebeneinander zu laufen.
  • Eine Einschränkung der Standardbibliothek, aus der Funktionen entfernt wurden, die möglicherweise zu Sicherheitsproblemen führen könnten. Zum Beispiel Bibliotheken "io" (Zugriff auf Dateien und Startprozesse), "Package" (Zugriff auf Dateien und Lademodule), "os" (Funktionen zum Zugriff auf Dateien und zum Ändern von Umgebungsvariablen wurden entfernt), "Debug" (unsichere Speicherbehandlung), "dofile" und "loadfile" (Dateisystemzugriff).
  • Stellen Sie Tools für die statische Codeanalyse, Fehlererkennung (Linter) und die Validierung der Verwendung von Typen bereit.
  • Analysator, Bytecode-Interpreter und leistungsstarker proprietärer Compiler.
  • Luau unterstützt noch keine JIT-Kompilierung, aber es wird argumentiert, dass der Luau-Interpreter in einigen Situationen in seiner Leistung mit LuaJIT vergleichbar ist.

Schließlich wenn Sie mehr darüber wissen möchtenkönnen Sie die Details überprüfen im folgenden Link.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.