4 ms·
I believe we need a "converse of Lisp" - in Lisp code is data, I believe what we need is the notion "data replaces (most) code". That leads to the question, wha
by sridharvembu 18y ago
I believe we need a "converse of Lisp" - in Lisp code is data, I believe what we need is the notion "data replaces (most) code". That leads to the question, what really is data, and I believe Codd supplies the best answer to that question. One of the truly original ideas in Computer Science that post-dates Lisp (and is not anticipated by Lisp) is Codd's relational model of data, which is not to be confused with relational databases used for storage.
Note that Codd's model is not Turing-complete, while all but the most trivial definitions of code lead to Turing-complete systems, hence the parenthetical most in my "data replaces (most) code". Data is easy, code is hard could be another way to state that.
We have experimented with such ideas, and we can report that they do significantly improve clarity and therefore productivity.
As an aside to a pg essay, I believe clarity is not the same as succinctness and as a corollary, succinctness does not imply productivity except in the somewhat trivial sense of ease of typing.
- jackchristopher 18y agoBut when writing code for yourself succinctness is power; Because abstraction is power; More stuff, smaller space. But when writing for others, abstractions kill clarity. It's true in language too. You use fewer words explaining something to yourself than to others. For example I can say to myself, "Our election are no different than high school elections (decided on popularity, not issues)." It would be seen as heretical to most, and wrong to others. But I'd be sure that I'm right. They can't see that behind that thought is long reflection on high school popularity, evolutionary psychology, and more things than I can recall. Incidentally, Paul makes this same point in, It's the Charisma, Stupid. And while reading it I thought, "He's just saying that things don't change (after high school). What an elegant theory; Occam's razor at it's best."
- gruseom 18y agoIf data is code, how does it get interpreted and executed?
- ken 18y agoIt almost sounds like you're describing Subtext: http://subtextual.org/ http://subtextual.org/
- magoghm 18y agoSubtext looks wonderful. Thanks for the link!