This document serves as a central entry point to the KAI documentation. It explains the organization of the documentation and provides navigation links to different sections.
The KAI documentation is organized into the following main categories:
- Architecture - System architecture overview
- Building - Build instructions
- Out-of-Source Build - Best practices for building
- Installation - Installation guide
- Style Guide - Code style conventions
- Language Guide - Overview of the KAI language system
- Common Language System - Architecture shared across languages
- Pi Language - Foundation language (stack-based)
- Rho Language - Application language (infix notation)
- Tau Language - Interface definition language
- Tau Formal Definition - Grammar and lexical specification
- Tau Code Generation - Code generation architecture and usage
- Event System - Modern C++23 multi-cast event implementation with variadic templates
- Continuation Control - Advanced control flow
- Network Iteration - Distributed computing patterns
- Meaning - Philosophical foundations of KAI
- Networking Overview - Main networking documentation
- Network Architecture - Detailed architecture
- Peer-to-Peer Summary - P2P implementation summary
- Peer-to-Peer Networking - Detailed P2P documentation
- Network Performance - Performance optimization
- Network Security - Security features
- Connection Testing - Testing procedures
- Network Iteration - Distributed operations
- Network Tau Interfaces - Tau language network support
- Console - Interactive REPL console with shell integration
- Color Output - Console color formatting
- Log Format - Logging format specification
- Null Registry Fix - Registry null pointer fix documentation
- Test Guide - How to run and write tests
- Test Fixes Summary - Summary of test fixes
- Test Improvements - Test suite improvements
- Test Summary Report - Current test status
- Rho Fix Documentation - Details on recent Rho language fixes
- Rho Analysis - Analysis of Rho language implementation
- Rho Issues - Known Rho language issues
- Rho Regression Analysis - Regression test analysis
- Tau Analysis - Analysis of Tau language implementation
- Core Review - Core system review
New users should start with the following documents in order:
- Project Setup: OUT_OF_SOURCE_BUILD
- System Overview: Architecture
- Language Introduction: Language Guide
- Main Language: Rho Language and Rho Tutorial
The project includes several demos to showcase functionality:
- Rho Language Demo: Run
./Scripts/run_rho_demo.shto see the Rho language in action - Console Demo: After building, run
./bin/Consolefor an interactive environment with shell integration - Shell Command Demo: See
Test/ShellCommandTests/demo_simple.txtfor shell command examples
Example scripts for each language can be found in:
- Pi scripts:
Test/Language/TestPi/Scripts/*.pi - Rho scripts:
Test/Language/TestRho/Scripts/*.rho - Tau scripts:
Test/Language/TestTau/Scripts/*.tau
Throughout the documentation:
- Code examples are provided in language-specific syntax highlighting
- External references are included as hyperlinks
- Command line instructions are shown in code blocks
- Key concepts are bold for emphasis
When contributing to the documentation:
- Keep language-specific details in the appropriate tutorial files
- Update the main language guide when adding features that affect multiple languages
- Create specific analysis or fix documents for technical changes
- Ensure all code examples are correct and tested
- Add cross-references between related documents
Recent documentation improvements include:
- Modern Event System: New C++23 implementation of the multi-cast event system
- Enhanced Rho Documentation: Comprehensive coverage of the fixed binary operations
- New Demo Script: Interactive demonstration of all Rho language features
- Build Documentation: Improved guidance on building and testing the system
- Cross-References: Better navigation between related documents