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-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.

TSM-7: From Aristotle to Newton — Towards a Scientific Theory of Computation

Since the dawn of computer science, our understanding of computation has been shaped by mathematical theories, from Aristotle's logic to Turing's formalization of algorithms. Turing Machines, with their elegant abstraction of computation into discrete steps on an infinite tape, have become a cornerstone of computational theory. However, this mathematical approach, while powerful, lacks a crucial element: empirical testability.

TSM-5: Homoiconic C (HC) Syntax Cheat Sheet

Homoiconic C ("HC") is a minimalist and highly expressive alternative to traditional programming languages. It eschews traditional grammar, keywords, and reserved words, focusing instead on a single type of object called a Frame. HC's syntax is a thin veneer over its robust semantics, which are centered around ubiquitous scope, consistent evaluation, and homoiconicity (symmetry between code and data). This cheat sheet provides an overview of HC's key syntactical elements.

Blog at WordPress.com.

Up ↑