Skip to content

Latest commit

 

History

History
72 lines (48 loc) · 3.61 KB

roadmap.md

File metadata and controls

72 lines (48 loc) · 3.61 KB

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.

Phase 3: Developer Tools

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.

Phase 4: Cross-Platform Compilation

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.