Endo 0.1.0

Endo 0.1.0 Endo 0.1.0 Endo 0.1.0

A avut loc prima lansare publică 0.1.0 a shell-ului interactiv multiplatformă și a interpreterului pentru un limbaj funcțional în stil F# Endo.

Proiectul a fost creat de autorul și principalul dezvoltator al emulatorului de terminal Contour în limbajul C++ (standard C++23) și este distribuit sub licența Apache 2.0.

In this release:

  • Language
    • asocieri, care, în mod implicit, sunt imutabile atunci când se utilizează let, și mutabile când se utilizează let mut;
    • informația despre tipuri (Hindley-Milner) — tipurile sunt verificate, dar rareori trebuie specificate în mod explicit;
    • potrivirea de modele cu condiții, destructurarea și modelele „sau”;
    • uniri discriminate, structuri și tipuri încorporate Option/Result;
    • funcții curry, aplicare parțială și compunerea funcțiilor (>>, <<);
    • expresii lambda cu sintaxă de locuri rezervate (_ + 1, _.field);
    • structuri de liste cu intervale și filtre;
    • calculări „leneșe” și secvențe;
    • optimizarea recursiei terminale;
    • module și importuri.
  • Instrumente de dezvoltare
    • Proiectul Language Server Protocol — un server LSP complet ($ endo —lsp) cu diagnosticare, completare automată, sugestii la trecerea cursorului, navigare la definiții, căutare de referințe, redenumire, formatare, tokenuri semantice, acțiuni asupra codului, sugestii încorporate, Code Lens și multe altele;
    • Proiectul Debug Adapter Protocol — un server DAP complet ($ endo —dap) cu suport pentru puncte de oprire, execuție pas cu pas, vizualizarea variabilelor, calcularea expresiilor și dezassemblare;
    • extensie pentru VS Code — evidențierea sintaxei, integrarea cu LSP/DAP, fragmente de cod și depanare fără configurări suplimentare.
  • Shell
    • executarea comenzilor, compatibilă cu Bash: redirecționare, șabloane, && / ||, gestionarea sarcinilor;
    • comenzi încorporate structurate — ls, ps, jobs, git log, git status, docker ps — returnează înregistrări tipizate cu date;
    • double pipelines: |> pentru compunerea funcțiilor, | pentru procese;
    • substituirea variabilelor/comenzilor/proceselor, desfășurarea acoladelor și tildei;
    • peste 110 comenzi și funcții încorporate ale limbajului;
    • executarea scripturilor .endo cu permisiunea modulelor.
  • Modul agent „AI”
    • asistență „AI” încorporată, activată cu simbolul # în câmpul de introducere gol;
    • furnizori online suportați: Claude, OpenAI, compatibili OpenAI (Ollama, vLLM, LM Studio) și Gemini;
    • suport pentru modele locale în formatul GGUF al proiectului llama.cpp;
    • 18 instrumente integrate pentru gestionarea fișierelor, git, execuția comenzilor și accesul la resurse web;
    • transmiterea fluxului de răspunsuri în format Markdown.

Sursa: linux.org.ru

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster