Compose features
Assemble language behavior from modules such as arithmetic, variables, loops, and conditions.
UniversalToolchain is reusable language infrastructure, not “just another language.” Wist is the reference implementation that proves the architecture with a working CLI, REPL, dialect composition, and dual execution backends.
Assemble language behavior from modules such as arithmetic, variables, loops, and conditions.
Run in interpreter mode for debugging and in compiler mode for compiled
execution with the same language frontend.
Declare language/runtime profiles in a .wistdialect file, compose a host, then execute
through the same CLI/programmatic path.
Many DSL projects rebuild the same plumbing repeatedly: lexer/parser, AST transforms, runtime wiring, and execution. UniversalToolchain exists to reuse that infrastructure through composable .NET stages and modules.
Instead of hardcoding one runtime, you compose capabilities, keep one frontend model, and switch execution paths with explicit dialect/runtime settings.
Current capabilities are production-minded building blocks, not placeholders.
run, repl, dialect-inspect,
dialect-demoWistDialectExecutionWorkflow.wistdialect filescompiler and interpreterOne framework → multiple profiles. Same toolchain, different capability sets and runtime shape.
full-defaultPractical default-style Wist profile close to regular execution.
let sum = 0
for (let i = 1) (i <= 5) (i = i + 1) (
sum = sum + i
)
sum
cil + interpreter.LocalVariablesOptimization enabled.minimal-arithmeticSmallest useful arithmetic-oriented composition.
2 + 3 * 4
Arithmetic, Numbers, Scopes,
Whitespaces.
interpreter.restricted-sandboxConstrained profile for narrower capabilities.
40 + 2
let x = 1 x
Wist program source enters the pipeline.
Lexer/parser build syntax and AST from the source.
AST is lowered into bytecode-style intermediate form.
Configured optimization passes refine the intermediate representation.
Compiler or interpreter path runs with dialect/runtime composition.
UniversalToolchain composes language behavior across multiple stages (frontend through runtime). Wist demonstrates shared frontend concepts with dual backends.
Dialect workflow: parse dialect source → build semantic plan → resolve runtime composition → create host → run code.
You can execute through CLI entry points or use WistDialectExecutionWorkflow directly in
.NET code. The repository includes runnable examples and tests for both core and dialect paths.
This repository does not claim hardened sandboxing for untrusted code. Constrained dialect composition is not equivalent to OS/process-level isolation. Treat untrusted execution as high risk.
Architecture and composition ergonomics are still evolving. Active engineering work includes deterministic composition, intrinsic governance, compiler/interpreter semantic parity, and reducing mutable-state risks in long-lived execution flows.