Bramble Roadmap

A breakdown of large design and development goals for the Bramble language, compiler, and the Thorn Insight platform.

Overview

All the current work for Bramble has been foundational or exploratory work. Basic type operations for integers are fully supported, aggregate types (structures and arrays) are supported, and raw pointers are supported. In addition, the infrastructure work needed to support the Thorn Insight platform as a first class feature and set of requirements has been added to the compiler.

The above set of features were built because they satisfied key development goals: building the main integration with LLVM, laying down the main components of the parser, and the semantic analyzer, and defining the protocol for Thorn and building the infrastructure in the compiler to support the generating insight data. This also whent hand in hand with gaining immediate experience with compiler design and development.

The next step for Bramble is to move from what is essentially and alpha-alpha stage to an alpha or beta stage. The syntax will be reviewed and polished based upon experience. The type system will be expanded to include Algebraic Data Types (and perhaps parametric types), and more ambitious features like consistency semantics will be implemented.

Bramble Roadmap

  1. REPL
  2. Revise Syntax
  3. Semantics For Explicit Consistency
  4. Lifetimes (a la Rust)
  5. Memory Management System
  6. Algebraic Data Types
  7. Generic Types

Thorn Roadmap

  1. Compiler diagnostic data
  2. Integrate Thorn Metadata through LLVM Output
  3. CPU Architecture Insights and Warnings
  4. Optimization Transformation Diagrams