MIDS---Merge / Integrate / Dogfood / Ship---forms a lightweight philosophy for decentralized development: a way for many autonomous contributors to create coherent products without heavy process or centralized gatekeeping. Each step defines a distinct layer of responsibility, with pronouns that map the flow of agency from individual to collective.
A Spec for AI Science: How Research Objects Enable Rigorous Agentic Drug Discovery
In science, unanchored agentic AI risks becoming its own form of vibe coding—speed without accountability. Spec Science is the alternative: structured, reproducible, and grounded in Research Objects (ROs).
ADD the Beat: Accountability-Driven Development in an AI World
AI can generate code faster than any human I've met. But it often lacks what we might call EQ for engineering: it doesn't know when to stop, it forgets promises, it drifts from context. That's not malice--it's the nature of the tool. The burden falls back on us to create a structure where AI's speed doesn't outrun our ability to review.
Making Math Learn: Bauer vs Spivak on a Type Theory for AI
Not trained, Andrej. Learned. As in: the structure is fixed—types, arrows, limits— and the learning fills in the terms. A child writes in crayons over the architect’s blueprint.
A Language With No ‘=’: My Journey to Homoiconic C
came of age in the 1980s, as the C programming language and UNIX operating system were becoming the gold standard for "serious" computing. I was taught that: - Lisp reflects how computers **think** - C reflects how computers **work** - Shell scripts reflect how humans **write** I never questioned this split ....
TSM-12: RELIGN: A Homoiconic Language for Synchronous, Stateful Reactive Hardware Design
As the inventor of Verilog, give a keynote at DAC about an ideal hardware design language based on TBC and Hexons that combines the syncronicity of SIGNAL with the statefulness of Erlang.ChatGPT Prompt (condensed) Opening: Setting the Stage Phil Good morning, everyone. It’s great to be here at DAC—a conference that brings together the best... Continue Reading →
TSM-11: The Next WAVE of Computing — Whole Architecture Validating Encoders
WAVEs promise to redefine how we design, optimize, and deploy applications by tightly coupling software and hardware in ways previously unimaginable. With WAVEs, developers can create applications without worrying about hardware constraints, while the WAVE ensures the resulting design is perfectly mapped to hardware optimized for power, performance, and efficiency.
TSM-10.3: Hexons – Unifying Hardware and Software Through a Post-Object Model
This idea builds on a concept I’ve long championed: **software and hardware aren’t distinct entities but two expressions of the same fundamental processes**. Hexons aim to reflect this by collapsing the boundary between the two, offering a new kind of computational atom that works equally well at the hardware and software levels.
TSM-10.2: HLIR NextGen – A TableGen Replacement for MLIR
The HLIR (High-Level Intermediate Representation) framework written in Homoiconic C could also serve as a next-generation replacement (“HLIR-NG”) for LLVM’s TableGen, especially if it’s designed to handle the kind of semantic richness and extensibility required for a dynamic, multi-level execution framework like MLIR.
TSM-10.1: HLIR – Homoiconic, High-Level Intermediate Representation
instructions in a homoiconic form. It represents a novel synthesis in compiler design by bridging the gap between human and machine representations of programs. By combining monadic composition with homoiconic structure, HLIR allows developers to express computational intent with minimal syntax while maintaining direct mappings to MLIR's powerful optimization framework. This marriage of high-level semantics with low-level compilation produces a uniquely ergonomic intermediate representation - one where code is data, transformations are first-class citizens, and optimization becomes natural rather than imposed. The result is a language that is both easy for humans to reason about and efficient for compilers to transform, potentially setting a new standard for intermediate representations in modern compiler design.

You must be logged in to post a comment.