20 lines
598 B
Python
Executable File
20 lines
598 B
Python
Executable File
from xic_loader import load_xic, XICLoadError
|
|
from xic_vm import run_xic_program, XICRuntimeError
|
|
|
|
|
|
def run_xic(path: str, debug: bool = False):
|
|
"""Load and execute an XIC program."""
|
|
try:
|
|
prog = load_xic(path)
|
|
if debug:
|
|
print(f"[XIC] Loaded program: {prog.model}")
|
|
print(f"[XIC] Instructions: {len(prog.instructions)}")
|
|
ctx = run_xic_program(prog)
|
|
return ctx
|
|
except XICLoadError as e:
|
|
print(f"[XIC] Load error: {e}")
|
|
raise
|
|
except XICRuntimeError as e:
|
|
print(f"[XIC] Runtime error: {e}")
|
|
raise
|