Compiling C to printable x86, to make an executable research paper
suckerpinch8 HN recommenders · recommended in 7 months, 2018–2023
talk · advanced · evergreen · 2018–2023 on HN
Tom7 explains how he built a SIGBOVIK 2017 paper made only of printable ASCII bytes that is also a valid DOS executable. He writes a C compiler targeting printable x86 without self-modifying code and solves the puzzles the constraint creates.
HN fans call it a favorite engineering video and a showcase of Tom7's masterpiece-level, playful hacking.
Up next
9 mo on HNHarder Drive: Hard drives we didn't want or need
suckerpinch
12 HN recommender · 2022–2025
6 mo on HNThe more general uncertainty principle, regarding Fourier transforms
3Blue1Brown
7 HN recommender · 2019–2025
6 mo on HNA new way to visualize General Relativity
ScienceClic English
8 HN recommender · 2020–2026
2 mo on HNPeter Singer - ordinary people are evil
Jeffrey Kaplan
2 HN recommender · 2023–2026
5 mo on HNAkira Kurosawa - Composing Movement
Every Frame a Painting
5 HN recommender · 2017–2025
5 mo on HNDani DaOrtiz at Fool US 2022 (the act that Penn and Teller didn’t even try to figure out.)
dani daortiz
5 HN recommender · 2023–2025
9 mo on HNA Mind Is Born (256 bytes)
lftkryo
8 HN recommender · 2017–2025
8 mo on HNVidMe or Why Platforms Aren't Your Friends
Folding Ideas
8 HN recommender · 2017–2023
13 mo on HNRich Harris - Rethinking reactivity
You Gotta Love Frontend
15 HN recommender · 2019–2026
12 mo on HNLexical Scanning in Go - Rob Pike
GoogleFOSSSydney
13 HN recommender · 2012–2025
12 mo on HNWilliam Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
PapersWeLove
11 HN recommender · 2017–2026
10 mo on HNCppCon 2016: Jason Turner “Rich Code for Tiny Computers: A Simple Commodore 64 Game in C++17”
CppCon
13 HN recommender · 2016–2024
11 comments from Hacker News
Love Tom7, his video "Compiling C to printable x86, to make an executable research paper" [0] is my favorite but most of his stuff is super interesting. [0] ▶ this video
The author is an absolute legend. Absolutely every video on his Youtube channel is a masterpiece link And this includes the video that explains this code (Compiling C to printable x86, to make an executable research paper) ▶ this video
Every one of this guy's SIGBOVIK papers/videos are pure gold. His video about the printable x86[1] is my favorite engineering video of all time. ^1: ▶ this video
He's a mad genius! I like his compiler that generates executables made up only of printable characters: ▶ this video / link He's super playful and awesomely smart!
Mine are "Harder Drives"[1], "ELO World"[2], and "Printable x86"[3] [1] link [2] link [3] ▶ this video
A mix of various things. Google to get to the channel: pbs spacetime stuff made here ben eater's 8 bit computer mike boyd nerdforge sabine hossenfelder gotham chess uthermal 3blue1brown veritasium Numberphile Suckerpinch (all time favourite: ▶ this video ) Stevey's tech talk leonard susskind's stanford lectures
That last one (Tom 7's executable x86 paper) is incomplete without the video where he demonstrates running the paper (or running the paper yourself). ▶ this video
tom7 made a while video explaining how to create an executable only with printable characters [0]. He even write a compiler called 'ABC' for it. [0] ▶ this video
Tom Murphy VII (tom7) did such a thing. It's a partial C89 compiler that outputs only printable characters. In meta fashion, the compiler is compiled by itself to also contain only printable characters. The TXT and EXE files below are exactly the same. Video: ▶ this video Paper (PDF): link Paper (TXT): link Compiler (EXE): link
In the accompanying video[0] at 7:36 mark, he goes to great lengths to express (A or B) as (A and B) + (A xor B). Can anybody explain why it can't simply be expressed as (A and B) xor (A xor B)? What am I missing here? 0. ▶ this video
On The Turing Completeness of PowerPoint link Compiling C to printable x86, to make an executable research paper ▶ this video HDR Photography in Microsoft Excel?! link Zebras All the Way Down link Solving Layout Problems with CSS Grid and Friends link Console Security - Switch link Let's move SMM out of firmware and into the kernel link Bringing Linux back to server boot ROMs with NERF and Heads link Sharing the Chisel link (looks like the actual conference video wasn't released)