Appearance
Programming from First Principles Notes
This folder contains a Python-based study guide for the subject Programming from First Principles across Modules 1 to 14. It is written as exam-ready revision notes with one page per module plus supporting revision resources.
Each module follows three learning layers:
- Simple idea: plain language and a familiar analogy.
- Worked example: small Python code traced step by step.
- Technical meaning: correct definitions, notation, types, and exam points.
Finish the memory rules and self-check before reading the answers.
Module-wise study method
- Review the prerequisites and complete one study block at a time.
- Type each Python example into the interpreter or notebook and predict the result before running it.
- Read errors as feedback about syntax, types, or missing definitions.
- Complete the mini quiz and practice ladder before revealing solutions.
- Mark the module
Masteredafter writing and tracing a fresh example unaided.
Module Index
| Module | Topic | File |
|---|---|---|
| 1 | Data types and collections | Module 1 |
| 2 | Higher-order functions | Module 2 |
| 3 | Standard constructs | Module 3 |
| 4 | Iteration and lazy evaluation | Module 4 |
| 5 | Anonymous functions and lambda calculus | Module 5 |
| 6 | First-class functions | Module 6 |
| 7 | Type discipline | Module 7 |
| 8 | Type hints and inference | Module 8 |
| 9 | User-defined types | Module 9 |
| 10 | Concrete types | Module 10 |
| 11 | Recursion | Module 11 |
| 12 | Operational semantics | Module 12 |
| 13 | Protocols and shared behavior | Module 13 |
| 14 | Polymorphism | Module 14 |
Support Material
- Quick Revision - fast revision notes.
- Cheat Sheet - compact definitions and patterns.
- Important Questions - likely exam questions with answer points.
- MCQ - multiple choice practice.
- Flashcards - quick recall practice.
- Glossary - key terms in alphabetical order.
- Diagrams - visual summaries and tables.
- Concept Maps - relationships between topics.
- Flowcharts - process-style revision.
- Summary - short overview of the subject.
- Web Resources - trusted external references for deeper reading.
- Internal Exam 1 - 23-question paper with 8 sections and answer key.
- Practice Test 1 - revision test for Modules 1-7.
- Practice Test 2 - revision test for Modules 8-14.
- Module-Wise Descriptive Answers - one long-answer question and model answer for each module.
How to Use This Folder
- Read the module note for the topic you are studying.
- Check the matching support pages for revision and memory aid.
- Use the web resources when you want a second explanation from an external source.
- Revisit the glossary before exams to fix terminology.
Suggested Study Order
- Module 1
- Module 2
- Module 3
- Module 4
- Module 5
- Module 6
- Module 7
- Module 8
- Module 9
- Module 10
- Module 11
- Module 12
- Module 13
- Module 14