𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Writing a C Compiler: Build a Real Programming Language from Scratch

✍ Scribed by Nora Sandler


Publisher
No Starch Press
Year
2024
Tongue
English
Leaves
792
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


A fun, hands-on guide to writing your own compiler for a real-world programming language.

Compilers are at the heart of everything programmers do, yet even experienced developers find them intimidating. For those eager to truly grasp how compilers work,
Writing a C Compiler dispels the mystery. This book guides you through a fun and engaging project where you’ll learn what it takes to compile a real-world programming language to actual assembly code.

Writing a C Compiler will take you step by step through the process of building your own compiler for a significant subset of Cβ€”no prior experience with compiler construction or assembly code needed. Once you’ve built a working compiler for the simplest C program, you’ll add new features chapter by chapter. The algorithms in the book are all in pseudocode, so you can implement your compiler in whatever language you like. Along the way, you’ll explore key concepts like:

  • Lexing and parsing: Learn how to write a lexer and recursive descent parser that transform C code into an abstract syntax tree.
  • Program analysis: Discover how to analyze a program to understand its behavior and detect errors.
  • Code generation: Learn how to translate C language constructs like arithmetic operations, function calls, and control-flow statements into x64 assembly code.
  • Optimization techniques: Improve performance with methods like constant folding, dead store elimination, and register allocation.

Compilers aren’t terrifying beastsβ€”and with help from this hands-on, accessible guide, you might even turn them into your friends for life.


πŸ“œ SIMILAR VOLUMES


Writing a C Compiler: Build a Real Progr
✍ Nora Sandler πŸ“‚ Library πŸ“… 2023 πŸ› No Starch Press 🌐 English

<span>A hands-on, example-filled guide to the theory and practice of writing a C compiler: a computer program that translates code written by programmers into code the computer can read.</span><span><br><br>An approachable, hands-on tutorial to writing a C compiler: a computer program that translate

Writing a C Compiler: Build a Real Progr
✍ Nora Sandler πŸ“‚ Library πŸ“… 2024 πŸ› No Starch Press 🌐 English

<span>A hands-on, example-filled guide to the theory and practice of writing a C compiler: a computer program that translates code written by programmers into code the computer can read.</span><span><br><br>Compilers are at the heart of everything programmers do, yet even experienced developers find

Writing a C Compiler: Build a Real Progr
✍ Nora Sandler πŸ“‚ Library πŸ“… 2024 πŸ› No Starch Press 🌐 English

A fun, hands-on guide to writing your own compiler for a real-world programming language. Compilers are at the heart of everything programmers do, yet even experienced developers find them intimidating. For those eager to truly grasp how compilers work, Writing a C Compiler dispels the mystery. T

Writing a C Compiler: Build a Real Progr
✍ Nora Sandler πŸ“‚ Library πŸ“… 2024 πŸ› No Starch Press 🌐 English

<span>A fun, hands-on guide to writing your own compiler for a real-world programming language.</span><span><br><br>Compilers are at the heart of everything programmers do, yet even experienced developers find them intimidating. For those eager to truly grasp how compilers work, </span><span>Writing

Build a Large Language Model (From Scrat
✍ Sebastian Raschka πŸ“‚ Library πŸ“… 2024 πŸ› Manning Publications Co. 🌐 English

Learn how to create, train, and tweak large language models (LLMs) by building one from the ground up! In Build a Large Language Model (from Scratch), you’ll discover how LLMs work from the inside out. In this insightful book, bestselling author Sebastian Raschka guides you step by step through cre

Build a Large Language Model (From Scrat
✍ welcome.html πŸ“‚ Library 🌐 English

In this book, I invite you to embark on an educational journey with me to learn how to build Large Language Models (LLMs) from the ground up. Together, we'll delve deep into the LLM training pipeline, starting from data loading and culminating in finetuning LLMs on custom datasets. For many year