Source: C Systems Lab Companion PDF

Repo: VHCosta/llc-companion-pdf Stack: Typst Author: VH Costa Status: All 12 chapters + 4 appendices complete; pre-launch content pass done (2026-04-24); publish-readiness gate still open (P1.6–P1.8 + PDF audit)

Value Proposition

Paid companion to the free web app, sold on Gumroad. Adds:

  • Exercises with full annotated solutions (primary value)
  • Deeper “why” explanations behind design decisions
  • Real-world codebase connections (SQLite, Redis, CPython, Linux kernel)
  • Debugging chapter (GDB, Valgrind, ASan/TSan workflows, core dumps)
  • Interview prep mapped to chapters with model answers

Build Outputs

  • Base (typst compile src/main.typ) — exercises only, plus one chapter-level note explaining that full solutions live in the paid tiers
  • Sample (--input demo=true) — Chapters 1-3 only, selected solutions (1.2, 2.2, 3.2), one extended project (ch03), no appendices
  • Solutions (--input solutions=true) — full annotated solutions
  • Complete (--input solutions=true --input extended=true) — solutions + extended projects

As of the 2026-04-15 revision/QA pass:

  • the base tier no longer repeats per-exercise upsell boxes
  • lower tiers no longer show empty Extended Project headings
  • ch01’s extended project is now real content instead of a placeholder shell
  • the free sample/demo edition is a curated hybrid sample rather than a free slice of the full Complete tier

Structure

src/
├── main.typ          ← entry point, tier flags, page layout
├── template/         ← shared blocks and styling helpers
├── chapters/         ← ch01.typ – ch12.typ
└── appendix/         ← debug.typ, interview.typ, repo.typ
fonts/                ← bundled font assets passed to Typst
tests/                ← downstream mirror of canonical exercise solutions + fixtures
out/                  ← generated PDFs
build.sh              ← builds base, demo, solutions, and complete editions

Note: canonical exercise authoring now lives in llc-course/content/. This repo consumes the mirrored tests/ tree for solution-side validation rather than owning the canonical content/ source.

Chapter Status

Note: PDF chapters have their own structure independent of the web module numbering.

ChapterPDF TitleWeb ModuleStatus
ch01Setup and the Compilation Modelm01-c-is-not-java (lessons 1-1, 1-2)Written
ch02Types, Operators, and Control Flowm01-c-is-not-java (lesson 1-3)Written
ch03Pointers and the Memory Modelm02-pointers-memory-modelWritten
ch04Dynamic Memorym03-dynamic-memoryWritten
ch05Structs, Unions, and Bit Fieldsm04-structs-unions-bitfieldsWritten
ch06The C Preprocessorm05-c-preprocessorWritten
ch07File I/O and System Callsm06-file-io-syscallsWritten
ch08Processes and Signalsm07-processes-signalsWritten
ch09Sockets and Networkingm08-sockets-networkingWritten
ch10Concurrencym09-concurrencyWritten
ch11Going Below Cm10-going-below-cWritten
ch12Game Boy Emulator (capstone)No web counterpartWritten

Status: Shipped, With Publish Gate Still Open

All chapter-writing work is complete. The 2026-04-15 revision pass closed the main trust/content fixes, validated the product at 48 exercises / 12 chapters / 4 appendices, and left only the final publication gate open.

  • Gumroad listing is live at vhcosta.gumroad.com/l/c-systems-lab (28 / $38)
  • Local builds pass for all 4 outputs
  • Current locally verified page counts:
    • companion.pdf: 143
    • companion-demo.pdf: 37
    • companion-solutions.pdf: 223
    • companion-complete.pdf: 236
  • rendered/public metadata now aligns to 48 exercises / 12 chapters / 4 appendices
  • tests/run_all.sh: 48/48 pass after the revision pass
  • demo PDF includes exactly:
    • Chapters 1-3
    • solutions 1.2, 2.2, 3.2
    • ch03 extended project (Implement the String Library)

ch12 — Game Boy Emulator capstone: PDF-exclusive chapter with no web counterpart. SM83 register file, 64 KB memory bus, opcode dispatch table, ROM loader with header/checksum validation. Extended project: get Tetris booting via SDL2. See meta-gb-emulator for full implementation details.

2026-04-24 pre-launch additions:

  • src/acknowledgements.typ — new closing page (all tiers; #if demo-mode branches)
  • src/where-to-go.typ — new “Where to go from here” page (paid tiers only)
  • src/chapters/ch12.typ — Ex 12.2b (instruction decoder) + Ex 12.2c (cartridge header parser) with full annotated solutions
  • src/chapters/ch01.typ — compilation pipeline diagram (4-stage horizontal flow)
  • src/chapters/ch03.typ — process virtual address space diagram (two-column: hex addresses + colored segments)

Current frontier: complete the publish-readiness gate:

  • P1.6: Gumroad listing updates (screenshots, T3 description, audience line)
  • P1.7: Price floor review (38 / $45)
  • GUI PDF viewer audit + full visual artifact pass all 4 tiers
  • P1.8: Distribution priming (HN, r/C_Programming, Bluesky)

Historical revision-pass material now lives under reviews/archive/2026-04-revision-pass/.