Dassie Compiler Documentation
Welcome to the official documentation for the Dassie Compiler (dc). This documentation covers everything you need to know about configuring, using, and extending the compiler.
Tip
Looking for the Dassie language documentation? Visit the Dassie language repository for syntax, semantics, and language feature documentation.
What is the Dassie Compiler?
The Dassie Compiler is a modern, extensible compiler for the Dassie programming language. It compiles Dassie source code (.ds files) to .NET assemblies, supporting both Just-In-Time (JIT) and Ahead-Of-Time (AOT) compilation modes.
Key Features
- Modern .NET Integration: Targets the latest .NET runtime with full interoperability with .NET libraries
- Flexible Build System: Project files (
dsconfig.xml) with support for build profiles, macros, and custom build events - Project Groups: Organize multiple related projects and deploy them together
- Extensibility: Rich extension API for custom commands, analyzers, project templates, and more
- Built-in Tooling: Code analysis, unit testing, file watching, and interactive scratchpad
- Editor Support: API for semantic highlighting, tooltips, navigation, and folding regions
Documentation Overview
| Section | Description |
|---|---|
| Getting Started | Quick start guide for new users |
| Command-Line Reference | Complete reference for all compiler commands |
| Project Files | Configuration options for dsconfig.xml |
| Project Groups | Managing multi-project solutions |
| Error Codes | Reference for all compiler messages and errors |
| Scratchpad | Interactive code execution environment |
| Unit Testing | Writing and running tests |
| Compiler API | Using the compiler from .NET applications |
| Compiler Extensions | Creating and managing compiler plug-ins |
| Editor API | Integrating with code editors |
Contributing
Interested in contributing to the Dassie compiler? Check out the Contributing section for code style guidelines, architecture overview, and extension API documentation.