4 ms·
My take on this: 1 - Patterns address (and are formulated using) the semantics of intent. They can not address domain semantics; that is addressed in the spec
by lucifer 17y ago
My take on this:
1 - Patterns address (and are formulated using) the semantics of intent. They can not address domain semantics; that is addressed in the specific realization of a given pattern (which some would consider "redundant code" but that is not strictly speaking, correct).
2 - In a meta-reflective language (type i) (such as LISP) patterns are expressed as (reusable) macros. In languages that lack the ability to extend the compiler (type ii), patterns are expressed as specifications. So regardless of the expressive power of a type-ii language, there will always remain the possibility that a pattern can be identified that would require an extension to that language's expressive power.
- reeses 17y agoIn re (2), not always. For example, the Visitor pattern is one that is specifically eliminated by basic functionality in languages that support multiple-dispatch. No developer extension of compiler or language needed.