liveBook · Manning

ACD perspective

As explained in Grokking Simplicity

A functional-programming perspective that classifies computations as actions, calculations, or data.

The ACD perspective classifies computations as actions, calculations, or data. Applying it reveals hidden decisions, plans, effects, and records so code can be pulled apart deliberately. section 3.3

Use the distinctions as a practical decomposition guide:

  • Actions may contain smaller actions, calculations, and data; keep pulling them apart until further decomposition stops helping. section 3.3
  • Calculations can combine smaller calculations and data, often passing one calculation’s output into the next. section 3.3
  • Data records facts about events and can be composed only from more data, providing stronger behavioral guarantees. section 3.3

Shopping process

A shopping trip contains visible actions, decisions made while choosing what to buy, and records of events. Naming those hidden calculations makes the situation easier to analyze before coding. section 3.3

How Grokking Simplicity covers it

How deep it goes
Explains classification, nested composition, hidden calculations, and when to stop decomposing.
Examples
Uses a shopping process, decisions made during shopping, and JavaScript built-in data types as examples.
What you can do after
Practice/perform decomposition by identifying actions, calculations, and data in everyday situations and code.
How it connects
Connects functional programming with actions, calculations, data, composition, and event records.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Grokking Simplicity. The section links point to the parts of the book it draws on.