philios

Source Directory Structure

The source tree groups code by responsibility rather than by a front-to-back compiler pipeline. The directories describe where components belong; they do not prescribe an execution order.

src/
  analysis/
    semantic_analyzer/
  backend/
    bytecode_compiler/
  common/
  frontend/
    ast/
    lexer/
    parser/
  runtime/
    environment/
    evaluator/
    virtual_machine/

Responsibilities

The evaluator and virtual machine are runtime components; the bytecode compiler is a separate code-generation component. Do not add a memory_manager/ for a tracing garbage collector: Philios uses C++ ownership lifetimes for memory management.

Some directories may be empty while their components are unimplemented. Keep the structure aligned with these responsibilities as source files are added.