Endo 0.1.0

Endo 0.1.0 Endo 0.1.0 Endo 0.1.0

The first public release of version 0.1.0 of a cross-platform interactive command shell and functional language interpreter in the style of F# has occurred. Endo.

The project was created by the author and main developer of the terminal emulator. Contour in C++ (C++23 standard) and is distributed under the Apache 2.0 license.

In this release:

  • Language
    • bindings, which are immutable by default when using let and mutable when using let mut;
    • type inference (Hindley-Milner) — types are checked but rarely need to be specified explicitly;
    • pattern matching with conditions, destructuring, and "or" patterns;
    • discriminated unions, records, and built-in Option/Result types;
    • currying functions, partial application, and function composition (>>,. <<);
    • lambda expressions with placeholder syntax (_ + 1, _.field);
    • list constructions with ranges and filters;
    • "lazy" computations and sequences;
    • tail recursion optimization;
    • modules and imports.
  • Development tools
    • Language Server Protocol — a full-featured LSP server ($ endo —lsp) with diagnostics, autocompletion, hover hints, go-to definition, link searching, renaming, formatting, semantic tokens, code actions, built-in hints, Code Lens, and much more;
    • Debug Adapter Protocol — a full-featured DAP server ($ endo —dap) supporting breakpoints, step execution, variable inspection, expression evaluation, and disassembly;
    • VS Code extension — syntax highlighting, LSP/DAP integration, code snippets, and debugging without additional setup.
  • Shell
    • Command execution compatible with Bash: redirection, patterns, &&/||, task management;
    • structured built-in commands — ls, ps, jobs, git log, git status, docker ps — return typed records with data;
    • double pipelines: |>: for function composition, | for processes;
    • variable/command/process substitution, brace expansion, and tilde expansion;
    • more than 110 built-in commands and functions of the language;
    • execution of .endo scripts with module resolution.
  • AI Agent Mode
    • built-in AI assistance, activated by the symbol # in an empty input field;
    • supported online providers: Claude, OpenAI, OpenAI-compatible (Ollama, vLLM, LM Studio) and Gemini;
    • support for local models in the GGUF format of the project llama.cpp;
    • 18 built-in tools for working with files, git, executing commands, and accessing web resources;
    • streaming responses in Markdown format.

Source: linux.org.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster