Kisumu Lang Roadmap
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.
Vision Statement
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.
Phases of Development
Phase 1: Foundation
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
, and bool
.
- ✅ Expression Evaluation: Enable computation for basic arithmetic and logical operations.
- 🔄 Error Handling Framework: Build a robust system for detecting and reporting errors.
Phase 2: Core Language Features
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.
Phase 5: Community and Ecosystem
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.
Timeline Overview
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 |
How to Contribute
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.