Thread: knowledge programmers must have? where should I go from here?

  1. #31
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by whiteflags View Post
    Well, it's nice to know you've stopped listening. I think what MK27 and I are trying to say is that there can be several definitions of words, because to formally define a word is to pick a meaning for the purpose of discussion. You do that all the time. When you wrote this post,
    Did you see MK27's reply? It seemed more like it would start a flamewar if I replied to that instead of a discussion. That's why I stopped doing it.
    I have noticed we seem to use different words for different purpose, and that is the meaning of unambiguous. Nevertheless, I do think I explained what I used the words for. How I "defined" the words.
    I don't see a point discussing the definition of the words "definition" and "formal definition".

    The answer to all of these are yes. In fact, you wrote enough to let me know that you wanted to discuss the meaning of list as it pertains to computer science; which is as formal as any implementation. In fact I think your plan was to pick a language I might not know, to confuse me and control the conversation. Like MK27 said though, the name is not the thing. Definitions are concepts.
    Also consider this.
    Sure, all knowledge have some sure in some way or form. But the question is, how often do you need it?
    There might be a word you use everyday. There might be a word you use only once a year.
    This is kind of the same situation with knowing a formal definition, a "casual" definition and a concept's name.
    Sure, a formal definition might do you some good some day, in some way. But it is probably not as important as knowing the name of the concept which you would use far more often when speaking with other programmers and other people.

    I tend to separate things into three categories: name, casual definition and formal definition.
    The name is as its implies. But knowing only the name won't make you understand what something is, but will help you discuss that with other people.
    Casual definition is basically what I mean as knowing what something is and being able to describe it in your own words. This is absolutely critical. without it, you won't understand what something does.
    Formal definition is what I mean by knowing the exact way something is defined, written down some place or some where. Like how a set is described in a mathematics book. This is typically less important, however, since you will be able to use and understand something with its casual definition often without the need for the formal definition.
    Last edited by Elysia; 12-14-2011 at 02:50 AM.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  2. #32
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    *shrug* Isn't knowing something's name a lot like, "I've seen this word somewhere before, what is it?" I guess I do that too. If you mean something more than that, I think that only causes misunderstandings.

  3. #33
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    I'm sorry, Elysia, but computer science is not the only realm in which logic, objectivity, reason, and precision apply, and outside of that everything is just politics: "My opinion is my own and just as valid as yours" -- no, it isn't. It is WRONG. And being told you are wrong does not constitute a flamewar. Being told you are an idiot might, but I did not say that.

    Quote Originally Posted by Elysia View Post
    Casual definition is basically what I mean as knowing what something is and being able to describe it in your own words. This is absolutely critical. without it, you won't understand what something does.
    Well I'm glad we can acknowledge this finally! Is that your way of saying, "Okay, I was wrong!"?

    Formal definition is what I mean by knowing the exact way something is defined, written down some place or some where. Like how a set is described in a mathematics book. This is typically less important, however, since you will be able to use and understand something with its casual definition often without the need for the formal definition.
    The only way you could have exactly two distinct, discrete definitions -- a) "formal" and b) "casual" -- for all, most, or even many words would be if you just plain made them up as we go along, Elysia, and then pretended that they already existed as such. I do agree there are more concise and less concise, more in-depth definitions for anything, and for many things, within a specific technical context, there may be such thing as a "complete" or total definition, ie, one to which no more (relevant) information can be added (perhaps your earlier "formal definition" of list is such). I say, "within a specific technical context" (which would need to be defined), because eg, for the purpose of mathematics, the decimal numbers 1-1000 might have such a complete technical definition that mathematicians could all agree upon, but in a general purpose dictionary (if dictionaries included the numbers 1-1000), you might have a definition which is casual, but includes information not part of the supposedly complete formal technical information, such as, "666: in Judeo-Christian mythology, the number of the beast". That is not incorrect, but even if you knew the formal mathematical definition of 666, you might not know that, and hence, might be unable to understand the use of the label in some contexts.*

    So these different definitions reflect the depth of knowledge of the one who uses them and the context in which they are used. Eg, if you were a member of some primitive tribe who'd never seen modern civilization but knew a few things about it, a very casual definition of "airplane" which would permit you to converse with your other tribes people about the "gleaming machines which fly and carry people" might not be sufficient to make use of such a machine, or to pretend to be a pilot on an online forum for aircraft enthusiasts.

    The point is, a word/label/name alone is not any form of definition. Names for things can occur outside the context of a computer program, in which case they are "declared" without a type or any other information. Such a thing alone is what a name is, and it is not sufficient to impart meaning. If it were, we would not need to learn other (human) languages -- they would be immediately comprehensible just by hearing the words.

    So what is it that is missing from the word or name which makes the difference between incomprehensibility/meaninglessness (again: odradek?) and being able to make use of a word to communicate information in conversation?

    A DEFINITION.

    You can pretend that all you really need is the name, Elysia, the same way newbies here can pretend they are right when they are wrong, even to the extent of wasting time with elaborate explanations of how what they really mean is such and such and why such and such a conception (which will never work) really will or should work if blah blah blah. Or you could just admit you are wrong because:

    1) The word is not the thing.
    2) The word does not define.
    3) The definition is the meaning of the word.
    4) A word without a definition is meaningless.

    * 42 might be a better example, since I am not sure that the number of the beast, 666, is actually the same as "six hundred and sixty-six".
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  4. #34
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by MK27 View Post
    I'm sorry, Elysia, but computer science is not the only realm in which logic, objectivity, reason, and precision apply, and outside of that everything is just politics: "My opinion is my own and just as valid as yours" -- no, it isn't. It is WRONG. And being told you are wrong does not constitute a flamewar. Being told you are an idiot might, but I did not say that.

    Well I'm glad we can acknowledge this finally! Is that your way of saying, "Okay, I was wrong!"?
    I am wrong in many things. But you don't need to use some roundabout way of saying that.
    A simple, "no, that's not right," or "that is incorrect," is sufficient. Take a look at your post again. Then compare it to those sentences.

    You can pretend that all you really need is the name, Elysia, the same way newbies here can pretend they are right when they are wrong, even to the extent of wasting time with elaborate explanations of how what they really mean is such and such and why such and such a conception (which will never work) really will or should work if blah blah blah. Or you could just admit you are wrong because:
    Here is where you are wrong. I never said a name is enough. Really, this is more of a communication miss.
    To use what I said above, a casual definition is absolutely necessary. A name alone is never enough.
    But a formal definition is not as useful as a name.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  5. #35
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Elysia View Post
    I am wrong in many things. But you don't need to use some roundabout way of saying that.
    A simple, "no, that's not right," or "that is incorrect," is sufficient. Take a look at your post again. Then compare it to those sentences.
    I do not believe you are too dumb to understand that when someone explicitly contradicts you, they are, logically, saying you are wrong:

    Quote Originally Posted by mk27 #20
    I'm going to have to side with whiteflags about the relationship between definition and name.
    Quote Originally Posted by mk27 #23
    Yes, you do need a definition for a word in order to understand it. It doesn't matter where you get it or how "formal" it is as long as it is correct.
    etc. But I'll remember to try, "YOU ARE WRONG ELYSIA" in the future, if it means we can stop beating around the bush at that point.

    Quote Originally Posted by Elysia
    Here is where you are wrong. I never said a name is enough. Really, this is more of a communication miss.
    Is this your way of now saying, "I was never wrong, I just did not mean what I literally said."?

    Quote Originally Posted by Elysia
    post #10: Knowing the name of something (important) is not the same as knowing the definition of something (not so important). Separate those two concepts.
    And it just does not end:

    Quote Originally Posted by Elysia
    post #34: A name alone is never enough.
    But a formal definition is not as useful as a name.
    No, you are still wrong. A definition, formal or otherwise, is what makes a word useful, because a word without a definition does not have a use. And the more formal or in-depth a definition is, the more useful it is.

    I don't see you letting other people get away with bull........, and I respect you for that. So I realize I'm being a bit zealous, but I think it is important to refrain from introducing false dichotomies (and paving over real ones) by excusing sloppy language with sloppy thinking.

    Quote Originally Posted by Elysia #27
    I think the concepts, what I actually meant to say, now stands clear, even though my choice of words may not have been the best in some eyes.
    Does that mean, "I know I did not say it correctly, but that is okay, because what I meant is something different and you should understand that?" How about "I know I did not say it correctly. It would be foolish to believe knowing the name of something is more important than knowing the definition of what it is"? Without resorting to pop-up impromptu constructs like "formal" and "casual" definition. As if you could cover up being wrong by being even more wrong.

    I think you are still in school. If you are, it might be useful for you to take a 200 or 300 level language or philosophy (or even: philosophy of language) class where you have to write essays (like, with a thesis, footnotes, titles with a colon in them, etc) on non-fiction material. Semiotics, lit-crit, that kind of thing. Wittgenstein or something. You know, totally subjective liberal arts crap that's otherwise beneath you Honestly. $0.02
    Last edited by MK27; 12-14-2011 at 07:21 AM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  6. #36
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by MK27 View Post
    No, you are still wrong. A definition, formal or otherwise, is what makes a word useful, because a word without a definition does not have a use. And the more formal or in-depth a definition is, the more useful it is.
    Grrr. I did not and I am not saying a definition is useless, formal or not.
    I am saying that you most likely do not need to know the formal definition. Knowing the casual definition is a must.
    I am wrong, then so be it. I will accept that. But I will not accept you accusing me of being wrong on something I have never mentioned or intended.
    Apparently how I chose to write it has gotten some people (*cough* *cough*) to misunderstand my intent. That is a common occurrence, and I will happily admit that it may been poorly written.

    Does that mean, "I know I did not say it correctly, but that is okay, because what I meant is something different and you should understand that?" How about "I know I did not say it correctly. It would be foolish to believe knowing the name of something is more important than knowing the definition of what it is"? Without resorting to pop-up impromptu constructs like "formal" and "casual" definition. As if you could cover up being wrong by being even more wrong.
    It means what I am thinking. I am distinguishing how I would describe something to how it would be written (in, say, a course book).
    Casual definition = how I would explain it to others with words or by writing on a forum.
    Formal definition = how it would be written in a college text book.
    Last edited by Elysia; 12-14-2011 at 10:53 AM.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  7. #37
    Registered User
    Join Date
    Sep 2011
    Posts
    71
    Quote Originally Posted by MK27 View Post
    I do not believe you are too dumb to understand that when someone explicitly contradicts you, they are, logically, saying you are wrong:
    A statement can be true or false. if it's false it can be said that it's wrong. But a person, however, cannot be neither false nor wrong. (unless by false you mean some type of human-like clone and by wrong you mean defective in some way)

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Test your C knowledge
    By dxfoo in forum C Programming
    Replies: 20
    Last Post: 07-15-2010, 09:36 AM
  2. C++ knowledge
    By indranilmuk in forum C++ Programming
    Replies: 8
    Last Post: 08-21-2002, 11:08 AM
  3. This is for general knowledge !
    By Mane in forum A Brief History of Cprogramming.com
    Replies: 7
    Last Post: 04-02-2002, 08:53 AM
  4. need a bit knowledge...
    By xlord in forum C Programming
    Replies: 4
    Last Post: 03-31-2002, 05:16 AM
  5. Does C++ knowledge come into Win32 API?
    By Flucas in forum Windows Programming
    Replies: 10
    Last Post: 10-26-2001, 10:17 AM