Sunday, June 28, 2015

Silver Rule

Golden Rule: "One should treat others as one would like others to treat oneself " 

Silver Rule: "One should treat others as what they would tolerate from others"

Thursday, June 25, 2015

Thoughts on artificial vs natural languages

Computer languages are built primarily to execute algorithms, where as natural are primarily built for communication.

There are certain protocols which computers use for communication. So, it would be more apt to compare  natural languages with computer protocols.

Tools to describe  algorithms (such as pseudocodes) are perhaps the closest natural language analogues of computer languages.

Computer communication protocols don't serve as wide a purpose as natural languages. This would very likely reflect in the complexity of their structure.

Is it possible to construct fuzzy computer communication protocols?

Sometime back, we are discussing the new version of Turing tests, where computers have to decipher the meaning of a sentence in order to correctly parse it. For example, statements like:

"Tara didn't like  Mary because she was annoying",  and
"Mary kept Tara happy because she was generous".

In both sentences, the pronoun "she" can be correctly attributed only if the meaning of the sentence is deciphered. The structure of the sentence itself is not sufficient. Both the syntax and the semantics are needed for accurate attribution.

Perhaps, object orientedness in computer languages comes close to this phenomenon. I am not knowledgeable about communication protocols, but is likely some of them are object oriented. I just googled and there seems to be some interesting work regarding inter-software layer and nework protocols.

Actually, I think "state dependent behavior" of a computer comes more closer to the above natural language phenomenon. That is, what a function returns doesn't just depend no its code and input parameters, but the state of the system as well.