<p>Here is a philosophical argument on what we communicate, for program itself communicates what it does, we have to have a formal semantics in mind and even if we do not there is one. But which one is it? Normally if we lack semantics, we can use compiler as an oracle for its semantics.</p>
<p>Even the most undocumented code communicates its structure. Commented code communicates more it communicates both purpose and operations it does via some compiler.</p>
<p>When we communicate natural language we are context-sensitive and in many cases we have a concrete objects in mind.</p>
<p>For example for some I which identifies a cat that we are talking about.</p>
<p><code>I (the cat) = Misty the cat</code>, Misty the cat would be a concrete cat.</p>
<p>In computer systems we tend to think of semantics as relative to a particular initial state, this depends on whether you are willing to accept depending on a choice of initial state. From my point of view it is a language as we communicate the action in real world. When we think of a concrete world we can abstract it, one way of doing so is through a state monad, this is a mathematical construction that let's us talk about state as if they were just  mathematical functions.</p>
<p>There can be other constructions that can let us talk about various cats and pick a concrete one at will. For example Misty can have a property of being brown colored or being black colored. We have to specify the domain of discourse, we are willing to range over. This might be a set, a proper class or a category (in the mathematical sense). Color right now/color at birth.</p>
<p>When we use a compiler to interpret the concrete feature of a cat in natural language that we print out, we select an abstraction of some cat. But we can also pick a collection of cats. There can be many brown cats with white spots.
In that case I would be personally thinking of possible patterns of cats.
But if I care about their properties I would have to pick a potential model of cats with that propety. In real world those cats might be more likely to have green eyes that brown eyes due to genetics, but the model itself might not encapsulate that. When I talk about those I might have this preconception, but it's not explicit in the model, when I realize someone doesn't have this view, I might want to specify more.</p>
<p>Hopefully this argues for a relative model of natural language dependent on the context, you and the person you communicate with share.</p>
<p>To give correct academic terms to the perception of pieces of natural language, it might be a better place to ask at <a href="https://linguistics.stackexchange.com/">linguistics stackexchange</a> or <a href="https://philosophy.stackexchange.com/">philosophy stackexchange</a>. But for a view of interpreting natural language within a context and likelihood of referring to concrete real objects see <a href="https://www.researchgate.net/publication/326190566_A_Compositional_Bayesian_Semantics_for_Natural_Language" rel="nofollow noreferrer">A Compositional Bayesian Semantics for Natural Language</a> by Bernardy et al.
In a programming language we might want to communicate assumptions/observations about cats that we have seen or interacted with
thus we might want to embed some model of our interaction into our programming language that talks about likelihood of interacting with a cat with certain features, in that sense in programming language communicates the model of real world we interact with or our perception of thereof.</p>

CC BY-SA 4.0
2022-08-06T03:12:00.960Z
2022-08-06T03:22:06.263Z
2022-08-06T03:22:06.263Z
Ilk
<p>Much classification work has been done classifying <a href="https://cs.lmu.edu/%7Eray/notes/pltypes/" rel="nofollow noreferrer">programming languages</a>, however do programming languages classify as languages themselves.</p>
<p>Languages as &quot;the primary means of communication&quot;, do share a lot of commonalities, with programming languages (structure, grammar, etc.), obviously. However, is a computer system as counter part really enough to call it &quot;communication&quot;? Is a reader of code or the potential absence of one enough to classify &quot;communication&quot;?</p>
<p>Programming languages often seem to be an adapter for humans to abstract and ease the use for underlying instruction sets to the machine.</p>
<p>So, is it really a language, or do we call it that way because it looks like one?</p>

<coding-theory>
Do Programming Languages classify as Language?
eljefedelrodeodeljefe
# Do Programming Languages classify as Language?

(Asked by: username_0 on 2022-07-29)

Much classification work has been done classifying [programming languages](https://cs.lmu.edu/%7Eray/notes/pltypes/), however do programming languages classify as languages themselves.

Languages as "the primary means of communication", do share a lot of commonalities, with programming languages (structure, grammar, etc.), obviously. However, is a computer system as counter part really enough to call it "communication"? Is a reader of code or the potential absence of one enough to classify "communication"?

Programming languages often seem to be an adapter for humans to abstract and ease the use for underlying instruction sets to the machine.

So, is it really a language, or do we call it that way because it looks like one?

**Tags:** coding-theory

---

## 1 answers

### Answer by username_1 on 2022-08-06. Score: 1

Here is a philosophical argument on what we communicate, for program itself communicates what it does, we have to have a formal semantics in mind and even if we do not there is one. But which one is it? Normally if we lack semantics, we can use compiler as an oracle for its semantics.

Even the most undocumented code communicates its structure. Commented code communicates more it communicates both purpose and operations it does via some compiler.

When we communicate natural language we are context-sensitive and in many cases we have a concrete objects in mind.

For example for some I which identifies a cat that we are talking about.

`I (the cat) = Misty the cat`, Misty the cat would be a concrete cat.

In computer systems we tend to think of semantics as relative to a particular initial state, this depends on whether you are willing to accept depending on a choice of initial state. From my point of view it is a language as we communicate the action in real world. When we think of a concrete world we can abstract it, one way of doing so is through a state monad, this is a mathematical construction that let's us talk about state as if they were just mathematical functions.

There can be other constructions that can let us talk about various cats and pick a concrete one at will. For example Misty can have a property of being brown colored or being black colored. We have to specify the domain of discourse, we are willing to range over. This might be a set, a proper class or a category (in the mathematical sense). Color right now/color at birth.

When we use a compiler to interpret the concrete feature of a cat in natural language that we print out, we select an abstraction of some cat. But we can also pick a collection of cats. There can be many brown cats with white spots.
In that case I would be personally thinking of possible patterns of cats.
But if I care about their properties I would have to pick a potential model of cats with that propety. In real world those cats might be more likely to have green eyes that brown eyes due to genetics, but the model itself might not encapsulate that. When I talk about those I might have this preconception, but it's not explicit in the model, when I realize someone doesn't have this view, I might want to specify more.

Hopefully this argues for a relative model of natural language dependent on the context, you and the person you communicate with share.

To give correct academic terms to the perception of pieces of natural language, it might be a better place to ask at [linguistics stackexchange](https://linguistics.stackexchange.com/) or [philosophy stackexchange](https://philosophy.stackexchange.com/). But for a view of interpreting natural language within a context and likelihood of referring to concrete real objects see [A Compositional Bayesian Semantics for Natural Language](https://www.researchgate.net/publication/326190566_A_Compositional_Bayesian_Semantics_for_Natural_Language) by Bernardy et al.
In a programming language we might want to communicate assumptions/observations about cats that we have seen or interacted with
thus we might want to embed some model of our interaction into our programming language that talks about likelihood of interacting with a cat with certain features, in that sense in programming language communicates the model of real world we interact with or our perception of thereof.


---

