Hot Language Support
Full language support for Hot — a functional, expression-based language for backend workflows.
Features
- Syntax Highlighting — Keywords, types, flows, namespaces, strings, and more
- Language Server — Diagnostics, autocomplete, hover info, go-to-definition
- Markdown Support — Syntax highlighting in fenced code blocks
Quick Start
- Install the Hot CLI
- Open a
.hot file
- The language server starts automatically
Syntax Overview
::myapp::greeter ns
// Variables (no = sign)
greeting "Hello"
// Functions
greet fn (name: Str): Str {
`${greeting}, ${name}!`
}
// Conditional flow
classify fn cond (x: Int): Str {
lt(x, 0) => { "negative" }
=> { "positive" }
}
// Type with coercion
Date type { year: Int, month: Int, day: Int }
Date -> Str fn (d: Date): Str {
`${d.year}-${d.month}-${d.day}`
}
Commands
| Command |
Description |
Hot: Start Analyzer |
Start the LSP server |
Hot: Stop Analyzer |
Stop the LSP server |
Hot: Restart Analyzer |
Restart the LSP server |
Hot: Show Logs |
Open the output channel |
Hot: Create AI Hints |
Generate AI assistant hints for your project |
Settings
| Setting |
Default |
Description |
hot.lsp.enabled |
true |
Enable the Language Server (requires Hot CLI) |
hot.lsp.commandPath |
hot |
Path to the Hot CLI executable |
hot.lsp.extraArgs |
[] |
Additional LSP server arguments |
Links
| |