# __DSL_NAME__ A Domain-Specific Language created with DSK (DSL Development Kit). ## Overview - **Language Type**: __PARADIGM__ - **Purpose**: __PURPOSE__ - **Data Philosophy**: __DATA_PHILOSOPHY__ ## Getting Started ### Prerequisites - [Tree-sitter CLI](https://tree-sitter.github.io/tree-sitter/creating-parsers#installation) - Node.js or Bun (for JavaScript bindings) - C compiler (gcc/clang) for native compilation ### Development ```bash # Start development mode with file watching dsk dev # Run tests dsk test # Build parser and packages dsk build # Generate editor syntax highlighting dsk highlight # Package for distribution dsk package ``` ## Project Structure ``` __DSL_NAME__/ ├── grammar.js # Tree-sitter grammar definition ├── corpus/ # Test cases for the grammar │ └── examples.txt ├── generated/ # Generated artifacts (created by dsk build) │ ├── c/ # C static library │ ├── js/ # JavaScript/Node.js package │ └── editors/ # Editor configurations └── examples/ # Example programs in your language └── hello.__EXT__ ``` ## Language Features __FEATURES_LIST__ ## Grammar Rules The grammar includes rules for: - **Tokens**: Identifiers, numbers, strings, comments - **Expressions**: Based on your language paradigm - **Statements**: Control flow and declarations - **Data Structures**: __DATA_STRUCTURES__ ## Next Steps 1. **Customize the Grammar**: Edit `grammar.js` to refine your language syntax 2. **Add Test Cases**: Create examples in `corpus/examples.txt` 3. **Write Example Programs**: Add sample code to `examples/` 4. **Generate Editor Support**: Run `dsk highlight` for syntax highlighting 5. **Build and Test**: Use `dsk dev` for iterative development ## Resources - [Tree-sitter Documentation](https://tree-sitter.github.io/tree-sitter/) - [DSK Documentation](https://github.com/your-org/dsk) - [Language Implementation Patterns](https://pragprog.com/titles/tpdsl/) --- Generated by [DSK](https://github.com/your-org/dsk) - DSL Development Kit