Emilien Breton
Writeups • Notes • Scribbles • Contact
With these pages I aim to document and discuss the interests and endeavors I take on over time. That said, deriving value from the gobbledygook will be left as an exercise to the reader :)
About Me
I like to spend my time somewhere in the vicinity of engineering, mathematics and, to a lesser extent, psychology. I enjoy building things from the ground up and figuring out how to do things with my own hands. I crave novelty in people and experiences and I love helping others.
For some time my main time sink has been the Atto-8, a microprocessor built of 74HC-series logic chips hand-wired on breadboards along with a software ecosystem on top. I’ve been working on and off on a C99 compiler in Rust for the architecture, which, at the time of writing, just about compiles a fib.c
and a hanoi.c
. Compilers are not so trivial, it turns out. And the same is true of C.
Sometimes I’m not in front of a computer. People get reassured when they hear I rock climb, but what they don’t know is bouldering routes are brain teasers undercover. I also enjoy nonfiction reading, practical cooking and language learning. I’ve played the piano and the trumpet for several years, but haven’t progressed as quickly as I’ve aged. Over the years I’ve dabbled in a variety of other hobbies, including machining, 3D printing, drone racing, combat robotics, cubing, lock picking and piano tuning.
Recently I’ve been falling in love with the elegance of practicality.
Writeups
- Underwood Portable Restoration — Restoration of a 1925 Underwood Portable 4 Bank typewriter
2025-06-17
- Scaled Log 16 — A 16-bit fixed-point logarithmic number system
2025-05-13
- jumptree.vim — Undo tree semantics for the jumplist
2025-04-23
- CA-53W B Button Mod — Lenghtening of the CA-53W’s “adjust” button
2025-04-21
- Autodiff — Static reverse-mode automatic differentiation in C
2025-03-11
- NU-RE — A tiny regex engine based on Brzozowski derivatives
2025-02-11
- JSONW — Tiny RFC 8259-compliant JSON parser for C
2025-01-14
- CPS-RE — A tiny regex engine in continuation-passing style
2024-12-15
- No Shit. — An opinionated subset of
-Wall -Wextra
2024-10-21
- tictac.h — Tiny portable single-header timing library
2024-09-17
- st4 — Small text editor bootstrapped from
cat
TODO-TO-DO
- self-sha256 — A program that prints its own SHA-256 checksum
2024-06-29
- LTRE NFA — Frozen version of LTRE on the NFA engine
2024-06-10
- Atto-8 — A minimalist 8-bit microcomputer with stack-based microprocessor
TODO-TO-DO
- Notes — A collection of conceptual notes written in Markdown
2024-05-30
- Transformer Compressor — A high-efficiency text compressor leveraging large language models
2024-03-28
Notes
Regular Expression • Brzozowski Derivative • Sensory Augmentation • Umwelt • Learn • Vim • Signal • Compensation • Nonverbal • Consonance • Inharmonicity • Equal Temperament • Harmonic • Overtone • Musical Interval • Music • Quantifier • Entropy • Fossilization • Procedural Memory • Benford’s Law • Type-Driven Design • Binary Exponentiation • Hungarian Notation • Fixed Point • Idempotence • Pure • Type • Involution • Persistent Data Structure • Monad • Functor • Functional Programming • Applicative • Monoid • List • String • Framing Effect • Anchoring Effect • Function • Boolean Algebra • Algebraic Structure • Lattice Theory • Lattice • Semilattice • Semigroup • Abelian Group • Group • Divisible Group • Partial Order • Infimum • Supremum • Concentration • Density • Jerk • Acceleration • Velocity • Volume • Area • Pressure • Force • Frequency • Angular Velocity • Solid Angle •
Scribbles
2025-08-15
— constant expressions.go2025-08-04
— cross-eye stereoscopy.txt2025-06-29
— if-switch merge conflict.png2025-06-19
— promises are monads.js2025-06-16
— F3 on Bb trumpet.txt2025-06-05
— command-line mode scroll.vim2025-06-04
— vtable.c2025-05-18
— format spec mess.txt2025-05-17
— undo_marks.vim2025-05-08
— compilers not flawless.c2025-05-06
— sprintf buf size.c2025-04-20
— master lock combination lock.txt2025-04-10
— custom text objects.vim2025-03-31
— log file and line.c2025-03-28
— higher-order macros.c2025-03-24
— ub cheat sheet.txt2025-03-12
— unnamed struct union.c2025-01-31
— printf output len.c2025-01-24
— infinite loop ub.cpp2024-12-11
— stringify __VA_ARGS__.c2024-12-03
— aoc 2024 day 3.c2024-12-03
— aoc 2024 day 3.txt2024-09-30
— aoc 2022 day 6.c2024-09-23
— nested-comment.rs