DEV Community

Discussion on: What is a Programming Language?

Collapse
 
anpos231 profile image
anpos231

CSS and HTML are not programming languages. They have some basic grammar, but they are unable give computer instructions, just because we write HTML to produce output does not mean that the HTML is the language producing this output, it's simply a structured data that browsers use to create output.

There are esoteric interpreters that can interpret images and create output. Does that mean the image is a programming language? Nope, it was never meant to be a "programming language", it's still an image and just because the interpreter exists does not make an image a language.

I know this is a hard topic that people will probably continue to fight over for many years. I personally try to reason about it like this:

If (a thing) was created to become a programming language, it is a programming language. If (a thing) wasn't created to become a programming language, then it is not a programming language.

Collapse
 
renegadecoder94 profile image
Jeremy Grifski • Edited

I think you and I fundamentally disagree here. To me, the languages we typically think of as programming languages are just text (data) with some formal syntax. They derive their meaning from the interpreters or compilers that convert them into something useful for a machine. In other words, images on their own are not programming languages, but the esoteric interpreters provide the context to treat them as such.

I’m not sure why there has to be some arbitrary criteria to exclude or include different data formats from the programming language classification.

Collapse
 
iamschulz profile image
Daniel Schulz

I'm going to disagree with you there.
I don't think I can clearly defined what is and isn't a programming language, but I can program in css, in a manner of manipulating data. I can hand the computer instructions on how a thing as to behave in consideration of a number of variables, to the extent of managing the whole state of a a component. That clearly makes it a programming language, and by proxy html as well.

You're right in that css wasn't originally meant as a programming language, but your argument is pointless. Why shouldn't a language be able to evolve?

Collapse
 
renegadecoder94 profile image
Jeremy Grifski • Edited

I’m completely on board here. I think it’s really hard (and often dangerous) to start declaring some languages in and others out without some formal definition which doesn’t appear to exist. Otherwise, everyone gets to create their own definition. Then, as a consequence, elitist factions get to form around certain types of languages (i.e. only functional programming is real programming).

One example that always comes to mind is MATLAB (as mentioned in the article). One of my best friends uses it as a Mechanical Engineer, and he received a lot of elitist backlash when he was first learning to use it. To him, MATLAB is the right tool for the task, but a lot of folks in our community look down on it.

Ironically, I imagine someone in our community developed that language.