Bolo vydané prvé verejné vydanie verzie 0.1.0 interaktívneho multiplatformového príkazového shellu a interpreta pre funkcionálny jazyk v štýle F#. endo.
Projekt vytvoril autor a hlavný vývojár emulátora terminálu obrys v jazyku C++ (štandard C++23) a distribuovaný pod licenciou Apache 2.0.
V tomto vydaní:
- Jazyk
- väzby, ktoré sú štandardne nemenné pri použití let a meniteľné pri použití let mut;
- inferencia typu (Hindley-Milner) - typy sa kontrolujú, ale zriedkakedy ich treba explicitne špecifikovať;
- podmienené porovnávanie vzorov, deštrukturovanie a vzory „alebo“;
- rozlíšené zjednotenia, záznamy a vstavané typy Možnosti/Výsledky;
- kari funkcie, čiastočná aplikácia a kompozícia funkcií (>>, <<);
- lambda výrazy so zástupnou syntaxou (_ + 1, _.field);
- konštrukcie zoznamov s rozsahmi a filtrami;
- lenivé vyhodnotenia a sekvencie;
- optimalizácia chvostovej rekurzie;
- moduly a importy.
- Vývojové nástroje
- Language Server Protocol — plnohodnotný LSP server ($ endo -lsp) s diagnostikou, automatickým dopĺňaním, radami pri prechode myšou, prechodom na definíciu, vyhľadávaním referencií, premenovaním, formátovaním, sémantickými tokenmi, akciami kódu, radami v kóde, funkciou Code Lens a mnohým ďalším;
- Debug Adapter Protocol je plne funkčný DAP server ($ endo --dap) s podporou prerušovacích bodov, vykonávania v jednom kroku, prezerania premenných, vyhodnocovania výrazov a disassembleru;
- Rozšírenie VS Code – zvýrazňovanie syntaxe, integrácia LSP/DAP, úryvky kódu a ladenie ihneď po vybalení.
- škrupina
- Vykonávanie príkazov kompatibilných s Bash: presmerovanie, zástupné znaky, &&/||, správa úloh;
- štruktúrované vstavané príkazy - ls, ps, jobs, git log, git status, docker ps - vracajú typované záznamy s údajmi;
- duálne pipeline: |> pre kompozíciu funkcií, | pre procesy;
- substitúcia premenných/príkazov/procesov, rozširovanie zátvoriek a vlnoviek;
- viac ako 110 vstavaných príkazov a jazykových funkcií;
- Spúšťanie skriptov .endo s rozlíšením modulov.
- Režim agenta AI
- vstavaná pomoc s umelou inteligenciou, spustená symbolom # do prázdneho vstupného poľa;
- Podporovaní online poskytovatelia: Claude, OpenAI, kompatibilní s OpenAI (Ollama, vLLM, LM Studio) a Gemini;
- podpora lokálnych modelov vo formáte projektu GGUF call.cpp;
- 18 vstavaných nástrojov na prácu so súbormi, gitom, spúšťanie príkazov a prístup k webovým zdrojom;
- Streamovanie odpovedí vo formáte Markdown.
Zdroj: linux.org.ru
