A language should be designed around a powerful metaphor that can be uniformly applied in all areas. . . . [L]arge applications are viewed in the same way as the fundamental units from which the system is built.
, from DesignPrinciplesBehindSmalltalk
Agreed. So what languages have statements that function as BlackBox
data transformations? And what are those statements composed of?
s (new and old, good and bad):
Related to GroundBreakingLanguages
, many of which are governed by a BigIdea
, best defined by example:
describes languages like this as "extremely powerful and elegant within [their] ProblemDomain
, but weak outside it (there also seems to be a law that such languages must have obscure syntax). "
Dunno if the BigIdea
is limited to languages; surely Unix's "Everything is a file" counts?
I might agree that Lisp is weak outside its ProblemDomain
if someone can tell me where its ProblemDomain
Outside the LispMachine. HaHaOnlySerious.
Also, I think Lisp has more than one big idea:
Where the last unifies the previous two.
"Any time you have "one overriding idea", and push your idea as a superior ideology, you're going to be wrong. Microkernels had one such ideology, there have been others. It's all BS. The fact is, reality is complicated, and not amenable to the "one large idea" model of problem solving. The only way that problems get solved in real life is with a lot of hard work on getting the details right. Not by some over-arching ideology that somehow magically makes things work."
See also SystemMetaphor
. In both cases we have a UnifyingConcept?
See also EverythingIsa