Bnlang · Programming Language

Write code in বাংলা, English, & Banglish

Bnlang is a practical, expressive language and runtime made with Bangladesh in mind. Learn and build in your mother language without losing engineering rigor—clear syntax, predictable semantics, and production-ready tooling.

Stable core
Versioned releases
Trilingual by design
5+
GitHub Stars
1+
Packages in BPM
1
Contributors
v1.0.0
Latest Release

Supported on

WindowsmacOSLinux TuxLinux

Why Bnlang?

A language that embraces your natural expression while keeping engineering rigor: predictable semantics, readable syntax, and production-ready tooling.

Bangla-firstPredictable semanticsAsync I/OCross-platform CLIBPM ecosystem
Think in Bangla. Ship in Bnlang.

Language-first

Write code that matches how you actually think—the grammar, the words, the flow—without giving up static structure and clarity.

  • Readable, beginner-friendly constructs
  • No surprises in control flow
  • Consistent formatting for teams
Trilingual Syntax

Trilingual Syntax

Switch between English, বাংলা, and Banglish without losing clarity or tooling support. Teach beginners or work with pros in the language that feels natural.

  • Mixed-language identifiers & keywords
  • Same AST → same tooling
  • Great for classrooms & collaborations
Modern Toolchain

Modern Toolchain

BPM for packages, a formatter for consistent code, a test runner for confidence, and docs tooling—built and maintained alongside the language.

  • BPM packages, lockfiles, integrity
  • First-party formatter & linter
  • Built-in test runner
Familiar Async Model

Familiar Async Model

Event-driven, non-blocking I/O with Promises and async/await—great for servers, CLIs, and networked apps.

  • Streams, timers, and workers
  • Stable standard library APIs
  • Zero-copy buffers for I/O
Production Ready

Production Ready

Deterministic builds, clear error messages, and predictable performance for real systems—local or cloud.

  • Cross-platform binaries
  • Observability hooks (logs/metrics)
  • Safe concurrency primitives
Accessible by Design

Accessible by Design

Lower the barrier to entry for Bangladeshi students, developers, and teams—while preserving reliability and performance.

  • Docs in বাংলা & English
  • Community-maintained examples
  • Works well on modest hardware

Key Features

Explore Bnlang’s core capabilities—clear syntax, a familiar async model, a real package manager, built-in testing, and practical streaming APIs.

Trilingual Syntax

Write in বাংলা, Banglish, or English—whichever feels most natural—while the compiler and tooling treat it as one predictable language.

  • Mixed-language identifiers and keywords
  • Same AST → same tooling and semantics
  • Great for classrooms, teams, and public docs

Familiar Async Model

Event-driven, non-blocking I/O with async/await keeps apps responsive and tools snappy.

  • Promises and async functions for clarity
  • Predictable error handling with try/catch
  • Easy composition of network and file workloads

Packages with BPM

First-party package manager with lockfiles, integrity verification, and streamlined scripts.

Install, share, and ship—no glue code. BPM aligns with the language’s module system.

Testing Built-in

A lightweight test runner ships with the toolchain so teams can enforce correctness from day one.

Zero config for unit tests, human-readable output, and fast feedback in CI.

Streams & Buffers for Practical I/O

Process large files without blowing memory and build efficient pipelines with streaming APIs.

  • Backpressure-aware primitives
  • Binary-safe buffers for performant parsing
  • Composable utilities for real-world data tasks

Ecosystem

Bnlang comes with strong foundations and an open package ecosystem—ready for classrooms, startups, and production systems alike.

Rich Standard Library
Work with files, HTTP, crypto, streams, text, and more. Everyday essentials are included, so you can focus on solving real problems.
BPM Packages
Install, publish, and share code through the official registry. Integrity checks and signatures keep the supply chain secure.
CLI & REPL
Experiment instantly with a responsive REPL or scaffold new projects with the CLI. Testing, formatting, and package commands are all built in.
JavaScript Interop
Leverage existing JavaScript libraries when needed, while enjoying Bnlang’s readable syntax and predictable semantics.

Join the Community

Contribute, ask questions, or showcase what you're building. Bnlang grows with your ideas.