<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Compilers on Antoine Boucher</title><link>https://antoineboucher.info/CV/blog/tags/compilers/</link><description>Recent content in Compilers on Antoine Boucher</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 13 Apr 2026 15:40:00 -0400</lastBuildDate><atom:link href="https://antoineboucher.info/CV/blog/tags/compilers/index.xml" rel="self" type="application/rss+xml"/><item><title>Compiler pipeline, language genealogy, and why grammars matter</title><link>https://antoineboucher.info/CV/blog/posts/compiler-design-textbook-figures/</link><pubDate>Mon, 13 Apr 2026 15:40:00 -0400</pubDate><guid>https://antoineboucher.info/CV/blog/posts/compiler-design-textbook-figures/</guid><description>&lt;p&gt;These figures come from a &lt;strong&gt;programming languages / compiler design&lt;/strong&gt; textbook I was reading for a course. I kept the photos as a single reference page: how compilation is staged, how today’s languages relate historically, and where &lt;strong&gt;syntax&lt;/strong&gt; stops being enough — you need &lt;strong&gt;precedence rules&lt;/strong&gt;, &lt;strong&gt;disambiguation&lt;/strong&gt; for things like &lt;code&gt;else&lt;/code&gt;, and &lt;strong&gt;attributes&lt;/strong&gt; for semantics such as types.&lt;/p&gt;
&lt;h2 id="compiler-pipeline"&gt;Compiler pipeline&lt;/h2&gt;
&lt;p&gt;The usual story: &lt;strong&gt;source program&lt;/strong&gt; → &lt;strong&gt;lexical analyzer&lt;/strong&gt; (tokens) → &lt;strong&gt;syntax analyzer&lt;/strong&gt; (parse trees) → &lt;strong&gt;intermediate code&lt;/strong&gt; (with &lt;strong&gt;semantic analysis&lt;/strong&gt;) → optional &lt;strong&gt;optimization&lt;/strong&gt; → &lt;strong&gt;code generator&lt;/strong&gt; → &lt;strong&gt;machine code&lt;/strong&gt; on a &lt;strong&gt;computer&lt;/strong&gt;, plus &lt;strong&gt;input data&lt;/strong&gt; and &lt;strong&gt;results&lt;/strong&gt;. A &lt;strong&gt;symbol table&lt;/strong&gt; sits beside the front phases and feeds the back end.&lt;/p&gt;</description></item></channel></rss>