ELSEIF
Your brief EB
217 stories from 127 feeds 534 clusters Refreshed 1 hour ago next pull 08:38

DATABASES Signal 674 3 feeds carried it

Prototype replaces ELF executable format with SQLite database for direct execution

Illustration only Photo by Brecht Corbeel on Unsplash

A prototype tool called SELF encodes executables as SQLite databases instead of ELF binaries, enabling SQL queries for introspection and symbol lookup

WHY IT MATTERS

ELF is a de-facto database that reinvents indexing, string interning and schema management. Replacing it with SQLite could eliminate redundant parsers and enable declarative analysis of binaries. The prototype demonstrates feasibility but adoption would require toolchain and kernel changes

Written by elseif from the cluster below · every claim links back to a source

The three things worth knowing

01

SELF stores executable metadata and segments in SQLite tables instead of ELF sections and program headers

02

Symbol tables become queryable rows with proper b-tree indexes instead of hand-rolled bloom filters

03

The prototype runs as a chmod +x file but requires SQLite as a runtime dependency

THE READ

What the cluster adds up to.

ORIGINAL ANALYSIS

The prototype replaces ELF with SQLite as the executable format. SELF files contain the same information as ELF binaries but store it in relational tables instead of custom sections. The kernel and dynamic linker would need to support SQLite as a loadable format for this to work at scale. The prototype demonstrates that SQLite can represent all necessary executable metadata and segments, but adoption would require changes to compilers, linkers, and debuggers.

ELF already implements database primitives like string interning, indexing, and foreign keys, but does so in an ad-hoc way. SELF replaces these with SQLite's built-in features, eliminating redundant parsers. Every tool that currently parses ELF, from readelf to debuggers, would need to be updated to query SELF files instead. The prototype shows that symbol lookup can be done with SQL queries, but performance characteristics may differ from ELF's hand-optimized structures.

The prototype requires SQLite as a runtime dependency, which adds overhead compared to ELF's compact binary format. SQLite's self-describing schema and stability could simplify future extensions, but the initial transition would break compatibility with existing tools. The prototype demonstrates that SELF files can be executed directly, but real-world adoption would depend on toolchain support and performance trade-offs.

Written by elseif from the cluster below · checked for specifics the sources never contained

THE CLUSTER

Same story, 3 feeds.

ORDERED BY FIRST SEEN
Farid Zakaria’s Blog Your executable is a SQLite database Open ↗
Farid Zakaria’s Blog via Lobsters Your executable is a SQLite database Open ↗
Farid Zakaria’s Blog via Hacker News Executable Is a SQLite Database Open ↗