Skip to content

FAQ

Quick answers about what Tulpar is, how it performs, and how it’s built. For anything not covered here, the Getting Started guide and Language Reference go deeper.

Tulpar is a statically-typed, AOT-compiled programming language with an LLVM backend (LLVM 18 through 22). It ships HTTP, JSON, SQLite, an ORM, and OpenAPI generation built directly into the runtime, so building an API needs no external framework or dependency install.

Tulpar compiles ahead-of-time to a native binary via LLVM, landing at roughly 1.37x to 1.9x the runtime of equivalent C on CPU-bound benchmarks like fib, and around 36k req/s on a keep-alive HTTP benchmark using the built-in Wings server pool — the same performance class as Go and Rust. See Benchmarks for the full methodology.

Does Tulpar have a VM, bytecode interpreter, or REPL?

Section titled “Does Tulpar have a VM, bytecode interpreter, or REPL?”

No. Tulpar dropped its bytecode VM and REPL in June 2026 in favor of a single AOT/LLVM execution path — the same model C, Rust, and Go use. Running tulpar file.tpr always AOT-compiles and runs a native binary; there is no interpreter fallback, so a successful run means the AOT pipeline genuinely ran.

Yes. Tulpar is MIT-licensed and developed in the open on GitHub.

Linux, macOS, and Windows (both MSVC and MinGW toolchains). The compiler is built with CMake and requires LLVM 18 or newer.

Terminal window
curl -fsSL https://tulparlang.dev/install.sh | bash
Terminal window
iwr -useb https://tulparlang.dev/install.ps1 | iex

Prebuilt binaries are also available from the GitHub releases page. See Installation for details.

Yes — tulpar pkg, backed by a tulpar.toml manifest and a tulpar.lock lockfile, with path, URL, and registry dependency specs. See Package Manager.

How does Tulpar compare to C, Go, or Rust?

Section titled “How does Tulpar compare to C, Go, or Rust?”

Tulpar targets Python-level ease of syntax with C-class native performance via AOT/LLVM compilation, while also including the batteries — HTTP server, JSON, SQLite, ORM, and OpenAPI generation — that C, Go, and Rust leave to third-party libraries. See Tulpar vs C for a side-by-side code comparison.