← VB6 Workspace

VB6Interpret

Execute Visual Basic 6 code directly from source with a REPL and project runner

Overview

VB6Interpret executes VB6 programs directly from source instead of compiling them first. It is designed for fast experimentation, debugging workflows, and runtime validation while the broader VB6 toolchain continues to evolve.

The interpreter builds on vb6parse, vb6semantic, vb6runtime, and vb6core to provide source execution with VB6-compatible semantics.

Key Features

⚡ Direct Execution

Run VB6 source files and projects without a separate compile stage.

💬 REPL

Interactive shell for trying statements, expressions, and runtime behavior in real time.

📄 Script Mode

Execute a single .bas or .cls file for quick tests and utility workflows.

📦 Project Mode

Run full .vbp projects and follow execution across modules and procedures.

🐞 Debug Workflow

Step through code, inspect variables, and use breakpoints during execution.

📊 Trace and Profile

Inspect execution flow with trace output and profile options for performance analysis.

Architecture

VB6Interpret layers interpreter-specific execution on top of parsing, semantic analysis, and runtime primitives from the workspace.

CLI / REPL Layer
run / debug / repl
Session + Command Context
Interpreter Engine
Statement Evaluation
Expression Evaluation
Call Stack + Frames
Workspace Foundations
vb6parse
Source structure
vb6semantic
Resolution + types
vb6runtime/vb6core
Values + runtime behavior

Execution Focus

Interactive Speed

Prioritizes fast startup and quick feedback loops in REPL and script mode.

Runtime Fidelity

Targets VB6-like behavior for values, expressions, and control flow semantics.

Debuggability

Emphasizes observable execution with traces, breakpoints, and state inspection.

Toolchain Integration

Shares parsing and semantic infrastructure with other workspace projects.

Community & Contributing

Contributions are welcome for execution correctness, debugger behavior, compatibility tests, and integration with vb6runtime semantics.