Endo 0.1.0

Endo 0.1.0 Endo 0.1.0 Endo 0.1.0

Die erste öffentliche Version 0.1.0 der plattformübergreifenden interaktiven Kommandozeile und des Interpreters einer funktionalen Sprache im Stil von F# wurde veröffentlicht. Endo.

Das Projekt wurde vom Autor und Hauptentwickler des Terminalemulators ins Leben gerufen. Contour in C++ (Standard C++23) und wird unter der Lizenz Apache 2.0 vertrieben.

In dieser Ausgabe:

  • Sprache
    • Bindungen, die standardmäßig unveränderlich sind, wenn man let verwendet, und veränderlich sind, wenn man let mut verwendet;
    • Typausgabe (Hindley-Milner) — Typen werden überprüft, müssen aber selten explizit angegeben werden;
    • Musterabgleich mit Bedingungen, Destrukturierung und "oder"-Muster;
    • diskriminierte Vereinigungen, Datensätze und eingebaute Option/Result-typen;
    • Currying, partielle Anwendung und Funktionskomposition (>>, <<);
    • Lambda-Ausdrücke mit Platzhalter-Syntax (_ + 1, _.field);
    • Listen-Konstruktionen mit Bereichen und Filtern;
    • "faule" Berechnungen und Sequenzen;
    • Optimierung der Tail-Rekursion;
    • Module und Import.
  • Entwicklungstools
    • Language Server Protocol — ein voll funktionsfähiger LSP-Server ($ endo —lsp) mit Diagnosen, Autovervollständigung, Tooltips beim Hover, Navigation zu Definitionen, Link-Suche, Umbenennung, Formatierung, semantischen Tokens, Aktionen an Code, eingebauten Tooltips, Code Lens und vielem mehr;
    • Debug Adapter Protocol — ein voll funktionsfähiger DAP-Server ($ endo —dap) mit Unterstützung für Breakpoints, Schritt-für-Schritt-Ausführung, Variablenansicht, Berechnung von Ausdrücken und Disassemblierung;
    • Erweiterung für VS Code — Syntaxhervorhebung, Integration mit LSP/DAP, Code-Snippets und Debugging ohne zusätzliche Konfiguration.
  • Shell
    • Bash-kompatible Ausführung von Befehlen: Umleitungen, Patterns, && / ||, Aufgabenverwaltung;
    • strukturelle eingebettete Befehle — ls, ps, jobs, git log, git status, docker ps — geben typisierte Datensätze zurück;
    • Doppelte Pipelines: |> zur Funktionskomposition, | für Prozesse;
    • Variable/Befehls/Prozess-Ersatz, Entfaltung von geschweiften Klammern und Tilden;
    • über 110 eingebaute Befehle und Funktionen der Sprache;
    • Ausführung von .endo-Skripten mit Modulauflösung.
  • Agentenmodus "KI"
    • eingebaute "KI"-Hilfe, die mit dem Symbol gestartet wird # in einem leeren Eingabefeld;
    • unterstützte Online-Anbieter: Claude, OpenAI, OpenAI-kompatible (Ollama, vLLM, LM Studio) und Gemini;
    • Unterstützung für lokale Modelle im GGUF-Format des Projekts llama.cpp;
    • 18 integrierte Werkzeuge zur Arbeit mit Dateien, Git, Ausführung von Befehlen und Zugriff auf Webressourcen;
    • Streaming von Antworten im Markdown-Format.

Quelle: linux.org.ru

60GB SSD 8Gb DDR4