Endo 0.1.0

Endo 0.1.0 Endo 0.1.0 Endo 0.1.0

È stata rilasciata la prima versione pubblica 0.1.0 di una shell interattiva multipiattaforma e di un interprete per un linguaggio funzionale in stile F# Endo.

Il progetto è stato creato dall'autore e principale sviluppatore dell'emulatore di terminale Contour in C++ (standard C++23) e distribuito sotto la licenza Apache 2.0.

In questa versione:

  • Lingua
    • binding, che sono immutabili di default quando si utilizza let, e modificabili quando si utilizza let mut;
    • inferenza dei tipi (Hindley-Milner) — i tipi vengono controllati, ma raramente è necessario specificarli esplicitamente;
    • pattern matching con condizioni, distruzione e pattern "o";
    • unioni discriminate, record e tipi integrati Option/Result;
    • funzioni curried, applicazione parziale e composizione di funzioni (>> , <<);
    • espressioni lambda con sintassi dei segnaposto (_ + 1, _.field);
    • costruzioni di elenco con intervalli e filtri;
    • calcoli "pigri" e sequenze;
    • ottimizzazione della ricorsione di coda;
    • moduli e importazione.
  • Strumenti di sviluppo
    • Language Server Protocol — server LSP completo ($ endo —lsp) con diagnostica, completamento automatico, suggerimenti al passaggio del mouse, salto alla definizione, ricerca di riferimenti, rinominazione, formattazione, token semantici, operazioni sul codice, suggerimenti incorporati, Code Lens e molto altro;
    • Debug Adapter Protocol — server DAP completo ($ endo —dap) con supporto per breakpoint, esecuzione passo-passo, visualizzazione delle variabili, calcolo delle espressioni e disassemblaggio;
    • espansione per VS Code — evidenziazione della sintassi, integrazione con LSP/DAP, frammenti di codice e debug senza configurazione aggiuntiva.
  • Shell
    • esecuzione di comandi compatibili con Bash: reindirizzamento, pattern, &&/||, gestione dei task;
    • comandi integrati strutturati — ls, ps, jobs, git log, git status, docker ps — restituiscono record tipizzati con dati;
    • pipeline doppie: |> per la composizione di funzioni, | per i processi;
    • sostituzione di variabili/comandi/processi, espansione delle parentesi graffe e delle tilde;
    • oltre 110 comandi e funzioni integrati del linguaggio;
    • esecuzione di script .endo con risoluzione dei moduli.
  • Modalità "agente" AI
    • aiuto "AI" integrato, attivato con il simbolo # in un campo di input vuoto;
    • fornitori online supportati: Claude, OpenAI, compatibili con OpenAI (Ollama, vLLM, LM Studio) e Gemini;
    • supporto per modelli locali in formato GGUF del progetto llama.cpp;
    • 18 strumenti integrati per lavorare con file, git, eseguire comandi e accedere a risorse web;
    • streaming delle risposte in formato Markdown.

Fonte: linux.org.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster