I Built a Self-Hosting Language, a DB Engine and a Microkernel — Entirely on My Phone
Description and use
A self-hosted programming language, query language, DB engine, game engine, and microkernel were built and shipped entirely from an Android phone using Termux and a text editor.
Problem
Developing and shipping fully functional systems— a programming language, query language, DB engine, game engine, and microkernel—without a laptop or IDE, relying solely on an Android phone.
Outcome
Successfully shipped five self-hosted systems entirely from an Android phone, demonstrating that complex language and engine development can be achieved without traditional desktop tooling.
Workflow
- Set up Termux and a text editor on Android
- Implemented SahajCore compiler pipeline (tokenizer, parser, interpreter, bytecode compiler, VM, C/WAT transpilers)
- Bootstrapped interpreter written in SahajCore via Python-hosted interpreter
- Rewrote recursive Fibonacci demo iteratively to avoid Python stack overflow
- Added C and WASM backends (clang, wat2wasm)
- Built SahajDB with WAL, hash index, commit flush
- Iterated rapidly on phone, testing with real programs
- Released systems via GitHub and pip packages
Evidence
No laptop. No IDE. Just Termux and a text editor.
The interpreter is written in SahajCore itself. The bootstrap chain: Python-hosted interpreter → runs selfhost.sahaj (interpreter written in SahajCore) → runs target.sahaj (user program)
SahajDB: A tiny relational engine with Write-Ahead Log (WAL) for durability, Hash index on primary key, commit() flushes to disk and clears the WAL
- Record date: 2026-09-08T06:08:10.182Z