4 ms·
It has a restricted grammar and can be parsed, so it is a programming language as much as any on the list. It just doesn't have a canonical runtime.
by tadfisher 4y ago
It has a restricted grammar and can be parsed, so it is a programming language as much as any on the list. It just doesn't have a canonical runtime.
- avgcorrection 4y agoCSV too?
- oreilles 4y agoA programming language is a notation for writing programs, which JSON isn't, not more than any other storage format or markup language.
- Someone 4y agoI doubt many share your opinion that anything with a restricted grammar that can be parsed is a programming language. I think your definition is closer to, if not identical to, what Wikipedia calls “Computer Language” (https://en.wikipedia.org/wiki/Computer_language https://en.wikipedia.org/wiki/Computer_language) For me, and I think for most, the more restricted https://en.wikipedia.org/wiki/Programming_language#Definitions https://en.wikipedia.org/wiki/Programming_language#Definitio... (“A programming language is a notation for writing programs, which are specifications of a computation or algorithm”) is closer to what makes a formal language a programming language.
- still_grokking 4y agoAny arbitrary string of Unicode characters would be a programming language given that above definition. Which makes of course no sense. A syntax without predefined runtime semantics is not a programming language! Without the interpretation semantics no (or every, depending on standpoint) computation can be described by any syntax. The definition of runtime semantics for some syntax is what creates a programming language in the first place. Pure syntax OTOH can be given arbitrary interpretations. So it's therefore not a programming language on its own. The runtime semantic of some code is what allows us to write and execute programs. One can't write even the most trivial programs in JSON. No "Hello World" as JSON does not offer any I/O facility. No "fizzbuz" as there are no control structures or any loops in JSON. No "Fibonacci numbers" as there are no function abstractions in JSON… JSON is just not a programming language. (Still a valid candidate to include in computer language collection, of course, as JSON has its merits regardless the fact there is no canonical way do write in it anything that resembles computer programs).