4 Punkte von xguru 4 시간 전 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Eine in Zig geschriebene dynamisch typisierte Sprache, die eine „everything is something“-Struktur übernimmt, bei der alles einen Wert zurückgibt
  • Unterstützt ein nahtloses Nebenläufigkeitsmodell, bei dem blockierender Code allein durch Voranstellen von spawn in nicht blockierenden Code umgewandelt wird
  • Mit dem Pipe-Operator (|>) werden Werte fortlaufend transformiert, wobei mit _ auf den unmittelbar vorherigen Wert verwiesen wird
    • Beispiel: "hello" |> _:upper() |> _:sub(1, 2)
  • Unterstützung für Pattern Matching und Result-Typen; Funktionen geben Werte in der Form (:ok, value) / (:err, reason) zurück und werden anschließend mit match verzweigt verarbeitet
  • Integrierte First-Class-Tests, die nur dann kompiliert und ausgeführt werden, wenn das Flag --test gesetzt ist; bietet einzelne test- sowie gruppierte suite-Blöcke
  • Bietet eine Embedding-API, mit der sich über revo.h direkt in C-Code einbetten lässt
    • erevo_vm_create, erevo_compile, erevo_run, erevo_eval usw.
  • Integrierter LSP-Server revolt, der Diagnostic/Go-to-Definition/Hover/Referenzen/Symbole verarbeitet
    • Wird standardmäßig mit Release-Builds gebündelt und mit revo --lsp gestartet
  • Stellt isocline als Standard-REPL-Backend bereit. Unterstützt mehrzeilige Eingabe/Tab-Vervollständigung/Verlaufssuche
  • Die Windows-Version ist noch unvollständig: Asynchrones Backend und vollständiger Zeileneditor werden nicht unterstützt
  • MIT-Lizenz

Noch keine Kommentare.

Noch keine Kommentare.