Die erste öffentliche Veröffentlichung 0.1.0 der plattformĂŒbergreifenden interaktiven Kommandozeilenschnittstelle und des Interpreters der funktionalen Sprache im Stil von F# hat stattgefunden. Endo.
Das Projekt wurde vom Autor und leitenden Entwickler des Terminalemulators Contour in C++ (Standard C++23) erstellt und unter der Lizenz Apache 2.0 veröffentlicht.
In dieser Ausgabe:
- Sprache
- Bindings, die standardmĂ€Ăig unverĂ€nderlich sind, wenn
letverwendet wird, und verĂ€nderlich bei der Verwendung vonlet mut; - Typausgabe (Hindley-Milner) â Typen werden ĂŒberprĂŒft, mĂŒssen jedoch selten explizit angegeben werden;
- Musterabgleich mit Bedingungen, Destrukturierung und 'oder'-Muster;
- diskriminierte Vereinigungen, DatensÀtze und eingebaute Typen Option/Result;
- Currying-Funktionen, partielle Anwendung und Funktionskomposition (>>, <<);
- Lambda-AusdrĂŒcke mit Platzhalter-Syntax (_ + 1, _.field);
- Listen-Konstrukte mit Bereichen und Filtern;
- âfauleâ Berechnungen und Sequenzen;
- Optimierung der Endrekursion;
- Module und Import.
- Bindings, die standardmĂ€Ăig unverĂ€nderlich sind, wenn
- Entwicklungswerkzeuge
- Language Server Protocol â ein voll funktionsfĂ€higer LSP-Server ($ endo âlsp) mit Diagnose, AutovervollstĂ€ndigung, Tooltipps, Sprung zu Definitionen, Linksuche, Umbenennung, Formatierung, semantischen Tokens, Code-Aktionen, integrierten Hinweisen, Code Lens und vielem mehr;
- Debug Adapter Protocol â ein voll funktionsfĂ€higer DAP-Server ($ endo âdap) mit UnterstĂŒtzung fĂŒr Haltepunkte, schrittweises AusfĂŒhren, Variablenansicht, Ausdrucksberechnung und Disassemblierung;
- Erweiterung fĂŒr VS Code â Syntaxhervorhebung, Integration mit LSP/DAP, Code-Snippets und Debugging ohne zusĂ€tzliche Konfiguration.
- Shell
- Bash-kompatible BefehlsausfĂŒhrung: Umleitungen, Muster, &&/||, Aufgabenverwaltung;
- Strukturierte integrierte Befehle â ls, ps, jobs, git log, git status, docker ps â geben typisierte Aufzeichnungen mit Daten zurĂŒck;
- Doppelte Pipelines: |> zur Funktionskomposition, | fĂŒr Prozesse;
- Variable/Befehlsprozessersatz, Aufklappen von geschweiften Klammern und Tilden;
- Ăber 110 integrierte Befehle und Funktionen der Sprache;
- AusfĂŒhrung von .endo-Skripten mit Modulsichtbarkeit.
- Modus âKIâ-Agent
- integrierte KI-Hilfe, die durch ein Symbol aktiviert wird # im leeren Eingabefeld;
- unterstĂŒtzte Online-Anbieter: Claude, OpenAI, OpenAI-kompatible (Ollama, vLLM, LM Studio) und Gemini;
- Support fĂŒr lokale Modelle im GGUF-Format des Projekts llama.cpp;
- 18 integrierte Werkzeuge zur Dateiverwaltung, Git, AusfĂŒhrung von Befehlen und Zugriff auf Webressourcen;
- Streaming von Antworten im Markdown-Format.
Quelle: linux.org.ru
