The SELF format proposes that an executable program itself is a SQLite database. This allows for a unified structure where the program's code and data are contained within a single file. The operating system can use binfmt_misc to interpret the database rows as program segments and execute the entry point.
A key extension of the SELF concept is using the executable database to store the running program's state. This eliminates the need for separate file system locations like /var/, /tmp/, or /home/ for application data. The program can update its own state transactionally within the same SQLite file it is executing from.
A proof-of-concept web server, self-httpd, demonstrates this capability. This single-file program is a SQLite database that contains the web server's code, website content, routes, and visitor logs. All state changes, such as button presses or visit records, are updated directly within this single SQLite file.
This approach simplifies application distribution and state management by collapsing a complete application distribution and all its state into a single file. The self-httpd example shows how a server, its website, and all its operational data can exist as one portable SQLite database file.
✨ This summary was generated by AI from the outlets' reporting listed below. It is not independently verified and may contain errors — check the original sources. How BrevFeed works →
One email each morning: the day's tech stories, clustered across outlets and summarized. No account needed.
One email a day. Unsubscribe in one click, any time.
Spend a few minutes, get the whole day. Every topic's top stories in one hands-free rundown — listen, watch, or read the transcript.
▶ Play today's briefNew every morning, and the back catalogue is archived by date.
A new concept called SELF allows executables to be SQLite databases, enabling programs to store their own state transactionally within the same file they run from. This approach consolidates application data and program logic into a single file, potentially simplifying deployment and state management.