About Bloa

Learn about our mission and vision

What is Bloa?

Bloa is a minimalist scripting language designed to be simple, readable, and powerful. It combines the ease of use of high-level scripting languages with the performance needed for real-world applications.

The language was created to fill the gap between complex, feature-heavy languages and overly simplistic ones. Bloa aims to provide just the right amount of features to be productive without overwhelming developers.

Key Principles

  • Simplicity:

    Clean, readable syntax that's easy to learn

  • Power:

    Rich features including OOP, modules, and exception handling

  • Performance:

    Fast execution with a C++-based interpreter

  • Extensibility:

    Easy to extend with modules and libraries

Features Overview

Dynamic Typing

Variables can hold any type without explicit declarations.

Object-Oriented Programming

Classes, inheritance, and polymorphism support.

Modular Design

Import and organize code with modules and files.

Exception Handling

Robust error handling with try/except blocks.

Rich Standard Library

Math, I/O, string manipulation, and more.

Architecture

Bloa is implemented as an interpreter written in C++. The architecture consists of several key components:

Parser

Converts Bloa source code into an Abstract Syntax Tree (AST) for execution.

Interpreter

Executes the AST, managing variables, functions, and control flow.

Environment

Handles variable scoping, function definitions, and object instances.

Getting Involved

Bloa is an open-source project hosted on GitHub. We welcome contributions from the community including bug reports, feature requests, and pull requests.