What does this mean? It means when we make abstractions, we can grow them from concretes, organically, rather than having to plan them and implement them separately.
What kind of abstractions am I thinking about? And what kind of things support movement from concrete to abstract?
- In the original Wiki and most variants general categories can be created out a number of disparate pages using the CategoryCategory convention. Simply add CategorySomething to all pages in a category, then use search for this term to collect the group.
- In spreadsheets it's possible to change a formula which refers to an absolute address to a relative one, by adding $ in front of it. This gives control over the absolute / relative distinction.
- The PragmaticProgrammers suggest that code generation is a different kind of higher level abstraction. Essentially you can prototype a piece of code concretely, then generalize it simply by turning it into a template / skeleton for the output of a parameterized code generator.
See also : ConcreteToAbstract