(blog.codinghorror.com) Are Design Patterns How Languages Evolve?

ROAM_REFS: https://blog.codinghorror.com/are-design-patterns-how-languages-evolve/

Jeff Atwood

02 Jun 2005 — 2 min read — Comments

Paul Graham's essay, Revenge of the Nerds, is a nearly pornographic love letter to Lisp. If you can manage to read all the way to the end, there's an interesting footnote buried at the bottom:

[[http://norvig.com/design-patterns/][Peter Norvig]] found that 16 of the 23 patterns in Design Patterns were “invisible or simpler” in Lisp.

He should have opened the essay with that evidence, because it strengthens his conclusion considerably:

In the OO world you hear a good deal about “patterns.”  *When I see patterns in my programs, I consider it a sign of trouble.*  The shape of a program should reflect only the problem it needs to solve.  Any other regularity in the code is a sign, to me at least, that I'm using abstractions that aren't powerful enough -- often that I'm generating by hand the expansions of some macro that I need to write.

Local Graph

org-roam 1acbce91-1e15-49c0-9374-43796c0c2f30 (blog.codinghorror.com) Are Design Pa... //blog.codinghorror.com/author/jeff-atwood/ https://blog.codinghorror.com/author/jeff-atwood/ 1acbce91-1e15-49c0-9374-43796c0c2f30->//blog.codinghorror.com/author/jeff-atwood/ //blog.codinghorror.com/are-design-patterns-how-languages-evolve/#discourse-comments https://blog.codinghorror.com/are-design-patterns-how-languages-evolve/#discourse-comments 1acbce91-1e15-49c0-9374-43796c0c2f30->//blog.codinghorror.com/are-design-patterns-how-languages-evolve/#discourse-comments //www.paulgraham.com/icad.html http://www.paulgraham.com/icad.html 1acbce91-1e15-49c0-9374-43796c0c2f30->//www.paulgraham.com/icad.html