Skip to content

Web Resources for Programming from First Principles

This page keeps source links outside the lessons so the modules remain easy to read.

  • Easy second explanation: learn the idea in another friendly way.
  • Official technical reference: verify syntax and exact language rules.
  • Practice resource: run or modify code yourself.

Core References

Module 1: Data Types and Collections

  • Easy second explanation: Built-in types
  • Official technical reference: Data model
  • Practice resource: Create values in the Python REPL and inspect type(...).

Module 2 to 6: Higher-Order Functions, Standard Constructs, Iteration, Lambda Calculus, First-Class Functions

Module 7 and 8: Type Discipline and Type Hints

Module 9 and 10: User-Defined and Concrete Types

  • Easy second explanation: dataclasses
  • Official technical reference: class definitions
  • Practice resource: Define Student, Shape, and TrafficLight examples in Python.

Module 11 to 14: Recursion, Operational Semantics, Shared Behavior, Polymorphism

Extra learning

  1. Read the module's simple idea and worked example.
  2. Answer the self-check without looking at the solution.
  3. Open the easy resource if the idea is unclear.
  4. Use the official reference for exact rules.
  5. Run the practice in Python.

Built from Markdown with VitePress.