• Philosophy and Spirituality
    Welcome Guest
    Posting Rules Bluelight Rules
    Threads of Note Socialize
  • P&S Moderators: JackARoe | Cheshire_Kat

Computer Language vs Human Language - similarities/differences?

The majority of human language is carrried out face to face & apparently a large %age of the communication is non verbal - whether this has any bearing on anything whatsoever to do with your question I have no clue but it was my thought & you did ask
 
^ I did ask for any thoughts or comments ;) and the body language aspect is certainly relevant B9. It kind of points up this idea that, when considering the exchange of information and meaning between two humans, one needs to consider all behaviour - not just the stream of words. Which then also links with the idea we got from Alva Noe, via xoqqiy, that consciousness is a dynamic process that happens across the interface between a brain, its sensory inputs and its wider environment.
 
Like mathematics, programming languages represent a subset of perspectives effable in natural human language. These formal languages limit themselves to describing 3rd person facets of reality. In other words, anything you can say with math or a computer language can also be said in natural language but not vice versa.
 
Last edited:
Very interesting discussion, guys. I used to be an armchair linguist, so I find this stuff very fascinating.

I think the philosophical core that's being approached here, is that information is what the phenomenal universe is made of. It's certainly what any one of our whole worlds is made of, if afternoons full of made-for-TV cyberpunk stories have taught me anything :)

yougene, I think you're on the right track, but I'd take it even a step further: I think programming languages are just forms of human language, plain and simple. Even the most sophisticated computers, like all tools, are just extensions of human hands. They're just prosthetics to the human body which extend the reach of what we're able to do and sense. They are not sentient beings in any way; we don't talk to and do things to computers, we talk and act via computers. If I shout into a paper cone to people across a gorge, I'm not communicating with the paper cone, I'm communicating with the people. I might need to alter the cadence and volume of my speech in order to make it understandable, that is, to make proper use of the cone as a prosthetic. Likewise, in order to use a computer to say what I want to say, and achieve the end I want to achieve, I (or someone else) have to convert my message to a programming language, or the tool is of no use in getting my message across. Therefore, programming languages are simply modified human languages. QED.
 
I've always seen something very fascinating in computer language and that is 01, the language of opposites just like the Taoist philosophy.
Something canno't exist without something else to distinguish itself from.
Well I'm not gonna go on to much on this cuz I have a massive theory that engulfs any kind of existance but yeah basically computer language is all based on the theory of opposites that can grow rationally and mathematically to make infinitely complex structures, resembling somhow the existing universe but in a virtual-mathematical context.
Think about it...
 
This is a complex question, so instead of answering I'll just leave everyone with an author/professor.

Noam Chompsky. Language is literally programmed into our brains. How we use it is the same, what we say is different. Computers language may one day be on par (in the not too distant future.)
 
yougene, I think you're on the right track, but I'd take it even a step further: I think programming languages are just forms of human language, plain and simple. Even the most sophisticated computers, like all tools, are just extensions of human hands. They're just prosthetics to the human body which extend the reach of what we're able to do and sense. They are not sentient beings in any way; we don't talk to and do things to computers, we talk and act via computers. If I shout into a paper cone to people across a gorge, I'm not communicating with the paper cone, I'm communicating with the people. I might need to alter the cadence and volume of my speech in order to make it understandable, that is, to make proper use of the cone as a prosthetic. Likewise, in order to use a computer to say what I want to say, and achieve the end I want to achieve, I (or someone else) have to convert my message to a programming language, or the tool is of no use in getting my message across. Therefore, programming languages are simply modified human languages. QED.

I think 1st and 2nd person realities can't be expressed in programming languages or math beyond nominal/ordinal data-types. No amount of math truly grasps what green is, or what meaning is.
 
That's a valid point, but if we are making the comparison of human beings and computers as agents that grasp language then there is your key difference. I don't think brains are mere turing machines. There are two key problems here. The first being irreducibility of 1st/2nd person ontologies(qualia) to 3rd person ontologies(math/programming). The second being the problem of exponential growth in complexity of algorithm. Maybe the memristor will change all that but I'm skeptical as to whether biological information processing mechanisms are completely isomorphic with boolean logic.
 
There are many different types of computer languages, and different ways to use them :)

Imperative programming tells the computer exactly what to do, in which order, and how to do it. Example: C++
Code:
int main()
{
    PowerUpSubwoofer(); // Initialise stuff
    Music *phatBeats = LoadTunes("C:\Music\Phat Beatz.mp3");
    TurnItUpTo(11); // It's gonna get loud in here.
    Drop(phatBeats);
}

Declarative programming tells the computer what you want, but doesn't specify how to do it. Example: HTML
HTML:
<BODY>
  <H1>I am awesome</H1><!-- The header -->
  <P>hahaha disregard that, i suck cocks</P><!-- The first paragraph -->
</BODY>

Functional programming defines functions the computer can do to transform a value into another value, but does not permit any side-effects - anything you "do" is completely isolated, and the only output you can get is a return value from the given input. Example: Linq (a subset of .NET programming - this example is in C#)
Code:
// Declare some functions which return a subset of "allPeople".
// The allPeople collection remains untouched by this action.
var supposedlyResponsibleAdults = allPeople.OfType<Human>().Where(human => human.Age >= 21);
// At some point "ServeAlcoholTo" will interrogate "supposedlyResponsibleAdults" to get its values
ServeAlcoholTo(supposedlyResponsibleAdults);

Each of these serves a specific purpose. This is not the only difference between computer languages and natural languages, however.

Computer languages are one-way. Humans rarely (though occasionally for a bit of fun, some of the more fun-loving programmers out here do =D) use computer code to communicate between each-other. There is little that can be said between two humans in C++ that cannot more easily be said in English, Chinese, or Arabic. (not-so-)Obviously, code still has to be readable by other humans, in the interest of maintainability, but ultimately this is secondary to the code working in the first place.

As it was said before, computers don't "think" in programming languages, but rather in microcode, which is ultimately what all languages must compile to in order to be executed by the computer. This, however, is more of a similarity than a difference - on a most basic level, the mind does not think in language. As Wobble said, even human languages don't cover exactly what "green" is, yet we know what it is when we associate the word with the quale.
 
Top