thin-client

Fallback Behaviour Deep Dive

Exactly when and why Pyvorin falls back to CPython execution.

Published May 30, 2026

Compile-Time Fallback

If the AST scan detects unsupported nodes (generators, async/await), the function is marked for CPython fallback before compilation even begins.

Runtime Fallback

Even fully compiled functions may fall back at runtime if a type guard fails or an unexpected exception occurs.

Partial Fallback

Some functions may be partially compiled, with specific regions executing in CPython.

Forced Fallback

PYVORIN_FORCE_FALLBACK=1 pyvorin run script.py