Category talk:Non-Programming Languages: Difference between revisions

From Rosetta Code
Content added Content deleted
(meh; they're serialization formats, not programming languages)
No edit summary
Line 9: Line 9:
::I still do not see any definition of non-programming. Your reference to [http://en.wikipedia.org/wiki/Instruction_(computer_science) instructions] only supports my earlier guess that you are confusing [http://en.wikipedia.org/wiki/Imperative_programming imperative] with programming and [http://en.wikipedia.org/wiki/Declarative_programming declarative] with non-programming. See also [http://en.wikipedia.org/wiki/List_of_programming_languages list of programming languages]. --[[User:Dmitry-kazakov|Dmitry-kazakov]] 10:30, 6 July 2009 (UTC)
::I still do not see any definition of non-programming. Your reference to [http://en.wikipedia.org/wiki/Instruction_(computer_science) instructions] only supports my earlier guess that you are confusing [http://en.wikipedia.org/wiki/Imperative_programming imperative] with programming and [http://en.wikipedia.org/wiki/Declarative_programming declarative] with non-programming. See also [http://en.wikipedia.org/wiki/List_of_programming_languages list of programming languages]. --[[User:Dmitry-kazakov|Dmitry-kazakov]] 10:30, 6 July 2009 (UTC)
::: That's not a definitive list because it is automatically collected from whatever people happened to tag. The point about the data languages is that they just define a human-readable serialization format for a data structure. There is no execution model; they just exist. This is utterly different from real declarative languages like [[Prolog]]. —[[User:Dkf|Donal Fellows]] 13:08, 6 July 2009 (UTC)
::: That's not a definitive list because it is automatically collected from whatever people happened to tag. The point about the data languages is that they just define a human-readable serialization format for a data structure. There is no execution model; they just exist. This is utterly different from real declarative languages like [[Prolog]]. —[[User:Dkf|Donal Fellows]] 13:08, 6 July 2009 (UTC)

::: HTML, JSON, SGML, SVG and XML are not designed to be programming languages. The maintainers do not expect to support you writing a program in them. (except maybe as a small part of their primary focus, and even then, that part usually comes with its own name such as ECMA script). --[[User:Paddy3118|Paddy3118]] 13:34, 6 July 2009 (UTC)

Revision as of 13:34, 6 July 2009

What does "non-programming language" mean in this context? --Dmitry-kazakov 07:39, 6 July 2009 (UTC)

HTML and XML are computer languages that focus entirely on data. They are not programming languages. (Note that they can embed source code, but that's a side effect.) —Donal Fellows 08:38, 6 July 2009 (UTC)

The primary focus of the developers isn't to produce a programming language. So sed is an editor as are vim and emacs,bc is a calculator, and m4 a macro processor. The fact that they might accomplish RC tasks doesn't mean that they should be considered as programming languages. Shades of grey. --Paddy3118 09:17, 6 July 2009 (UTC)

But the examples of this category are HTML, JSON, SGML, SVG and XML. Their distinguishing feature is that they are not programming languages at all; it happens that they're all data description languages (and yes, can describe or embed programs). —Donal Fellows 09:33, 6 July 2009 (UTC)

In what sense HTML and XML are not programming languages? Computers are programmed. Data is an input or output of a program. I cannot tell what do you mean under "focusing on data". Probably, it is just a confusion with declarative versus imperative approaches to programming. Languages using either declarative or imperative approach are still programming ones. Anyway, so long a language is a computer language it does program that computer. The text in any computer language is called program. So in what sense a computer language can be non-programming? P.S. Note that for HTML/XML, the source code is the text in HTML/XML correspondingly. Just per definition: the source code of a program is a stored text in the language the program was written. --Dmitry-kazakov 09:34, 6 July 2009 (UTC)

They're not programming languages because they don't give instructions. They just describe a particular pattern of data; there's no execution model. (OK, HTML is a bit of a border case if you're wanting to render it, given the blecherous mess that it has grown into.) To argue that XML is a programming language is really strange. It's just a serialization format of a node tree, and is no more a programming language than ASN.1 or S-Expressions are (though Lisp is built on top of the latter). If you're going to use a non-standard definition of “programming”, I'll not bother arguing with you. —Donal Fellows 09:52, 6 July 2009 (UTC)
I still do not see any definition of non-programming. Your reference to instructions only supports my earlier guess that you are confusing imperative with programming and declarative with non-programming. See also list of programming languages. --Dmitry-kazakov 10:30, 6 July 2009 (UTC)
That's not a definitive list because it is automatically collected from whatever people happened to tag. The point about the data languages is that they just define a human-readable serialization format for a data structure. There is no execution model; they just exist. This is utterly different from real declarative languages like Prolog. —Donal Fellows 13:08, 6 July 2009 (UTC)
HTML, JSON, SGML, SVG and XML are not designed to be programming languages. The maintainers do not expect to support you writing a program in them. (except maybe as a small part of their primary focus, and even then, that part usually comes with its own name such as ECMA script). --Paddy3118 13:34, 6 July 2009 (UTC)