4 ms·
More modern languages have overcome the most glaring inconveniences of early languages, but the core assumption -that a PL's purpose is ultimately and
by lambda 12y ago
More modern languages have overcome the most glaring
inconveniences of early languages, but the core
assumption -that a PL's purpose is ultimately and
exclusively as a tool to convey instructions to the
machine- remains unchallenged.
I really feel like you're selling an awful lot of the programming language design world short here. An awful lot of what programming language design is about is making it easy to precisely express what you mean, in a way that will make sense to future programmers, be robust in the face of changes, and so on. It has been a long time since it has merely been a way to convey instructions to the machine.
Configuration files and XML domain-specific languages
may work this way, and it's a very natural way to reason
for the human mind
Your mind must work fairly differently from mine if you find XML a natural way to reason.
You seem to be ignoring all of the tools for building embedded domain specific languages in Lisp, Scheme, Ruby, Haskell and various other language, logic programming languages which are much more declarative, and so on.
Literate programming has existed for years, but never really caught on because it turns out that one of the best ways to express the meaning of a lot of code (especially code for a large project that changes fairly often) is via the code itself, not a bunch of natural language prose associated with it.
- TuringTest 12y ago"I really feel like you're selling an awful lot of the programming language design world short here." You may be right about that :-) Although now I realize my words didn't exactly convey what I intended to say, see below. "An awful lot of what programming language design is about is making it easy to precisely express what you mean, in a way that will make sense to future programmers, be robust in the face of changes, and so on." Actually this is more what I was actually thinking when I said "the core assumption remains unchallenged". There are ways to program that don't assume you're trying to build a robust, unambiguous and precise meaning (and which are therefore much more adequate for non-technical users). But these ways have not been explored in depth, and are not known to the general mass of developers. There is a lively conversation at the original blog, would you mind to move the conversation there, to keep it at one place? http://programmingzen.com/2014/11/27/programming-languages-as-languages/#comment-28865 http://programmingzen.com/2014/11/27/programming-languages-a... "Your mind must work fairly differently from mine if you find XML a natural way to reason." I was not thinking of XML as natural, but of "creating instruction sets that work as recipies and can produce different executable code, so their meaning changes depending on the context on which they're executed". :-D This is the way that humans follow instructions when they receive orders. It's what makes the following a joke: Q. How did the programmer die in the shower? A. He read the shampoo bottle instructions: Lather. Rinse. Repeat. P.S. (BTW, how do you create those intended quote blocks? I don't know how to do it)