Aexol Language Overview
Aexol is a domain-specific language for modeling software systems. You define what your system should do — types, workflows, visitors, and agents — and Aexol generates production-ready code.
Core Concepts
| Concept | Purpose |
|---|---|
| Types | Define data structures with fields, arrays, and circular references |
| Enums | Define fixed sets of values |
| Workflows | Model state machines with transitions |
| Visitors | Define hierarchical capability trees for actors/roles |
| Agents | Define autonomous agents with capabilities |
Quick Example
type Task {
id: string
title: string
status: TaskStatus
assigneeId: string
}
enum TaskStatus {
todo
in_progress
done
}
workflow TaskFlow {
initial: todo
todo -> in_progress when started
in_progress -> done when completed
in_progress -> todo when reverted
}
visitor Developer {
"create tasks"
"view tasks"
"update task status"
}
agent TaskBot {
"assign tasks"
"send reminders"
"generate reports"
}
✨ Edit in StudioHow It Works
- Define — Write your specification in Aexol (in Studio or any editor)
- Validate — The parser catches errors in real-time
- Generate — Produce TypeScript, Python, Rust, Go, or JavaScript code
- Refine — Iterate on the generated artifacts with AI assistance
Next Steps
- Language Reference — Complete syntax guide
- Advanced Types — Arrays, circular references, and more
- Workflows & Recipes — State machines and ready-to-use patterns
- CLI & Tooling — Command-line tools and AI integrations