What is the LOBSTER file format?
A .lobster file is a source code file written in the Lobster programming language. Lobster was designed by Wouter van Oortmerssen and first released in 2011 under the Apache 2.0 license. The file holds plain, human-readable text using a terse syntax that leans on indentation rather than braces, so it looks a lot like .py code at a glance.
Under the surface the two languages are quite different. Lobster is statically typed with flow-sensitive type inference, which lets you skip most type annotations while still catching mistakes before the program runs. It manages memory with compile-time reference counting and lifetime analysis instead of a runtime garbage collector. The language is general purpose, but its reference implementation ships with OpenGL, SDL and other built-in libraries aimed at games and graphics, so many .lobster files are parts of small games or graphical demos.
Security & safety
RISK: LOWA .lobster file is plain-text source code and cannot run on its own by double-clicking. It only does something when executed by the Lobster compiler, and like any script it can perform whatever actions its code contains, so read unfamiliar files before running them.
Format details
in a nutshell- Lobster ETL / test framework (SAP) - Some SAP LO extraction and QA tooling uses the name Lobster, but that is unrelated to this source-code format.
- Lobster_data / Lobster Integration - Lobster GmbH sells data-integration software called Lobster; its projects are not saved as .lobster source files.
Programs that open LOBSTER files
lobster yourfile.lobster, or build/pack it using --cpp or --pak. lobster yourfile.lobster from a terminal to execute the program. bin/lobster yourfile.lobster to execute the program. Technical details
deep spec| Encoding | UTF-8 plain text |
| Container | None (flat source text) |
| Typical size | A few hundred bytes to tens of kilobytes |
| Structure | Human-readable Lobster source using significant indentation instead of braces, in the style of Python. Contains function and struct definitions, imports of other .lobster modules, and statements. Statically typed with flow-sensitive type inference, so most types are not written out explicitly. |
| Integrity | None built in |
| Platforms | Windows, macOS, Linux, Web (WebAssembly) |
| Notes | The reference implementation runs a .lobster file through a JIT/interpreter by default. It can also emit a .lpak bytecode pakfile (--pak) or transpile the program to a .cpp file (--cpp) for shipping builds. The engine bundles OpenGL, SDL and related batteries aimed at games and graphics. |
| Syntax Style | Python-esque, indentation-based |
| Type System | Static, flow-sensitive type inference with specialization |
| Memory Management | Compile-time reference counting with lifetime analysis |
| Released | 2011 |
| Open standard | Yes · royalty-free |
| Specification | aardappel.github.io |
LOBSTER conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about LOBSTER files.
Frequently asked questions
What program opens a .lobster file?
How do I run a .lobster file?
lobster yourfile.lobster (or bin/lobster yourfile.lobster) from a terminal.Is a .lobster file the same as Python?
Can I turn a .lobster program into a standalone build?
lobster --cpp to emit C++ for a native build, or lobster --pak to create an .lpak pakfile the runtime can run directly.