Skip to content

Runtimes ​

Formulon ships one calculation core through several host surfaces. Choose by deployment constraints, not by formula semantics. If two runtimes disagree on a workbook, treat that as a bug or a documented compatibility gap.

Same engine, different host contract

WASM, Python, Native Node, and CLI should share calculation behavior. What changes is packaging, file access, memory ownership, startup cost, and how errors cross the host boundary.

RuntimeUse when
WASMBrowser, worker, or Node deployment without native addon assumptions
PythonScripts, notebooks, data pipelines, and batch recalculation
Native NodeNode services that can deploy a platform-specific .node addon
CLIShell workflows, CI snapshots, and issue reproduction

Choosing between them ​

The step-by-step decision, including MCP and the C ABI, is in Choose a surface.

  • Use WASM when workbook data starts in the browser, when upload privacy matters, or when a server should not receive the raw file.
  • Use Python when the workbook is part of report generation, scheduled jobs, data validation, or notebook workflows.
  • Use Native Node only when a service can ship native artifacts and large workbooks make WASM heap copies or the 32-bit memory ceiling a problem.
  • Use CLI for reproducible issue reports, CI snapshots, and one-off recalculation checks.

Exact signatures and per-binding differences are in the API reference, starting with the surface matrix.

What is not decided here ​

Runtime choice does not prove Excel compatibility. Before using Formulon for business-critical workbooks, check Compatibility and run fixtures against your own files.