Skip to content

Repository files navigation

Bunzo Logo

Bunzo Programming Language

Build software. Not boilerplate.

Getting Started • Features • Roadmap • Contributing • License

CI Status License: MIT


About

Bunzo is an open-source programming language designed to reduce software development complexity. It eliminates repetitive boilerplate, minimizes configuration, and provides an exceptional developer experience — so you can focus on solving real problems instead of fighting your tools.

Bunzo is written in Rust for reliability and performance.

Note: Bunzo is in early development. The compiler is under active construction and is not yet suitable for production use.

Vision

Bunzo aims to become a complete software development platform — not just another programming language. The long-term goal includes:

  • A modern, readable language with sensible defaults
  • A fast compiler with excellent error messages
  • An integrated standard library, package manager, and tooling ecosystem
  • A welcoming, community-driven open-source project

Features

Bunzo is being built with the following planned capabilities:

Feature Status
Lexer ✅ Complete
Parser ✅ Complete
Abstract Syntax Tree ✅ Complete
Interpreter ✅ Complete
Semantic Analysis ✅ Complete
Type Checker ✅ Complete
IR Generation ✅ Complete
IR Optimization ✅ Complete
Standard Library ✅ Complete
Package Manager ✅ Complete
Formatter ✅ Complete
Language Server (LSP) ✅ Complete
VS Code Extension ✅ Complete
Native Compiler Backend 🔮 Future
LLVM Backend 🔮 Future
WebAssembly Target 🔮 Future

Repository Structure

bunzo/
├── compiler/           # The Bunzo compiler (bzc)
│   └── src/
│       ├── ast/        # Abstract Syntax Tree definitions
│       ├── cli/        # Command-line interface
│       ├── diagnostics/# Error reporting and diagnostics
│       ├── ir/         # Intermediate representation
│       ├── lexer/      # Lexical analysis (tokenizer)
│       ├── parser/     # Syntax analysis (parser)
│       ├── runtime/    # Runtime support
│       ├── semantic/   # Semantic analysis
│       ├── source/     # Source code reader
│       ├── utils/      # Shared utilities
│       └── main.rs     # Compiler entry point
├── benchmarks/         # Performance benchmarks
├── book/               # The Bunzo language book
├── docs/               # Project documentation
├── examples/           # Example Bunzo programs
├── project_context/    # Internal project context
├── rfcs/               # Request for Comments
├── runtime/            # Standalone runtime components
├── scripts/            # Build and development scripts
├── stdlib/             # Standard library
├── tests/              # Integration and end-to-end tests
├── website/            # Project website source
├── Cargo.toml          # Rust workspace configuration
└── Cargo.lock          # Dependency lock file

Compiler Architecture

The Bunzo compiler processes source code through a multi-stage pipeline:

    Bunzo Source Code (.bz)
             │
             ▼
        Source Reader         ← Read raw source text
             │
             ▼
           Lexer              ← Tokenize into a stream of tokens
             │
             ▼
          Parser              ← Build an Abstract Syntax Tree
             │
             ▼
     Semantic Analyzer        ← Validate correctness and types
             │
             ▼
   Intermediate Representation
             │
    ┌────────┴────────┐
    ▼                 ▼
Interpreter      Compiler     ← Execute or compile to native code
    │                 │
    ▼                 ▼
 Output          Executable

Getting Started

Installation

  • Windows: Download and run the latest Windows Installer which automatically configures the PATH and bundles a self-contained Clang compiler toolchain. For more information, see the Getting Started Guide.
  • Other Platforms / Building from Source: See below.

Prerequisites

Clone the Repository

git clone https://github.com/ugeshpraavin/bunzo.git
cd bunzo

Building

Verify the project compiles successfully:

cargo check

Run the test suite:

cargo test

Build the compiler:

cargo build

Running the Compiler

cargo run -p bzc

Code Quality

Check formatting:

cargo fmt --check

Run the linter:

cargo clippy -- -D warnings

Roadmap

Phase 1 — Core Compiler

  • Project foundation and architecture
  • Lexer
  • Parser
  • AST
  • Interpreter

Phase 2 — Language Features

  • Semantic analysis
  • Type checker
  • IR Generation
  • IR Optimization
  • Standard library
  • Module system

Phase 3 — Developer Tooling

  • Package manager
  • Code formatter
  • REPL
  • Language Server (LSP)
  • VS Code Extension

Phase 4 — Backend Development Features

  • Built-in HTTP server
  • Database connectivity
  • REST API support

Phase 5 — Advanced

  • Native compiler backend
  • LLVM integration
  • WebAssembly target
  • AI-assisted development features

Contributing

We welcome contributions from everyone! Whether you're fixing a typo, improving documentation, or implementing a new compiler feature, your help is appreciated.

Please read our Contributing Guide before submitting a pull request.

By participating in this project, you agree to abide by our Code of Conduct.

Community

License

Bunzo is licensed under the MIT License.

Copyright (c) 2026 Ugesh Praavin D

Made with ❤️ by the Bunzo community

About

Build software, not boilerplate.

Topics

Resources

Contributing

Stars

3 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages