What's the difference between abstraction and generalization?
问题 I understand that abstraction is about taking something more concrete and making it more abstract. That something may be either a data structure or a procedure. For example: Data abstraction: A rectangle is an abstraction of a square. It concentrates on the fact a square has two pairs of opposite sides and it ignores the fact that adjacent sides of a square are equal. Procedural abstraction: The higher order function map is an abstraction of a procedure which performs some set of operations