KAI is a C++ project implementing a multi-language runtime system with networking capabilities. It includes:
- Language interpreters (Pi, Rho, Tau, Lisp, Hlsl)
- Core object system with garbage collection
- Network layer with peer-to-peer capabilities
- Console and GUI applications
- Uses CMake as the primary build system
- Includes custom scripts in Scripts/ directory
- "build" → run
cmake --build . --config Release - "clean build" → run
./Scripts/clean_build.sh - "build tau" → run
./Scripts/buildtau.sh
- "test" → run
./Scripts/run_all_tests.sh - "rho tests" → run
./Scripts/run_rho_tests.sh - "tau tests" → run
./Scripts/test_tau.sh - "network tests" → run
./Bin/Test_Network - "connection tests" → run
./Scripts/run_connection_tests.sh - "console tests" → run
./Test/Console/RunConsoleTests.sh
- "console demo" → run
./Scripts/run_console_demo.sh - "rho demo" → run
./Scripts/run_rho_demo.sh - "p2p demo" → run
./Scripts/p2p_test.sh
- Focus on getting Networking working.
- "peers" → run
./Scripts/network/run_peers.sh - "automated demo" → run
./Scripts/network/automated_demo.sh
Include/KAI/- Header files for core systemSource/Library/- Implementation of core librariesSource/App/- Application executables (Console, Window, etc.)Test/- Comprehensive test suitesDoc/- Project documentationScripts/- Build and test automation scripts
- Core: Object system, registry, memory management
- Executor: Stack-based execution engine
- Languages: Pi (stack-based), Rho (functional), Tau (C++-like)
- Network: Peer-to-peer networking with ENet
- Console: Interactive REPL with language switching
- Follow existing C++ coding conventions in the codebase
- Use smart pointers (project has undergone smart pointer migration)
- Network functionality can be disabled via build configuration
- Tests are organized by component (Core, Language, Network)
- The project supports cross-platform builds (Windows, Linux, macOS)
CMakeLists.txt- Main build configurationReadme.md- Project documentationTODO.md- Current development tasksTEST_SUMMARY.md- Test status overview