Welcome to the Kisumu Lang development roadmap! This document outlines our planned milestones, guiding our journey from initial development to a fully-featured and community-driven programming language.
Kisumu Lang aims to deliver a modern, statically-typed programming language tailored for simplicity, performance, and scalability. Our goal is to empower developers with intuitive tools for building reliable, efficient, and scalable applications while fostering an inclusive community.
Objective: Build the core components of Kisumu Lang and establish its fundamental capabilities.
- ✅ Define Language Specification: Finalize syntax, semantics, and core features.
- ✅ Lexer Development: Create a tokenizer to process Kisumu Lang source code.
- ✅ Parser Development: Implement parsing logic for generating an Abstract Syntax Tree (AST).
- ✅ Basic Data Types: Introduce essential types like
int
,string
, andbool
. - ✅ Expression Evaluation: Enable computation for basic arithmetic and logical operations.
- 🔄 Error Handling Framework: Build a robust system for detecting and reporting errors.
Objective: Expand functionality and improve developer experience.
- Type System: Add support for user-defined types, arrays, and generics.
- Concurrency Models: Implement goroutines, channels, and actor-based systems.
- Garbage Collection: Introduce automatic memory management.
- Interoperability: Provide FFI for integration with C and Go.
- Standard Library: Develop essential libraries for math, I/O, string manipulation, and more.
Objective: Enhance productivity and debugging capabilities.
- Interactive REPL: Provide a Read-Eval-Print Loop for quick prototyping.
- Debugger: Build debugging tools to aid in identifying and fixing issues.
- Package Manager: Introduce a package registry and manager for sharing reusable code.
- Documentation Framework: Ensure comprehensive and easily accessible documentation.
Objective: Extend Kisumu Lang's compatibility and usability.
- Platform Support: Compile Kisumu Lang code for Windows, macOS, Linux, and embedded devices.
- WebAssembly: Support for compiling to WebAssembly for browser-based applications.
Objective: Foster an active community and vibrant ecosystem.
- Open-Source Launch: Make the project publicly accessible on GitHub.
- Community Contributions: Encourage contributions for libraries, tools, and language features.
- Governance Model: Establish transparent decision-making processes for the project.
Phase | Estimated Completion | Status |
---|---|---|
Phase 1: Foundation | Q4 2024 | 🔄 In Progress |
Phase 2: Core Features | Q2 2025 | 🚧 Planned |
Phase 3: Developer Tools | Q4 2025 | 🚧 Planned |
Phase 4: Cross-Platform | Q2 2026 | 🚧 Planned |
Phase 5: Ecosystem | Q4 2026 | 🚧 Planned |
We welcome contributions at every stage of Kisumu Lang's development. Visit our GitHub repository to:
- Report issues or suggest features.
- Contribute to ongoing development.
- Join discussions on language evolution.