Advanced tooling roadmap
Debugging (DAP), Tree-sitter, playground, and ecosystem extras.
This page describes planned or partial tooling beyond the core LSP + VS Code extension.
Debugger (DAP)
Status: Not shipped.
Tish can run interpreted (VM) or as a native binary compiled to Rust. A solid debug story would require one of:
- Interpreted debugging — Debug Adapter Protocol talking to the VM with breakpoints mapped to Tish source lines (feasible for
tish run/ VM backend). - Native debugging — Source-level mapping from generated Rust back to Tish (heavy; needs stable line tables or DWARF-style mapping).
Recommendation: Start with (1) for development workflows; document lldb/gdb on the generated binary for advanced native debugging until (2) exists.
Tree-sitter grammar
Status: Partial — an incremental grammar lives in the main repo as tree-sitter-tish (subset of the language; growing with LANGUAGE.md).
It enables:
- ast-grep and other Tree-sitter-based tooling (see the sibling
tish-securityrepository next totish) - Future editor highlighters (Neovim / Helix / Zed) and WASM playground highlighting
TextMate grammars in tish-vscode cover VS Code/Cursor today.
Playground
A web playground (similar to play.rust-lang.org) https://tish.sh/
Other ideas
For current capabilities, see Language server and Editor setup.