Breaking backwards compatibility - good or bad?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Gordon Burditt

    #61
    Re: Breaking backwards compatibility - good or bad?

    >> >> For God's sake WHY! What problem existed in the[color=blue][color=green][color=darkred]
    >> >> case-insensitive world that needed to be fixed?[/color][/color][/color]

    From my point of view, the case-sensitive world existed
    first.
    [color=blue][color=green][color=darkred]
    >> > Ask Dennis Ritchie.[/color]
    >>
    >> No, I'm asking you. What problem existed in the case-insensitive world
    >> that could ONLY be solved by introducing case-sensitivity?[/color][/color]

    What problem existed in the case-sensitive world that could only be
    solved by introducing case-insensitivity?
    [color=blue]
    >I don't know, and don't really care. It's a pretty pointless
    >discussion. Languages that are case sensitive are not going to change
    >because a minority of programmers dislikes that feature.[/color]

    Ok, here's one problem that case-insensitivity has that case-sensitivity
    doesn't: determine whether or not two characters are the same
    (except possibly for case) for all characters in ISO 10646, on a
    machine with a 64k address space. Do all countries even AGREE on
    what character codes correspond to 'a' except for case? It would
    be VERY BAD for two variable names to represent the same variable
    in some countries and not in others. How often will it be necessary
    for this software to be updated? (Of course, C wimps out on this
    by not allowing most of those characters in variable names anyway.)

    Gordon L. Burditt

    Comment

    • Chung Leong

      #62
      Re: Breaking backwards compatibility - good or bad?

      Oli Filth wrote:[color=blue]
      > I think the issue of case sensitivity/insensitivity is one where
      > everyone just has to agree to disagree. It's one of those issues that
      > everyone prefers what they're used to, and there's no fundamental
      > arguments either way, just like for indent style.[/color]

      Agreeing to disagree isn't a terribly good solution here, as it's a
      zero-sum game. Case-sensitivity precludes using identifiers in
      different cases to refer to the same thing, while case-insensitivity
      makes it impossible to use identifiers in different cases to refer to
      different things. Since I do neither, I don't feel strongly one way or
      the other. If we forgo the "4 out of 5 dentists prefer..." style of
      arguments though and look at the what each system allows, I think we
      can come to some kind of a conclusion.

      Case-sensitivity let you use identical tokens spelled in different
      cases to refer to different things. I don't think I have heard a single
      argument in favor of this practice, aside from an "oh, the Java folks
      are doing it." Capitalization is a device usually used for emphasis and
      conveying emotion. It's a poor choice for as a signifier, as it's not
      easy to see in print and cannot be communicated at all vocally.

      Case-insensitivity let you use identical tokens in different cases to
      refer to the same thing. Is there any practical use of this? As I said,
      capitalization is a device usually used for emphasis and conveying
      emotion. A programmer could potentially use it to draw attention to
      particular places in the code. For instance, I could see a convention
      whereby a variable name is capitalized when its value is being altered.
      Not a usage I'd promote, but intriguing nonetheless.

      Thus, I would say that a case-insensitive language is marginally more
      useful.

      Comment

      • Chung Leong

        #63
        Re: Breaking backwards compatibility - good or bad?

        Oli Filth wrote:[color=blue]
        > In the 21st Century, where programming is as much about team-based
        > development and code maintenance planning as it is about knocking out
        > lines of code, aesthetics *are* massively important, IMO. Code that's
        > more consistent and easier to read is easier to understand, and easier
        > to hand over to another team member.[/color]

        Put two fellows in a room thinking aesthetics are massively important
        and you will see how productive that is. Office politics is detrimental
        as it is. The last thing I would want to do is to inject more
        subjective issues into the mix. Tolerance for different approaches and
        the acceptance that different people think differently are what makes a
        productive team.

        As I said before, computer languages are not unlike human languages.
        Speak in a straight forward manner and to the point--you will be
        understood. It's not that hard. Pepper your speech with the latest
        buzzwards and citations then neither the computer or your colleagues
        will understand you.
        [color=blue]
        > It's not a matter of trying to "convert" people, no-one's going to go
        > "oh, I've seen the light, PHP is better than C++, what have I been doing
        > all these years". But a large user-base (and incoming users with skills
        > and techniques from a different language) will benefit the PHP community
        > and existing users. A more focused language with better OO support and
        > less inconsistency will benefit existing users doing new development.
        >
        > Umm, if you were trying to sell a product and there was an untapped
        > market, of course you would try to make future versions of your product
        > more attractive to them. Now obviously, PHP isn't being made for money,
        > but the developers probably have much the same goals as if they were
        > indeed selling it.[/color]

        Your logic doesn't quite follow there. If these programmers of yours,
        those who are laughing at PHP as we speak, if they don't see that it is
        better than what they're currently using, then where do you find these
        experienced warm bodies to swell the user-base?

        A community of programmers who is strongly attached to the
        characteristics of a particular language (so much so that they laugh at
        languages that don't have them) is a very tapped market I would say.
        [color=blue]
        > Personally, I can't see why hosts can't run both 4 and 5, and keep
        > everyone happy.[/color]

        Because you can't, at least not in Apache.
        [color=blue]
        > It's not necessarily about ignorance about individual issues. Being a
        > good programmer/software designer is about being able to take a top-down
        > view and work out, a priori, why certain approaches are better/more
        > applicable than others, rather than having to be told on a case by case
        > basis.[/color]

        Engineering as a discipline is largely based on a posteriori knowledge.

        [color=blue]
        > We all know that there are sound reasons behind most "good practice"
        > paradigms.[/color]

        Not really. There are genuine good practices that make your life
        easier, and there are persuasions by vain individuals trying to get you
        to do things their way.
        [color=blue]
        > If someone's new to OO, for instance[/color]

        And why is he "new to OO?" It is a mystery isn't it? Here we have an
        individual trying to write a script that does something. Out of blue he
        suddenly thinks that OO is the way--then proceed to get it completely
        wrong. What was going on in his head? Why did he choose OO when he
        doesn't actually know it? And what is compelling the poor guy to
        persist in this futile exercise? You would think, after trying
        unsuccessfully to loop through an object, he would wisen up and use a
        real array instead. Hmmm...

        Comment

        • tony@marston-home.demon.co.uk

          #64
          Re: Breaking backwards compatibility - good or bad?


          Jerry Stuckle wrote:[color=blue]
          > tony@marston-home.demon.co.u k wrote:[color=green][color=darkred]
          > >>>What I object to is being told that I MUST use one case or the other just to be
          > >>>*consisten t* with everyone else, especially when I disagree with their
          > >>>reason for choosing one case over the other in the first place.[/color]
          > >[color=darkred]
          > >>The majority of programmers disagree with you on this. Consistency
          > >>and conventions are preferred when working on a particular project or
          > >>platform -- it cuts down on errors and allows one to convey greater
          > >>meaning.[/color]
          > >
          > > I disagree. The majority of programmers that I have worked with on
          > > case-insensitive languages do NOT like being told that case is suddenly
          > > important, that you must use one in preference to the other. It is like
          > > saying that although the language allows you to do something either
          > > *this* way or *that* way from now on everybody MUST do it *that* way
          > > for no other reason than to be consistent.
          > >[/color]
          >
          > He didn't say "The majority of programmers that you have worked with on[color=green]
          > > case-insensitive languages".[/color]
          >
          > He said "The majority of programmers" - a much larger group. And I have
          > to agree with him.
          >
          > I've also taught C, C++ and Java to COBOL programmers. Sure, they had
          > trouble getting used to the case sensitivity. But most got used to it.
          > Only those who refused to change didn't.[/color]

          There is a big difference between *allowing* the programmer to choose
          which case to use, and *forcing* the programmer to use a particular
          case.

          What I find annoying is the potential for case-sensitive languages to
          allow the same variable or function name to exist AND BE DIFFERENT
          ENTITIES. If the language could automatically correct what I typed in
          to be in the same case (or mixture of case when camelcaps are used) as
          the entity I was referring to I would have less reason to object. But
          this is only possible with statically typed languages where everything
          has to be declared up front. That doesn't work with dynamically typed
          languages, therefore introducing case-sensitivity creates more problems
          than it causes and should be avoided.
          [color=blue]
          > But then if they had their way we'd probably still be programming with
          > switches on the front panel.[/color]

          At least the switches weren't case sensitive.

          Comment

          • tony@marston-home.demon.co.uk

            #65
            Re: Breaking backwards compatibility - good or bad?


            Jerry Stuckle wrote:[color=blue]
            > tony@marston-home.demon.co.u k wrote:[color=green]
            > > So why should I have to change MY programming habits just to match YOUR
            > > programming habits? Who put you in charge?
            > >[/color]
            >
            > You don't have to change your programming habits to match my programming
            > habits. You do, however, need to match the requirements of the language.[/color]

            The current requirement of PHP is that only variable names are
            case-sensitive. What I am doing is arguing against the proposal that
            function names also be made case-sensitive for no other reason than "to
            bring it into line with other languages".

            I will never, ever agree that case matters. It was only introduced in
            the first place because those stupid unix programmers didn't know any
            better. Bungling amateurs!

            Comment

            • tony@marston-home.demon.co.uk

              #66
              Re: Breaking backwards compatibility - good or bad?


              Wayne wrote:[color=blue]
              > On 22 Dec 2005 07:54:07 -0800, tony@marston-home.demon.co.u k wrote:
              >[color=green][color=darkred]
              > >> But I didn't say $FOO or $Foo. I said $foo and $foO![/color]
              > >
              > >Any programmer who deliberately mixes case like that is a candidate for
              > >the unemployment queue.[/color]
              >
              > So then, why should the programming language allow it?!?
              >[color=green]
              > >The majority of programmers that I have worked with on
              > >case-insensitive languages do NOT like being told that case is suddenly
              > >important, that you must use one in preference to the other.[/color]
              >
              > Ok... so let me get this straight. First you say that mixing cases
              > is bad and then you say that programmers don't like being told that
              > case is suddenly important. Those two things are contradictory.[/color]

              What I'm saying is that some teams like their variable names in all
              upper case, while others like them all lower case. Either is
              acceptable, but mixing case in the same variable name is frowned upon
              by both camps.
              [color=blue]
              > Either case isn't important and programmers can mix case at will or
              > case is importantant. Give me one good reason why the language should
              > not enforce solid industry practices and keep poor unknowning
              > programmers out of the unemployment queue?
              >[color=green]
              > >*this* way or *that* way from now on everybody MUST do it *that* way
              > >for no other reason than to be consistent.[/color]
              >
              > You just argued for that consistency in the first line of your post.
              >[color=green][color=darkred]
              > >> People have no
              > >> trouble will all caps or the first letter capitalized. What about the
              > >> difference between setsLower() and setSlower()? To a human reader
              > >> those have different meanings,[/color]
              > >
              > >Not to me, they don't.[/color]
              >
              > So lets say we're in a case-insensitive language and the function I
              > described above is listed in the program with both those cases. Tell
              > me, please, what does that function do?[/color]

              The function name is listed only once, but it can be invoked in either
              upper or lower case. Any language that deliberately allowed the same
              function name to do different things just because of a change in case
              would be rejected by most programmers. I am fighting AGAINST
              introducing case-sensitivity for the simple reason that it would allow
              that situation to happen.

              Comment

              • tony@marston-home.demon.co.uk

                #67
                Re: Breaking backwards compatibility - good or bad?


                Default User wrote:[color=blue]
                > tony@marston-home.demon.co.u k wrote:
                >[color=green][color=darkred]
                > > >> For God's sake WHY! What problem existed in the
                > > >> case-insensitive world that needed to be fixed?[/color]
                > >[color=darkred]
                > > > Ask Dennis Ritchie.[/color]
                > >
                > > No, I'm asking you. What problem existed in the case-insensitive world
                > > that could ONLY be solved by introducing case-sensitivity?[/color]
                >
                > I don't know, and don't really care. It's a pretty pointless
                > discussion. Languages that are case sensitive are not going to change
                > because a minority of programmers dislikes that feature.[/color]

                But why should a language which currently has case-insensitive function
                names be forced to change? Especially when this would allow the
                potentially confusing and dangerous situtation where the same function
                name could be declared more than once with different mixtures of case,
                thereby creating totally different functions. Are you saying this would
                be a good idea? It appears that you are.

                Comment

                • tony@marston-home.demon.co.uk

                  #68
                  Re: Breaking backwards compatibility - good or bad?


                  Wayne wrote:[color=blue]
                  > On 22 Dec 2005 08:08:53 -0800, tony@marston-home.demon.co.u k wrote:
                  >[color=green]
                  > >So you are forcing your personal preferences upon everyone else. That
                  > >sucks.[/color]
                  >
                  > No, I'd be making the language safer by disallowing stupid mistakes
                  > and inconsistency.[/color]

                  You would allow a situation where the SAME function name could be
                  declared in different places with different mixtures of case, thereby
                  creating DIFFERENT functions, and you call this SAFER? What planet do
                  you live on?

                  Comment

                  • tony@marston-home.demon.co.uk

                    #69
                    Re: Breaking backwards compatibility - good or bad?


                    Gordon Burditt wrote:[color=blue][color=green][color=darkred]
                    > >> >> For God's sake WHY! What problem existed in the
                    > >> >> case-insensitive world that needed to be fixed?[/color][/color]
                    >
                    > From my point of view, the case-sensitive world existed
                    > first.[/color]

                    I disagree. The first computers allowed nothing but upper case, but
                    when lower case became available neither the operating systems nor the
                    compilers cared which case was used because they were totally
                    insensitive. None of the mainframe, mini or micro computers that I have
                    ever worked on has been case-sensitive.
                    [color=blue][color=green][color=darkred]
                    > >> > Ask Dennis Ritchie.
                    > >>
                    > >> No, I'm asking you. What problem existed in the case-insensitive world
                    > >> that could ONLY be solved by introducing case-sensitivity?[/color][/color]
                    >
                    > What problem existed in the case-sensitive world that could only be
                    > solved by introducing case-insensitivity?[/color]

                    Your question is rubbish as computers were case-insensitive to begin
                    with. Case sensitivity only arose because of a stupid mistake by those
                    bungling unix programmers.
                    [color=blue][color=green]
                    > >I don't know, and don't really care. It's a pretty pointless
                    > >discussion. Languages that are case sensitive are not going to change
                    > >because a minority of programmers dislikes that feature.[/color]
                    >
                    > Ok, here's one problem that case-insensitivity has that case-sensitivity
                    > doesn't: determine whether or not two characters are the same
                    > (except possibly for case) for all characters in ISO 10646, on a
                    > machine with a 64k address space. Do all countries even AGREE on
                    > what character codes correspond to 'a' except for case? It would
                    > be VERY BAD for two variable names to represent the same variable
                    > in some countries and not in others. How often will it be necessary
                    > for this software to be updated? (Of course, C wimps out on this
                    > by not allowing most of those characters in variable names anyway.)[/color]

                    I am not talking about any character string that can be entered by any
                    user in any language, I am talking about what the language will allow
                    for function names and variable names. I think you will find this to be
                    more restrictive, therefore less of a problem when case-insensitive
                    matching is required.

                    Comment

                    • Kimmo Laine

                      #70
                      Re: Breaking backwards compatibility - good or bad?

                      <tony@marston-home.demon.co.u k> wrote in message
                      news:1135328348 .078891.300880@ g49g2000cwa.goo glegroups.com.. .[color=blue]
                      >
                      > Jerry Stuckle wrote:[color=green]
                      >> tony@marston-home.demon.co.u k wrote:[color=darkred]
                      >> >>>What I object to is being told that I MUST use one case or the other
                      >> >>>just to be
                      >> >>>*consisten t* with everyone else, especially when I disagree with their
                      >> >>>reason for choosing one case over the other in the first place.
                      >> >
                      >> >>The majority of programmers disagree with you on this. Consistency
                      >> >>and conventions are preferred when working on a particular project or
                      >> >>platform -- it cuts down on errors and allows one to convey greater
                      >> >>meaning.
                      >> >
                      >> > I disagree. The majority of programmers that I have worked with on
                      >> > case-insensitive languages do NOT like being told that case is suddenly
                      >> > important, that you must use one in preference to the other. It is like
                      >> > saying that although the language allows you to do something either
                      >> > *this* way or *that* way from now on everybody MUST do it *that* way
                      >> > for no other reason than to be consistent.
                      >> >[/color]
                      >>
                      >> He didn't say "The majority of programmers that you have worked with on[color=darkred]
                      >> > case-insensitive languages".[/color]
                      >>
                      >> He said "The majority of programmers" - a much larger group. And I have
                      >> to agree with him.
                      >>
                      >> I've also taught C, C++ and Java to COBOL programmers. Sure, they had
                      >> trouble getting used to the case sensitivity. But most got used to it.
                      >> Only those who refused to change didn't.[/color]
                      >
                      > There is a big difference between *allowing* the programmer to choose
                      > which case to use, and *forcing* the programmer to use a particular
                      > case.
                      >
                      > What I find annoying is the potential for case-sensitive languages to
                      > allow the same variable or function name to exist AND BE DIFFERENT
                      > ENTITIES.[/color]

                      But it's not the same variable or function name, it's different!! If I had
                      variables $foo and $FOO, the other would be 0x66 0x6F 0x6F as ascii codes,
                      the other 0x46 0x4F 0x4F. Those aren't the same.

                      In some spoken languages there are no upper and lower case, japanese for
                      instance. In such a language it really doesn't matter which case you want to
                      use, because there is no upper or lower.

                      If you've ever studied physics, you might've noticed how symbols are used in
                      equations all the time. In that case, small and uppercase is everything.
                      it's hell of a difference to write E=mc^2 than e=MC^2. The other is the
                      Einsteins most famous equation Energy = mass * speed of light to second
                      power, and the other is just non-sense, Napier's constant = mass of earth *
                      capacitance to second power, or something like that.

                      In physics upper- and lower case symbols have totally different meanings.
                      This is not directly applicable to php, but the world of physics with all
                      the symbols and equations is a language that is globally understood
                      regardless of it being case-sensitive. I don't expect to convince you that
                      php should be case-sensitive, all I'm saying is that physics as well as
                      mathematics sets an example of a case-sensitive language that really works.
                      And it's been that way for quite a long time now, the history of math goes
                      way back, thousands of years, before programming was even a concept.

                      --
                      "En ole paha ihminen, mutta omenat ovat elinkeinoni." -Perttu Sirviö
                      antaatulla.sika nautaa@gmail.co m.NOSPAM.invalid


                      Comment

                      • Jerry Stuckle

                        #71
                        Re: Breaking backwards compatibility - good or bad?

                        tony@marston-home.demon.co.u k wrote:[color=blue]
                        > Wayne wrote:
                        >[color=green]
                        >>On 22 Dec 2005 07:54:07 -0800, tony@marston-home.demon.co.u k wrote:
                        >>
                        >>[color=darkred]
                        >>>>But I didn't say $FOO or $Foo. I said $foo and $foO!
                        >>>
                        >>>Any programmer who deliberately mixes case like that is a candidate for
                        >>>the unemployment queue.[/color]
                        >>
                        >>So then, why should the programming language allow it?!?
                        >>
                        >>[color=darkred]
                        >>>The majority of programmers that I have worked with on
                        >>>case-insensitive languages do NOT like being told that case is suddenly
                        >>>important, that you must use one in preference to the other.[/color]
                        >>
                        >>Ok... so let me get this straight. First you say that mixing cases
                        >>is bad and then you say that programmers don't like being told that
                        >>case is suddenly important. Those two things are contradictory.[/color]
                        >
                        >
                        > What I'm saying is that some teams like their variable names in all
                        > upper case, while others like them all lower case. Either is
                        > acceptable, but mixing case in the same variable name is frowned upon
                        > by both camps.
                        >
                        >[color=green]
                        >>Either case isn't important and programmers can mix case at will or
                        >>case is importantant. Give me one good reason why the language should
                        >>not enforce solid industry practices and keep poor unknowning
                        >>programmers out of the unemployment queue?
                        >>
                        >>[color=darkred]
                        >>>*this* way or *that* way from now on everybody MUST do it *that* way
                        >>>for no other reason than to be consistent.[/color]
                        >>
                        >>You just argued for that consistency in the first line of your post.
                        >>
                        >>[color=darkred]
                        >>>> People have no
                        >>>>trouble will all caps or the first letter capitalized. What about the
                        >>>>differenc e between setsLower() and setSlower()? To a human reader
                        >>>>those have different meanings,
                        >>>
                        >>>Not to me, they don't.[/color]
                        >>
                        >>So lets say we're in a case-insensitive language and the function I
                        >>described above is listed in the program with both those cases. Tell
                        >>me, please, what does that function do?[/color]
                        >
                        >
                        > The function name is listed only once, but it can be invoked in either
                        > upper or lower case. Any language that deliberately allowed the same
                        > function name to do different things just because of a change in case
                        > would be rejected by most programmers. I am fighting AGAINST
                        > introducing case-sensitivity for the simple reason that it would allow
                        > that situation to happen.
                        >[/color]

                        Tony,

                        You're fighting a war you've already lost. As others have said - the
                        majority of programmers disagree with you. Most of the newer languages
                        are case sensitive. And this is not going to change.

                        I'd suggest you move on with your life. You are not going to win any
                        converts to your antiquated thoughts here.

                        --
                        =============== ===
                        Remove the "x" from my email address
                        Jerry Stuckle
                        JDS Computer Training Corp.
                        jstucklex@attgl obal.net
                        =============== ===

                        Comment

                        • Jerry Stuckle

                          #72
                          Re: Breaking backwards compatibility - good or bad?

                          tony@marston-home.demon.co.u k wrote:[color=blue]
                          > Jerry Stuckle wrote:
                          >[color=green]
                          >>tony@marsto n-home.demon.co.u k wrote:
                          >>[color=darkred]
                          >>>>>What I object to is being told that I MUST use one case or the other just to be
                          >>>>>*consisten t* with everyone else, especially when I disagree with their
                          >>>>>reason for choosing one case over the other in the first place.
                          >>>
                          >>>>The majority of programmers disagree with you on this. Consistency
                          >>>>and conventions are preferred when working on a particular project or
                          >>>>platform -- it cuts down on errors and allows one to convey greater
                          >>>>meaning.
                          >>>
                          >>>I disagree. The majority of programmers that I have worked with on
                          >>>case-insensitive languages do NOT like being told that case is suddenly
                          >>>important, that you must use one in preference to the other. It is like
                          >>>saying that although the language allows you to do something either
                          >>>*this* way or *that* way from now on everybody MUST do it *that* way
                          >>>for no other reason than to be consistent.
                          >>>[/color]
                          >>
                          >>He didn't say "The majority of programmers that you have worked with on[color=darkred]
                          >> > case-insensitive languages".[/color]
                          >>
                          >>He said "The majority of programmers" - a much larger group. And I have
                          >>to agree with him.
                          >>
                          >>I've also taught C, C++ and Java to COBOL programmers. Sure, they had
                          >>trouble getting used to the case sensitivity. But most got used to it.
                          >> Only those who refused to change didn't.[/color]
                          >
                          >
                          > There is a big difference between *allowing* the programmer to choose
                          > which case to use, and *forcing* the programmer to use a particular
                          > case.
                          >
                          > What I find annoying is the potential for case-sensitive languages to
                          > allow the same variable or function name to exist AND BE DIFFERENT
                          > ENTITIES. If the language could automatically correct what I typed in
                          > to be in the same case (or mixture of case when camelcaps are used) as
                          > the entity I was referring to I would have less reason to object. But
                          > this is only possible with statically typed languages where everything
                          > has to be declared up front. That doesn't work with dynamically typed
                          > languages, therefore introducing case-sensitivity creates more problems
                          > than it causes and should be avoided.
                          >
                          >[color=green]
                          >>But then if they had their way we'd probably still be programming with
                          >>switches on the front panel.[/color]
                          >
                          >
                          > At least the switches weren't case sensitive.
                          >[/color]

                          Nobody is forcing you to choose which case to use. You can use upper
                          case, lower case or a mixture of cases for any of your function or
                          variable names.

                          And sure, $Foo and $fOO can be different variables. So what? THAT'S
                          HOW IT WORKS!

                          As for the language "automatica lly correct what I typed in"... No way.
                          What if I WANT $Foo and $fOO to point to different variables? Note that
                          I am NOT saying this is "good programming" - but sure, it's possible.
                          And I might at some time need that.

                          What you don't see is you're trying to force the rest of the world to
                          conform to YOUR ideas of how programming should be. Get a life - it
                          ain't going to happen. You're outnumbered too much.


                          --
                          =============== ===
                          Remove the "x" from my email address
                          Jerry Stuckle
                          JDS Computer Training Corp.
                          jstucklex@attgl obal.net
                          =============== ===

                          Comment

                          • Oli Filth

                            #73
                            Re: Breaking backwards compatibility - good or bad?

                            Chung Leong said the following on 23/12/2005 03:27:[color=blue]
                            > Oli Filth wrote:
                            >[color=green]
                            >>I think the issue of case sensitivity/insensitivity is one where
                            >>everyone just has to agree to disagree. It's one of those issues that
                            >>everyone prefers what they're used to, and there's no fundamental
                            >>arguments either way, just like for indent style.[/color]
                            >
                            >
                            > Agreeing to disagree isn't a terribly good solution here, as it's a
                            > zero-sum game.[/color]

                            Much in the same way as it is for indentation style. In this case, there
                            are differences, but the arguments presented aren't very convincing
                            either way. It's not an argument that anyone's going to win, is it? So
                            it's almost a waste of time even talking about it.

                            (However, I will say that PHP as it stands is a bit retarded, having
                            case-sensitive variable names, but case-insensitive function names. How
                            does that help anyone??)

                            [color=blue]
                            > Case-sensitivity let you use identical tokens spelled in different
                            > cases to refer to different things. I don't think I have heard a single
                            > argument in favor of this practice, aside from an "oh, the Java folks
                            > are doing it." Capitalization is a device usually used for emphasis and
                            > conveying emotion. It's a poor choice for as a signifier, as it's not
                            > easy to see in print and cannot be communicated at all vocally.[/color]

                            Although I just said arguing about it is pointless, I will interject
                            here anyway!

                            Kimmo made a good point elsewhere that capitalisation is used all the
                            time in maths equations. A lot of what I do is maths-based, and base my
                            code variable names on the variable names in the equation,
                            capitalisation and all. e.g. if the maths is:

                            N
                            F[k] = Sum (f[n].g[k])
                            n=1

                            i.e. the sum from 1 to N of f[n].g[k], I'll do:

                            for (int n = 1; n <= N; ++n)
                            {
                            F[k] += f[n] * g[k];
                            }

                            i.e. using both n and N (and f and F) to refer to different things. If
                            one knows the maths that the code is implementing (if one didn't, then
                            there'd be no point trying to read/debug/maintain the code), then one
                            would know exactly what these variables meant.



                            --
                            Oli

                            Comment

                            • Jerry Stuckle

                              #74
                              Re: Breaking backwards compatibility - good or bad?

                              tony@marston-home.demon.co.u k wrote:[color=blue]
                              > Jerry Stuckle wrote:
                              >[color=green]
                              >>tony@marsto n-home.demon.co.u k wrote:
                              >>[color=darkred]
                              >>>So why should I have to change MY programming habits just to match YOUR
                              >>>programmin g habits? Who put you in charge?
                              >>>[/color]
                              >>
                              >>You don't have to change your programming habits to match my programming
                              >>habits. You do, however, need to match the requirements of the language.[/color]
                              >
                              >
                              > The current requirement of PHP is that only variable names are
                              > case-sensitive. What I am doing is arguing against the proposal that
                              > function names also be made case-sensitive for no other reason than "to
                              > bring it into line with other languages".
                              >
                              > I will never, ever agree that case matters. It was only introduced in
                              > the first place because those stupid unix programmers didn't know any
                              > better. Bungling amateurs!
                              >[/color]

                              Then create your own language.

                              And no, it was NOT "introduce in the first place because those stupid
                              unix programmers didn't know any better". They knew what they were
                              doing, and had a lot more experience than you did. They were also able
                              to create a language, compiler and operating system - all of which are
                              amongst the most popular around even today. "Bungling amateurs"? I
                              think not.

                              You go ahead and do the same. Then you can create a case-insensitive
                              language.

                              But don't expect it it to be widely accepted.

                              --
                              =============== ===
                              Remove the "x" from my email address
                              Jerry Stuckle
                              JDS Computer Training Corp.
                              jstucklex@attgl obal.net
                              =============== ===

                              Comment

                              • Wayne

                                #75
                                Re: Breaking backwards compatibility - good or bad?

                                On 23 Dec 2005 01:15:37 -0800, tony@marston-home.demon.co.u k wrote:
                                [color=blue]
                                >Wayne wrote:[color=green]
                                >> Ok... so let me get this straight. First you say that mixing cases
                                >> is bad and then you say that programmers don't like being told that
                                >> case is suddenly important. Those two things are contradictory.[/color]
                                >
                                >What I'm saying is that some teams like their variable names in all
                                >upper case, while others like them all lower case. Either is
                                >acceptable, but mixing case in the same variable name is frowned upon
                                >by both camps.[/color]

                                Ok. But that was my point. What's the point of having
                                case-insensitivity if mixing cases is frowned upon. Clearly you only
                                want to one case spelling of a function or variable to be valid.
                                [color=blue][color=green][color=darkred]
                                >> >> People have no
                                >> >> trouble will all caps or the first letter capitalized. What about the
                                >> >> difference between setsLower() and setSlower()? To a human reader
                                >> >> those have different meanings,
                                >> >
                                >> >Not to me, they don't.[/color]
                                >>
                                >> So lets say we're in a case-insensitive language and the function I
                                >> described above is listed in the program with both those cases. Tell
                                >> me, please, what does that function do?[/color]
                                >
                                >The function name is listed only once, but it can be invoked in either
                                >upper or lower case.[/color]

                                You didn't answer my question! -5 points for you!

                                Saying that the programmer must go find the original declared version
                                of the function to determine what it does, doesn't answer the
                                question.

                                Comment

                                Working...