You are viewing the historical archive of The Philosophy Forum.
For current discussions, visit the live forum.
Go to live forum

Computer Programming and Philosophy

Harry Hindu May 25, 2020 at 18:46 9925 views 34 comments
"I think everyone should learn how to program a computer, because it teaches you how to think".
-Steve Jobs

Philosophy is commonly understood to be the study of knowledge, thinking about thinking, or what is proper and improper to think.

It seems to me that the skills necessary to do both well are very similar. Programming teaches you how to create complex, consistent systems and that skill is essential to what philosophers do. Object-oriented languages treat reality as if it were divided into Aristotelian “substances", so programming seems to require some understanding of ontologies. "Ontology" is a term used both in philosophy and computer science and means basically the same thing. It refers to the nature of the thing that we are talking about or modeling.

Part of the process of creating a computer program is the use of variables. Variables are symbols that stand for some quantity or some other string of symbols, or an array of other variables. Words are like the variables in a computer program. They need to be defined for some function to use them properly. If they aren't defined then the function will produce an error. This is the problem that I see occur most in philosophy - where the terms themselves aren't properly defined to do any work with, or that the function references the wrong part of the array if the variable/word has multiple definitions. A word can have an array of definitions and if you confuse which one you are working with, then you will get an error.

So, just as creating a proper computer program entails the proper use of variables, doing philosophy entails the proper use of words in clearly defining what it is that you are referring to when using that variable/word.

One of the first things you need to do as a programmer is decide what exists and how it works so that you can model it with code. For instance, there is something that exists called, "purchasing an airline ticket", and there is a process to it - a how it works. In doing so, you have to figure out what the basic objects are and how they interact. Customers can have attributes like credit card numbers, seat assignments, email addresses, and can perform functions like placing orders, checking in, canceling, etc. Another object could be "flights" would would then have attributes like destinations, origins, expected departures, etc. Seats would have properties like row, windowed, occupied, etc. If any of these objects in the code don't accurately model the real world or how they interact properly, then you program isn't going to be useful.

If philosophers don't accurately model the world with their words, then whatever conclusions they reach won't be very useful either.

If philosophy is the practice of thinking clearly about life, then good programming and good philosophy go hand in hand, just as bad programming and bad philosophy do. It is about thinking clearly, not ambiguously.

I would love to hear feedback from the community.

Comments (34)

Changeling May 25, 2020 at 18:53 #415976
Quoting Harry Hindu
I would love the hear


I would love to* hear (to infinitive verb pattern)
jgill May 25, 2020 at 18:56 #415977
Quoting Harry Hindu
Words are like the variables in a computer program. They need to be defined for some function to use them properly. If they aren't defined then the function will produce an error. This is the problem that I see occur most in philosophy - where the terms themselves aren't properly defined to do any work with, or that the function references the wrong part of the array if the variable/word has multiple definitions. A word can have an array of definitions and if you confuse which one you are working with, then you will get an error.


Amen to that. :up: "Garbage in = garbage out"
Jamal May 25, 2020 at 19:09 #415983
The difference between computer programming and philosophy is like the difference between making a table and making a sculpture: if you've gone wrong your code will produce an error and your table won't stand up right, but in philosophy and sculpture you never get that: it's harder to tell. In philosophy, there's no agreement as to what the proper objects, settings, and parameters should be in the first place. Philosophy is the practice of trying to work that out.
Pfhorrest May 25, 2020 at 19:35 #415998
I agree wholeheartedly and wish I had double majored in philosophy and computer science (which I had considered at the time) instead of philosophy and multimedia arts. The programming makes a much more natural match to the philosophy... and would have paid a lot better, too.
_db May 25, 2020 at 19:55 #416007
Programming, as well as computer science, have been built around the notion of abstraction, i.e. simplifying complexity by ignoring details. Abstraction requires a mind that can detect and then assign identities to repetitions in the form of metaphors, i.e. useful make-believe. Working with computers is as much of a material exercise as it is an imaginative and magical (autistic) one.

Programming teaches reductionism and abstraction. Break it down, then build it back up, and in doing so transform the real into the ideal, a castle-in-the-sky.
Jamal May 25, 2020 at 20:00 #416010
There's a difference between computer science and programming. It's like the difference between pure mathematics and engineering. I'm not educated in computer science but I learned how to code through experience. There's nothing about programming that feels relevant to philosophy, to me. I'm an engineer, or craftsman. For others, doing more comp sci kinds of things, I imagine it's different.

It might be the case that the way I think even in everyday software engineering is somehow useful as a way of training me how to think in a disciplined way that might be helpful for philosophy, but it doesn't really seem that way. When I'm programming, it doesn't feel like I'm thinking as such, as much as it feels like working on an engine with a toolbox. If it feels like thinking at all, it's like thinking with my fingers.
EnPassant May 25, 2020 at 20:04 #416015
Programming, chess, mathematics and other games do help you to think with precision. Anyone who wants to philosophize would do well to learn to think with clarity.
Hanover May 25, 2020 at 20:13 #416024
I had momentarily been interested many many years ago in an MS in AI at UGA. https://www.ai.uga.edu/ms-artificial-intelligence

It's where philosophy, computer science, and linguistics meet. I went to law school instead, but I did talk to a professor there, and he was very encouraging, and felt like my background in philosophy would give me a leg up.

If someone here has gone down that road, I'd be interested in hearing what sort of work you do.
Pfhorrest May 25, 2020 at 20:28 #416031
When I fantasize about have double majored in CS and phil (“software engineering” wasn’t a major yet then, and was covered under CS) I imagine I would have tried going into AI as the most obvious application of those two fields together.

If I were to have triple majored, the third field would have been linguistics, so it’s interesting that that has AI applications too. I see linguistics, philosophy, and information and communication industries generally as sort of the core axis in my map of different endeavors:

User image
Jamal May 25, 2020 at 20:32 #416033
Reply to Hanover I wanted to take the AI course at university when I first started learning programming but they abandoned it at the last minute and I ended up doing tic-tac-toe in C++.

Reply to Pfhorrest Yeah, I see linguitics, AI, and cognitive science as areas in which philosophy really makes a difference today.
Harry Hindu May 26, 2020 at 13:00 #416250
Reply to Professor Death :kiss: Yep, syntax matters.

Quoting jamalrob
The difference between computer programming and philosophy is like the difference between making a table and making a sculpture: if you've gone wrong your code will produce an error and your table won't stand up right, but in philosophy and sculpture you never get that: it's harder to tell. In philosophy, there's no agreement as to what the proper objects, settings, and parameters should be in the first place. Philosophy is the practice of trying to work that out.

When do you have a sculpture? It seems that "sculpture" needs to be defined in order to know whether you've made one or not. If not, the the term is meaningless. I could call the way I slapped my mash potatoes on a plate a "sculpture". Picking my nose could qualify as "doing philosophy" if we aren't agreeing on what philosophy is and not agreeing is good. Is not agreeing a good thing or a bad thing when it comes to defining something?

Once it is defined you can create a program to use it, or a philosophy to work with it. If you haven't clearly defined what it is you are talking about, then what are you philosophizing about?

You claim that the parameters haven't been worked out, yet the only parameter that is used is logic - even when trying to show logic isn't the only parameter.

This is from the What is certain in philosophy thread:
Quoting A Seagull
If A is on B then B is under A
X is on drugs
Drugs is under X. — A Seagull
You're confusing the symbol with its meaning. The "on" in the second statement doesn't mean the same as the "on" in your first, therefore the conclusion doesn't follow. It's not really about the symbols, but what the symbols mean.
— Harry Hindu

Quite so, but when you apply 'mending' to logic or words you lose the rigour of the logic and it becomes indistinguishable form non-logic.


I like to try to solve these types of problems by simulating the problem by recreating it in a program.

One of the most fundamental laws of logic is the law of non-contradiction, along with the law of identity. Words are just scribbles or sounds when they don't mean something, just as variables are just scribbles when they aren't defined. What they refer to, or mean, has to be clearly defined for any subsequent logical parameters using them to be useful.

Some computer programs require you to not only define the variable, but what kind of variable it is, an integer, string, boolean value, etc. If you use the wrong type of variable in the wrong function, you will get an error. For instance if you use a string variable to perform a mathematical calculation it will generate an error.

Another type of error is if your variable is an array and you don't refer to a particular index in the array that exists, then you will generate an error. An array is like a word that has several definitions. If you don't refer to the right definition, you won't get the proper output. You might not get an error, but the output would be erroneous, as in it doesn't reflect reality.

So what I think has happened in Seagull's post is that the first statement one definition of "on" has been established - the opposite of "under".

The second statement is more like referring to the array without the index number - as if "on" only has one definition - the one used in the first statement. The index number was referenced in the first statement but not in the second, hence the ambiguity of which definition is being used. The identity of "on" is never maintained throughout the argument. The moment you lose the non-contradictory identity of what it is you are talking about, you are no longer talking about anything.

TheMadFool May 26, 2020 at 15:09 #416294
Quoting Harry Hindu
A word can have an array of definitions and if you confuse which one you are working with, then you will get an error.


In my humble opinion, where philosophy, inclusive of any other logically rigorous field, and programming overlap in a very significant way is language. As you correctly mentioned, you can't do any programming until and unless you have completely mastered the chosen high level language; too, computer languages are short on vocabulary but long on semantic precision. What this means is that, if you use the correct words and the proper syntax, it's impossible for the computer to misunderstand you and also for you to misunderstand the computer. This exactitude in communication between a computer and its coder is missing in philosophy because of the obvious reason that human language has more going on with the words and also with the way they're employed.
Frank Pray May 26, 2020 at 15:38 #416296
Reply to Pfhorrest "and would have paid a lot better too . . ." A much needed lighter tone to heavy subject. I too appreciate Harry's analogy. What seemed to almost yell at me in Harry's posting, but was not said, was that the "ontology" or "what is" is only part of the questioning process, because all coding is designed to reach an end result, and that implies a goal, and a goal implies a "why." The "object" could as readily be labeled the "objective." Once the objective is known, such as assigning passengers their seats aboard an aircraft, every piece of coding has relevance and utility by reference to the objective. The success or failure of the coding at any stage in the process is measured by how efficiently (or elegantly) it contributes to the desired end result. All to say, to apply the coding analog to philosophy, the first and supremely important question may be: what is the end objective of human life?
Frank Pray May 26, 2020 at 15:52 #416299
Reply to Harry Hindu I'm having great fun following the coding analogy. Yes, I see the critical first importance of defining the key variables and using them according to syntactical rules. Good mental hygiene in everyday conversation would require some real skill of identifying the misuse of terms and calling out the need for a clarifying definition. The sad truth about most human communication is that we proceed with the false assumption that we each have a precise common understanding of the terms we're using with one another. Taking this linguistic dilemma out of the laboratory and into the streets, I'm wondering if you have any "seat of the pants" tactics to use in daily conversation that helps the participants to come to common terms. Being pedantical with your lover is not usually the first best approach.
Heracloitus May 26, 2020 at 16:15 #416307
I don't really care much to equate programming with philosophical thinking. At most it can only map to a logical modality of thought. In programming you create the world entirely and the only thrown errors are the ones which you explicitly check for. Programming doesn't help you to think, it helps you to put limitations on thought. To set bounderies. Programming is all rules and no pathos. Yet philosophy is brimming over with affect (yes even the analytical tradition and the so called logical positivism).
Harry Hindu May 26, 2020 at 18:45 #416341
Quoting TheMadFool
This exactitude in communication between a computer and its coder is missing in philosophy because of the obvious reason that human language has more going on with the words and also with the way they're employed.

If it were exact, there would be no bugs or glitches.

It's a matter of integrating each our private languages into a public one, just as the computer has it's language of 1's and 0's - machine language - that the higher languages have to be translated to via a compiler. Some series of 1's and 0's means the same thing as "If x > y then do z", just with different languages.

Quoting Frank Pray
All to say, to apply the coding analog to philosophy, the first and supremely important question may be: what is the end objective of human life?


Quoting emancipate
Programming doesn't help you to think, it helps you to put limitations on thought. To set bounderies.

Other programmers would agree with Frank, in that you program to solve problems, not to place limits on thinking, but to provide a means of solving virtually any problem by simulating with code. Variables allow you to define your own meanings, and produce your own conditions and ontologies, but they are only useful if they simulate the real world in some way.

I think the problem with some philosophers that question the use of logic to solve problems is that they like keeping things mysterious. Ambiguous term use is a means of keeping logic from attempting to solve the problem. If you can never define what it is you are talking about and are evasive and contradictory, then it seems to me that you like having the problem more than having a solution.

Quoting Frank Pray
Taking this linguistic dilemma out of the laboratory and into the streets, I'm wondering if you have any "seat of the pants" tactics to use in daily conversation that helps the participants to come to common terms. Being pedantical with your lover is not usually the first best approach.

Daily conversations usually don't include talk about "consciousness", "what it is like to be a bat", "direct vs. indirect realism", "metaphysics", and the other terms we use so often on this forum, so it generally isn't a problem like it is here, in the context of questioning the fundamentals of what we know. I think some of us come to this forum to escape the social games and roles that we play using words the way we do in our everyday lives. We take a break from being fake so that we can be real on these forums. Brown-nosing your boss can only be done so much before you begin to question your own integrity.

Heracloitus May 26, 2020 at 20:14 #416358
Quoting Harry Hindu
I think the problem with some philosophers that question the use of logic to solve problems is that they like keeping things mysterious. Ambiguous term use is a means of keeping logic from attempting to solve the problem. If you can never define what it is you are talking about and are evasive and contradictory, then it seems to me that you like having the problem more than having a solution.


The problem is not that some philosophers keep things ambiguous, but that some believe ambiguity can be eliminated. It is OK that there is still some fuzzyness around the edges!

Logic is just a tool. Useful, yes. But certainly it is only one aspect of thought.
Jamal May 26, 2020 at 21:16 #416377
Quoting emancipate
I don't really care much to equate programming with philosophical thinking. At most it can only map to a logical modality of thought. In programming you create the world entirely and the only thrown errors are the ones which you explicitly check for. Programming doesn't help you to think, it helps you to put limitations on thought. To set bounderies. Programming is all rules and no pathos. Yet philosophy is brimming over with affect (yes even the analytical tradition and the so called logical positivism).


:up:
Frank Pray May 26, 2020 at 21:42 #416385
Reply to Harry Hindu I'm something of a pragmatist when it comes to philosophy. The philosopher seeks wisdom, and wisdom for the sake of living not in seclusion, but in relation to the citizens and culture in which he or she was born. So, the idea of defining the terms and proceeding sequentially can be applied, just not with the formalism or unforgiving methods of coding. Steven Covey articulated the communication skill of "seeking first to understand and then to be understood." Maybe a coding variation of that would be "seek first to understand the terms, then to use them to be understood."
Harry Hindu May 26, 2020 at 22:00 #416394
Quoting emancipate
The problem is not that some philosophers keep things ambiguous, but that some believe ambiguity can be eliminated. It is OK that there is still some fuzzyness around the edges!

Logic is just a tool. Useful, yes. But certainly it is only one aspect of thought.


So do your words refer to the fuzzy edges or concrete center? If one is referring to the edges while another is referring to the center, are they talking past each other?

Is logic a tool or an aspect of thought? It doesn't seem coherent to claim it is both. If you could clarify, that'd be great.

It is a tool for proper thought. If you aren't interested in thinking properly, then can you actually claim to be doing philosophy considering logic lays out the rules for thinking properly about the other fields?

How do you distinguish between a delusion and fuzzy thinking? Delusions are thoughts that are uninhibited by facts.
Frank Pray May 26, 2020 at 22:07 #416400
Reply to Harry Hindu It's a fair point that philosophy will have its specialized terminology. That's fine when experts speak among themselves, a sort of shorthand that communicates packed meaning for those who know the terms. But it is a thing of beauty to hear a qualified expert explain complex ideas to a jury totally unfamiliar with the specialized terms of his expertise. The great expert witness compromises nothing in the meaning of his or her science by converting technical concepts into the vernacular. I've seen experts with not a hint of condescension use technical medical or economic terms for example, then explain them wonderfully in clear ordinary language, leaving everyone in the room to wonder "why didn't they just say so?" By analogy, I would argue that the philosopher who cannot step out of his academic circle to explain an idea to people having no background in formal philosophy either does not know his subject thoroughly or is too self-absorbed to care to connect with others. Maybe this is where the coding analogy comes into play: don't just define the relevant variables at the outset, but define them in a way that is comprehensible to the folks you hope to inform. After all, people use applications to achieve their objectives, not those of the programmer.
Harry Hindu May 26, 2020 at 23:15 #416434
Reply to Frank Pray Programming is about automating the solution to a problem.

Programmers usually start off creating programs for themselves, to solve their own problems. It just so happens that others have similar problems, or that the algorithm can be applied to solve other problems. I often find myself copy and pasting code because I'm solving the same problem, or I just create a function that automates the problem solving when called, providing the output of one function as the input of the other function.

The problem isn't experts defining the terms on this forum. Is Aristotle an expert on the topics of this forum? Are we permitted to disagree with his use of terms? Who here is an expert on the topic at hand? You'd think that the computer programmer would be, but then look at all the people disagreeing with my use of terms.

What I find strange is the assertion that ambiguities can't be eliminated which seems to imply no ambiguity of me being wrong in claiming that they can, and should be for proper thinking.

If ambiguities can't be eliminated, then emancipate's and jamalrob's posts could actually be agreeing wholeheartedly with everything I have said.

Jamalrob and emancipate are trying to have their cake and eat it too.
Nuke May 26, 2020 at 23:24 #416435
Quoting Harry Hindu
If philosophers don't accurately model the world with their words, then whatever conclusions they reach won't be very useful either.


It can be proposed that nothing made of thought can accurately model the real world. This isn't a problem of the philosopher or any philosophy but of the medium all philosophers and all philosophies are made of, thought.

Thought operates by dividing a single unified reality in to conceptual parts. A profound bias for division is a key property of thought, and this bias distorts all products of thought.

Here's an example to illustrate. My model of this post is that it contains "my ideas". This model presumes I am a separate thing, and that these are unique ideas that arise from that source. This feels true, and it's a useful model in many ways, but...

I am not a separate thing. And these ideas have been circulating around civilization for thousands of years. The ideas don't belong to me, or to anybody, but are instead a property of the global human mind.

A great deal of philosophy is powered by the illusion I've described above. Thought creates the "me" through it's process of conceptual division, and then the "me" attempts to enlarge itself by claiming ownership of ideas which typically have already been shared countless times in a variety of ways.



Banno May 26, 2020 at 23:54 #416448
Reply to Harry Hindu Laughed out loud - literally - at the way you reduced programming to using variables in the OP:
Quoting Harry Hindu
Part of the process of creating a computer program is the use of variables. Variables are symbols that stand for some quantity or some other string of symbols, or an array of other variables. Words are like the variables in a computer program.


As if all the other terms in a programs were not also words; as if all all words were nouns. As if the only thing words do is refer.
Harry Hindu May 27, 2020 at 00:28 #416456
Reply to Banno Nouns engage in actions or functions, which verbs refer to. Adjectives refer to properties of the noun.

Variables are scribbles whose meaning can be customized on the fly, while the other words are used to perform functions on the meaning of the variables, what they refer to, not the scribble itself.

If a word doesn't refer then words are just sounds that make people do things, just as an alarm wakes you up from sleep.

If you want to address the specific examples I have provided or provide your own, then we can start there. But your amusement certainly isn't a good evidence that anything that I have said is wrong. You need to try a bit harder.
Banno May 27, 2020 at 00:39 #416462
Reply to Harry Hindu "Wrong" is a bit harsh; misguided, perhaps

On occasions, I teach kids. I've several times been involved in setting up and running philosophy for children. It's never long before I start to question the wisdom of such a curriculum. So much of philosophy is bad or clumsy.

I also teach coding, and have found it a much more direct, effective way of teaching "thinking" - especially sits such as code.org, which comfortably straddle the concrete /abstract divide for eight year olds by using games.

But following through on the analogy above, it seems to me that you do philosophy in much the way a programmer would program if they only used variables - it doesn't work.
Frank Pray May 27, 2020 at 04:30 #416505
Reply to Harry Hindu emancipate seems to doubt the good faith search for truth among philosophers who hide behind "mysterious" terms. Do such charlatans exist? Surely. But emancipate doesn't say they dominate the world of honest philosophers who genuinely love and seek truth. If he did, I don't think he'd be poking around in a philosophy forum.

Jamalrob presents a tougher case. His argument is that coding doesn't work as a model for philosophical inquiry because it lacks "pathos," meaning, I surmise, coding is a cold mechanical set of rules that produce nothing really important to the process of philosophical inquiry. Many machines are quite useful despite lacking emotion, and it would be troublesome indeed if a chainsaw had a fit of anger just when your legs were exposed to the blade. Nor did you make the argument that coding was more than an analog for the process of seeking a solution. Nor did you advocate for coding as a source of useful premises. I understood your argument to be that coding is just a tool for how to think about a solution to a specific kind of problem, in the same sense that the scientific method is the preferred method to find answers to certain types of problems, e.g., discovering a vaccine for COVID-19.

We could spend a lot of time in the next world unraveling the undefined meanings of the terms "coding," "process," "pathos," "thinking," "program," "scribbles" and "tools," and I'm grateful that won't happen here, but it is useful to see that we've used these terms with unspoken assurance that we each have the same understanding of what they mean and how they apply.
Frank Pray May 27, 2020 at 04:43 #416508
Reply to Banno Quoting Banno
it seems to me that you do philosophy in much the way a programmer would program if they only used variables - it doesn't work.


Interesting observation. Not being a coder myself, it reasons nonetheless that for the process path to have one or more predetermined destinations, some constants have to be present in order to manage the variables [you can tell by the way I'm framing this idea I know no coding].
But what interests me about your comment is how you would carry your thought further to apply it to the "non-variables" in a philosophical inquiry. We live in a time of rampant relativism when "constants" are criticized as imposing absolutes when no viewpoint is more valid than another. You write that a line of code that was constructed of only variables "does not work." Would you say the same of a value system that held one viewpoint is as valid as any other?

Heracloitus May 27, 2020 at 05:53 #416519
Quoting Harry Hindu
Programming is about automating the solution to a problem.


And there are many different ways to solve a problem in programming depending on the programmer, paradigm or programming language. Object orientated is only one paradigm. Functional programming, for example, will have a very different approach - function composition rather than classes and property inheritance. Even the way a problem is framed is arbitrary.

Quoting Harry Hindu
What I find strange is the assertion that ambiguities can't be eliminated which seems to imply no ambiguity of me being wrong in claiming that they can, and should be for proper thinking.


Is it easier to comprehend if I say that ambiguity cannot be completely eliminated? The best we can do is a good enough approximation. Good enough to work with, we can have a discussion and understand each other to a certain extant, not completely but enough. This is the problem with language as transmission of thought: lack. Logic doesn't solve this because it necessarily omits what it considers to be the excess of thought, in an attempt to remove ambiguity.

I dispute the notion that 'proper thinking' and philosophy should aim towards logical reduction.
Harry Hindu May 27, 2020 at 14:20 #416620
Quoting Banno
"Wrong" is a bit harsh; misguided, perhaps

How exactly is "misguided" not the same as "wrong"? You say that it's "harsh", but if you're trying to spare my feelings, my feelings, and you trying to spare them, have nothing to do with what I said being wrong or right.

Quoting Banno
On occasions, I teach kids. I've several times been involved in setting up and running philosophy for children. It's never long before I start to question the wisdom of such a curriculum. So much of philosophy is bad or clumsy.

I also teach coding, and have found it a much more direct, effective way of teaching "thinking" - especially sits such as code.org, which comfortably straddle the concrete /abstract divide for eight year olds by using games.

A curriculum in philosophy for children should simply be a course in critical thinking, which a computer coding course could be a choice because coding teaches critical thinking.

The history of philosophy should probably be reserved for high school and college elective courses, or those majoring in philosophy - which seems to be not much different than a major in theology.

Quoting Banno

But following through on the analogy above, it seems to me that you do philosophy in much the way a programmer would program if they only used variables - it doesn't work.

I don't recall ever saying that programmers only use variables to solve problems, or that making sure words are clearly defined solves all philosophical problems. I think what I have shown is that this is part of the process, yet a necessary part, just as avoiding appealing to emotion is a necessary part of solving problems. All the rules are necessary and are dependent on the other rules to be followed in order to solve the problem. If I wrote a program that only showed a profit for a company because I wanted to spare the CEO's feelings, then that company wouldn't be a company for very long.
Harry Hindu May 27, 2020 at 14:40 #416630
Quoting emancipate
And there are many different ways to solve a problem in programming depending on the programmer, paradigm or programming language. Object orientated is only one paradigm. Functional programming, for example, will have a very different approach - function composition rather than classes and property inheritance. Even the way a problem is framed is arbitrary.

Sure, but they all involve logic (error-free thinking) if you want to actually solve the problem.

If the way a question is framed is arbitrary, are we sure we're asking the same question if the question is framed differently? How would you know? Maybe because some words mean the same thing?

Quoting emancipate
Is it easier to comprehend if I say that ambiguity cannot be completely eliminated? The best we can do is a good enough approximation. Good enough to work with, we can have a discussion and understand each other to a certain extant, not completely but enough. This is the problem with language as transmission of thought: lack. Logic doesn't solve this because it necessarily omits what it considers to be the excess of thought, in an attempt to remove ambiguity.

I dispute the notion that 'proper thinking' and philosophy should aim towards logical reduction.

To say that it can't be completely eliminated would imply that we know what ambiguity being completely removed looks like to say that it hasn't been completely removed.

What has been lost in our conversation? Have I not understood you? If you meant more than what you said, then just say what you meant.
Heracloitus May 27, 2020 at 17:19 #416673
Quoting Harry Hindu
To say that it can't be completely eliminated would imply that we know what ambiguity being completely removed looks like to say that it hasn't been completely removed.


The fact that you can even play these language games displays the inherant ambiguity
Harry Hindu May 28, 2020 at 12:48 #416933
Reply to emancipate I don't play language games. That is Banno's forte.

Is it a language game? If it were then there was no ambiguity, was there, as you correctly interpreted my use of words as a game.

However it isn't, so while this shows that you might be right in language being ambiguous, it shows that you are wrong in that what I said was intended to be a language game.

Now, why don't we see if we can completely eliminate the ambiguity by you asking questions about what I said so that I can clarify what I said so that it will be less ambiguous for you, as you are the only person that I am aware of that claimed what I said was a language game. But you don't seem to want to completely eliminate ambiguity, you'd rather assert something that isn't true - that I am playing language games. So, it seems possible that ambiguity can be eliminated, but both parties need to want that.
Harry Hindu May 28, 2020 at 13:43 #416952
Reply to Frank Pray The problem is that people are confusing their goals.

Take this as an example:Quoting Harry Hindu
If I wrote a program that only showed a profit for a company because I wanted to spare the CEO's feelings, then that company wouldn't be a company for very long.

Is my goal to spare the feelings of the CEO or to display the true state of the company's budget on a computer screen? It seems that the program is written with one goal in mind - to spare the feelings of the CEO.

Should you spare your mother's feelings and lie to her, or tell her the truth that you want to join a rock band instead of becoming a doctor? Once you decide what path you want to take, you write a program to reach that goal. If you are confusing the two, then that is the problem.

You might say that the problem is deciding which path to take, and again I would say that you would use logic to determine the answer. You would ask yourself what other consequences there might be other than your mother flipping her lid, and those consequences become reasons for you to tell her or not to tell her.

So even in our everyday lives, we use logic. It's just that we don't apply all the rules and we end up making bad decisions because we didn't account for all the possible consequences of our actions, and therefore our reasoning wasn't complete before making the decision.