Sere Brings Python's Readability to Native Compilation
A new language called Sere aims to combine Python's syntax with the performance characteristics of a compiled language. The result is a statically typed, indentation-significant language that produces standalone native binaries through LLVM, with no interpreter, virtual machine, or runtime required at execution time.
The core pitch is straightforward: write code that looks like Python, compile it to a real executable, and run it directly on the machine. The compiler targets LLVM 22, lowering source code to IR and then to native machine code. A single build command takes a .sere file and produces an executable. Flags like --emit-llvm and --emit-asm let you inspect the intermediate output.
Syntax That Reads Familiar, Features That Go Deeper
Sere uses indentation for block structure, f-strings for formatting, and type annotations on function signatures. Structs support methods, and the language includes enums, macros, and both unique and shared pointers for memory management. The example on the project's site defines a Point struct with a length_sq method, constructs an instance, and prints a formatted result, all in a style any Python developer would recognize.
The type system is static. Every variable, parameter, and return value has a declared type. This is where Sere diverges most clearly from Python. The tradeoff is deliberate: the language gives up dynamic typing in exchange for the ability to compile to native code without a runtime.
Tooling Ships With the Language
The toolchain includes a language server accessible via sere --lsp and a VS Code extension with highlighting, go-to-definition, hover, and rename support. The extension also works in Cursor. Editor integration is not an afterthought here, it ships as part of the initial release.
For libraries, the current approach is manual. You pack a project with sere pack to produce a .slib file and drop it into a libs/ directory. There is no package manager yet. The standard library ships with the compiler itself.
Building From Source or Installing a Release
A Windows installer and release archives are available from the project's install page. Building from source requires CMake 3.28 or later, Ninja 1.11 or later, Visual Studio 2022 Build Tools, and the LLVM 22.1.8 clang+llvm archive. The build dependencies reflect the LLVM backend: this is not a lightweight bootstrap, but it produces a toolchain that depends on nothing at runtime.
The project describes itself as standalone by design. The compiler takes your code and turns it into a standalone binary. No interpreter, no virtual machine, no extra runtime to bundle. The build output is the program.
Where It Fits
Sere sits in a growing space of languages that try to offer Python-like ergonomics with compiled performance. The difference here is the commitment to native output without a runtime. The language does not target web assembly, does not ship a garbage collector, and does not require a hosted environment. It compiles to an executable, and that executable runs on bare metal.
The project is at sere-lang.com, with documentation, an install guide, and a comparison page for developers coming from Python.