Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. There's the successful direction and then there's the approach that Bjarne took with C++

There's the successful direction and then there's the approach that Bjarne took with C++

Scheduled Pinned Locked Moved The Lounge
c++swiftcomquestionlearning
30 Posts 12 Posters 3 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R Rama Krishna Vavilala

    So during lunch I was looking at the book: Masterminds of Programming[^]. It's a book which has interviews with the creators of different programming languages. I started by looking at Objective-C inventor Tom Love. He was asked, "Both Objective C and C++ started with C, but they took different approach? Which approach do you prefer now?". His reply was:- "There's the successful direction and then there's the approach that Bjarne took with C++". Also he thinks that the only reason for popularity of C++ was the AT&T brand name and that C++ is ugly and complex. I found that pretty funny. I have programmed in both the languages and I find Objective-C to be uglier than C++ in many respects. It is true that C++ is complex in some respects, but it is also true that Objective-C has complex elements too. As far as success is concerned beyond Apple no one else has chosen Objective-C anyways.

    P Offline
    P Offline
    PeterGuerilla
    wrote on last edited by
    #12

    C++ is ugly, complex and highly unreliable compared to earlier programming media. I've been at this since 1960 and, as the practice became more user (i.e. engineer) friendly, the "professional" programmers saw the handwriting on the wall. Our purpose, as program designers and developers, was to put ourselves out of business. The computer science community, however, chose to establish a continuing need for their services by morphing assembly language into a syntax-laden barrier between the user and the computer: C, then C++. Believe me, there were plenty of other, more utilitarian, alternatives available to FORTRAN and COBOL. To give the devil his due, Bjarne did make the world safe for professional programmers - and held back the development of computer applications by decades. Peter McLaughlin The Simulation and Modelling Workshop

    D J 2 Replies Last reply
    0
    • P PeterGuerilla

      C++ is ugly, complex and highly unreliable compared to earlier programming media. I've been at this since 1960 and, as the practice became more user (i.e. engineer) friendly, the "professional" programmers saw the handwriting on the wall. Our purpose, as program designers and developers, was to put ourselves out of business. The computer science community, however, chose to establish a continuing need for their services by morphing assembly language into a syntax-laden barrier between the user and the computer: C, then C++. Believe me, there were plenty of other, more utilitarian, alternatives available to FORTRAN and COBOL. To give the devil his due, Bjarne did make the world safe for professional programmers - and held back the development of computer applications by decades. Peter McLaughlin The Simulation and Modelling Workshop

      D Offline
      D Offline
      DerekJChandler
      wrote on last edited by
      #13

      I couldn't disagree more! C++ is an elegant language that is only becoming more elegant with the improvements introduced in TR1/C++0x and the Boost libraries. I learnt C++ way back in 1993 and have been an addict ever since. OK, it may take a higher intellect to understand the subtleties, but if you do there is no language more powerful than C++. To be honest, I am sure there were many more useful languages (but not more powerful - except for assembler) in the 60s and 70s, but most of which got killed off by the DoD's standardisation process and Ada - not C/C++/Java/C#. Nevertheless, I've programmed seriously in three main languages - Pascal, C and C++ - and C++ is the most flexible and powerful (and most complex!) of them all. Add in Boost, Std Lib & STL, and all the enhancements of TR1/C++0x and it is unstoppable! And what killed Borland? Probably Delphi/VCL creator Anders Hejlsberg being poached by M$ to write C#/.Net. That's innovation for you - if don't have it, buy it, steal it or copy it! Derek

      P 1 Reply Last reply
      0
      • M M Towler

        If you want to understand why C++ is how it is, read Bjarne's excellent book "the design and evolution of c++". It explains why all the warts are there and why the language would fail without it. Put simply the approach taken gave people something they could use now, and with all their old code. Other languages are often better but require recoding everything and retraining programmers. Remember these were the days before the internet and cargo-cult programming - to learn something new you had to get a real paper book, read it and work things out for yourself :) I laughed at the suggestion that MSVC made C++ successful. MFC has always been a C framework with only a slight hint of C++ thrown in, no OO design worth mentioning and no template support. At the time it was suggested this was done so that MS didn't have to retrain all their C programmers in order to produce MFC - which probably also helped as it meant the same for the application programmers who would have also been much more familiar with C. Borland had templates years ahead of MSVC and a proper OO windowing toolkit. It was mostly killed off by anti-competitive practices when windows 95 was released. Specifically certain widgets not really being documented well enough for anyone else to make use of them, or relying on undocumented features so others could not replicate. So if you wanted something up to date and working with the new OS then it had to be MFC. It is worth bearing in mind that C++ of the mid nineties bears little resemblance to that used nowadays. I still have a copy of the second edition of "the C++ programming language" and it is on another planet.

        P Offline
        P Offline
        Pierre Leclercq
        wrote on last edited by
        #14

        M Towler wrote:

        cargo-cult programming

        :)

        M Towler wrote:

        MFC has always been a C framework with only a slight hint of C++ thrown in, no OO design worth mentioning and no template support

        yep, it took a long time for MS to change their mindset, moving away from C.

        M Towler wrote:

        Specifically certain widgets not really being documented well enough for anyone else to make use of them, or relying on undocumented features so others could not replicate

        There used to be a lot of talks about undocumented features, and people even made money writing books on this topic. On the other hand, I question the fact it really caused problems to competitors. For example, speaking about UI, nothing prevented competitors to develop their own frameworks and their own controls. Actually, I think that's what Borland did (with those typical Borland bitmaps). So I don't buy that idea MS killed competitors with undocumented features, this would be equivalent to say engineers outside MS were enable to develop by themselves. :omg:

        You can't turn lead into gold, unless you've built yourself a nuclear plant.

        J K 2 Replies Last reply
        0
        • D DerekJChandler

          I couldn't disagree more! C++ is an elegant language that is only becoming more elegant with the improvements introduced in TR1/C++0x and the Boost libraries. I learnt C++ way back in 1993 and have been an addict ever since. OK, it may take a higher intellect to understand the subtleties, but if you do there is no language more powerful than C++. To be honest, I am sure there were many more useful languages (but not more powerful - except for assembler) in the 60s and 70s, but most of which got killed off by the DoD's standardisation process and Ada - not C/C++/Java/C#. Nevertheless, I've programmed seriously in three main languages - Pascal, C and C++ - and C++ is the most flexible and powerful (and most complex!) of them all. Add in Boost, Std Lib & STL, and all the enhancements of TR1/C++0x and it is unstoppable! And what killed Borland? Probably Delphi/VCL creator Anders Hejlsberg being poached by M$ to write C#/.Net. That's innovation for you - if don't have it, buy it, steal it or copy it! Derek

          P Offline
          P Offline
          Pierre Leclercq
          wrote on last edited by
          #15

          I agree C++ is a good language, but IMO you are overcharging the DOD. They did an excellent standardization job. And this did not kill much. When the DOD started thinking about what would become Ada, they audited their departments and realized they had projects written in about 100 different languages, and programmers from one department to the next just were not sharing. So in short, this was a tower of Babel. Ada is mostly used in areas where C++ (or similar languages) is not. They cover different needs. Ada is not an "evolved" language, it is a "planned" language. Similar and as good in quality as Eiffel.

          DerekJChandler wrote:

          And what killed Borland? Probably Delphi/VCL creator Anders Hejlsberg being poached by M$ to write C#/.Net. That's innovation for you - if don't have it, buy it, steal it or copy it!

          Come on!! Borland was dead before Hejlsberg was hired by MS.

          You can't turn lead into gold, unless you've built yourself a nuclear plant.

          1 Reply Last reply
          0
          • R Rama Krishna Vavilala

            So during lunch I was looking at the book: Masterminds of Programming[^]. It's a book which has interviews with the creators of different programming languages. I started by looking at Objective-C inventor Tom Love. He was asked, "Both Objective C and C++ started with C, but they took different approach? Which approach do you prefer now?". His reply was:- "There's the successful direction and then there's the approach that Bjarne took with C++". Also he thinks that the only reason for popularity of C++ was the AT&T brand name and that C++ is ugly and complex. I found that pretty funny. I have programmed in both the languages and I find Objective-C to be uglier than C++ in many respects. It is true that C++ is complex in some respects, but it is also true that Objective-C has complex elements too. As far as success is concerned beyond Apple no one else has chosen Objective-C anyways.

            J Offline
            J Offline
            jschell
            wrote on last edited by
            #16

            Rama Krishna Vavilala wrote:

            It's a book which has interviews with the creators of different programming languages. I started by looking at Objective-C inventor Tom Love. He was asked, "Both Objective C and C++ started with C, but they took different approach? Which approach do you prefer now?". His reply was:- "There's the successful direction and then there's the approach that Bjarne took with C++". Also he thinks that the only reason for popularity of C++ was the AT&T brand name and that C++ is ugly and complex.

            Sounds extremely naive to me. There are many more failed attempts at new technology compared to those that succeed. And very few that are wildly successful. By definition one would hope that inventors of a particular technology consider that it has utility. But for failures there are realistically only two causes. 1. It has no utility for the majority of the market. 2. It was poorly sold by the holder of the technology. Neither of those have anything to do with external forces. And that is even more apt in this case since there have been other successful OO languages.

            1 Reply Last reply
            0
            • P Pierre Leclercq

              Before Visual C++, there was the semi-graphic dos based Turbo C++, which was very good. A big part of the success of Visual C++/MFC against Borland C++/OWL, was MS adhered closely to C++ (ie message maps against custom c++ extension). Funny how the adherence to a de facto standard helped them win the challenge. But things came out fine eventually, as Mr Hejlsberg joined MS and designed C#. So I was a big C++ fan before Visual C++, but I jumped on it when v1 was released, and am glad MS decided to invest in it.

              You can't turn lead into gold, unless you've built yourself a nuclear plant.

              J Offline
              J Offline
              jschell
              wrote on last edited by
              #17

              Pierre Leclercq wrote:

              Before Visual C++, there was the semi-graphic dos based Turbo C++, which was very good. A big part of the success of Visual C++/MFC against Borland C++/OWL, was MS adhered closely to C++ (ie message maps against custom c++ extension).

              Most of the IDE battle was over before there was a C++ standard of any sort. And when there was a C++ standard Microsoft was far from being a leader in correctly implementing it. Ansi C++ was officially released in 1998 and at that approximate period Borland was in serious financial difficulties and actually changed their name. As an example I know that it took MS two major version releases after the standard was issued to implement overriding the new operator even though that was something approved by the committee long before the standard was finalized. It took them longer still to get templates right (in fairness a lot of compilers had a problem with that.) And prior to the standarization of the language the most significant advantage Microsoft had was that with each new release of the OS Borland had to upgrade its own libraries post release because Microsoft would not release the API. Finally there is nothing it C++ standards that relates to "message maps" but perhaps that is a terminology difference.

              D P 2 Replies Last reply
              0
              • P PeterGuerilla

                C++ is ugly, complex and highly unreliable compared to earlier programming media. I've been at this since 1960 and, as the practice became more user (i.e. engineer) friendly, the "professional" programmers saw the handwriting on the wall. Our purpose, as program designers and developers, was to put ourselves out of business. The computer science community, however, chose to establish a continuing need for their services by morphing assembly language into a syntax-laden barrier between the user and the computer: C, then C++. Believe me, there were plenty of other, more utilitarian, alternatives available to FORTRAN and COBOL. To give the devil his due, Bjarne did make the world safe for professional programmers - and held back the development of computer applications by decades. Peter McLaughlin The Simulation and Modelling Workshop

                J Offline
                J Offline
                jschell
                wrote on last edited by
                #18

                PeterGuerilla wrote:

                C++ is ugly, complex and highly unreliable compared to earlier programming media. I've been at this since 1960 and, as the practice became more user (i.e. engineer) friendly, the "professional" programmers saw the handwriting on the wall. Our purpose, as program designers and developers, was to put ourselves out of business. The computer science community, however, chose to establish a continuing need for their services by morphing assembly language into a syntax-laden barrier between the user and the computer: C, then C++. Believe me, there were plenty of other, more utilitarian, alternatives available to FORTRAN and COBOL. To give the devil his due, Bjarne did make the world safe for professional programmers - and held back the development of computer applications by decades.

                Interesting opinion. Certainly not one that I agree with. Certainly not one that I have seen any evidence for. I have certainly seen a number of technologies, recent ones and older, claim that they would remove the need for programmers. Some have had a very limited success in very limited tasks. Most simply fail almost immediately.

                K 1 Reply Last reply
                0
                • P Pierre Leclercq

                  M Towler wrote:

                  cargo-cult programming

                  :)

                  M Towler wrote:

                  MFC has always been a C framework with only a slight hint of C++ thrown in, no OO design worth mentioning and no template support

                  yep, it took a long time for MS to change their mindset, moving away from C.

                  M Towler wrote:

                  Specifically certain widgets not really being documented well enough for anyone else to make use of them, or relying on undocumented features so others could not replicate

                  There used to be a lot of talks about undocumented features, and people even made money writing books on this topic. On the other hand, I question the fact it really caused problems to competitors. For example, speaking about UI, nothing prevented competitors to develop their own frameworks and their own controls. Actually, I think that's what Borland did (with those typical Borland bitmaps). So I don't buy that idea MS killed competitors with undocumented features, this would be equivalent to say engineers outside MS were enable to develop by themselves. :omg:

                  You can't turn lead into gold, unless you've built yourself a nuclear plant.

                  J Offline
                  J Offline
                  jschell
                  wrote on last edited by
                  #19

                  Pierre Leclercq wrote:

                  There used to be a lot of talks about undocumented features, and people even made money writing books on this topic. On the other hand, I question the fact it really caused problems to competitors.

                  Certainly disabling competing DOSes in early versions caused problems. http://en.wikipedia.org/wiki/AARD_code[^]

                  P 1 Reply Last reply
                  0
                  • R Rama Krishna Vavilala

                    So during lunch I was looking at the book: Masterminds of Programming[^]. It's a book which has interviews with the creators of different programming languages. I started by looking at Objective-C inventor Tom Love. He was asked, "Both Objective C and C++ started with C, but they took different approach? Which approach do you prefer now?". His reply was:- "There's the successful direction and then there's the approach that Bjarne took with C++". Also he thinks that the only reason for popularity of C++ was the AT&T brand name and that C++ is ugly and complex. I found that pretty funny. I have programmed in both the languages and I find Objective-C to be uglier than C++ in many respects. It is true that C++ is complex in some respects, but it is also true that Objective-C has complex elements too. As far as success is concerned beyond Apple no one else has chosen Objective-C anyways.

                    P Offline
                    P Offline
                    PICguy
                    wrote on last edited by
                    #20

                    Near the top of a C++ module say const int zzz = 3; Then zzz acts just like a non-global (int)3. The compiler may (and should) attempt to avoid allocating a storage location for zzz. This is better than... #define zzz 3 ...because scope rules do not apply to the #define form. However, in an object definition const int zzz = 3; is illegal. I understand the workaround which forces every object instance to have storage for zzz. I also understand how an unchangeable data item might need to be different in each instance of an object. There is also some related Mickey Mouse™ stuff related to enum and constants, which I have not thought about for a long time. Please forgive any C/C++ syntax errors. I have been working with $.50 processors lately. C++ and processors with less than 30 bytes of RAM go together about as well as pregnancy and poll vaulting.

                    1 Reply Last reply
                    0
                    • J jschell

                      Pierre Leclercq wrote:

                      Before Visual C++, there was the semi-graphic dos based Turbo C++, which was very good. A big part of the success of Visual C++/MFC against Borland C++/OWL, was MS adhered closely to C++ (ie message maps against custom c++ extension).

                      Most of the IDE battle was over before there was a C++ standard of any sort. And when there was a C++ standard Microsoft was far from being a leader in correctly implementing it. Ansi C++ was officially released in 1998 and at that approximate period Borland was in serious financial difficulties and actually changed their name. As an example I know that it took MS two major version releases after the standard was issued to implement overriding the new operator even though that was something approved by the committee long before the standard was finalized. It took them longer still to get templates right (in fairness a lot of compilers had a problem with that.) And prior to the standarization of the language the most significant advantage Microsoft had was that with each new release of the OS Borland had to upgrade its own libraries post release because Microsoft would not release the API. Finally there is nothing it C++ standards that relates to "message maps" but perhaps that is a terminology difference.

                      D Offline
                      D Offline
                      David Snow
                      wrote on last edited by
                      #21

                      What I recall about the mid 90's is that Borland suddenly and inexplicable fired Philippe Kahn, and then self destructed. Did anyone ever find out what was behind the rift betreen Kahn and the BI board?

                      1 Reply Last reply
                      0
                      • J jschell

                        Pierre Leclercq wrote:

                        Before Visual C++, there was the semi-graphic dos based Turbo C++, which was very good. A big part of the success of Visual C++/MFC against Borland C++/OWL, was MS adhered closely to C++ (ie message maps against custom c++ extension).

                        Most of the IDE battle was over before there was a C++ standard of any sort. And when there was a C++ standard Microsoft was far from being a leader in correctly implementing it. Ansi C++ was officially released in 1998 and at that approximate period Borland was in serious financial difficulties and actually changed their name. As an example I know that it took MS two major version releases after the standard was issued to implement overriding the new operator even though that was something approved by the committee long before the standard was finalized. It took them longer still to get templates right (in fairness a lot of compilers had a problem with that.) And prior to the standarization of the language the most significant advantage Microsoft had was that with each new release of the OS Borland had to upgrade its own libraries post release because Microsoft would not release the API. Finally there is nothing it C++ standards that relates to "message maps" but perhaps that is a terminology difference.

                        P Offline
                        P Offline
                        Pierre Leclercq
                        wrote on last edited by
                        #22

                        jschell wrote:

                        Finally there is nothing it C++ standards that relates to "message maps" but perhaps that is a terminology difference.

                        By reading your post I have the feeling you are not aware of the mechanisms Borland introduced in the OWLs, to attach a handler to a windows message. This was a syntax that looked like this:

                        void MyClass::MyTimerHandler(/* Some parameters */) = [WM_TIMER]
                        {
                        /* Some code to handle the WM_TIMER message*/
                        }

                        Obviously this is NOT standard C++. While the message maps introduced in the MFC are a set of macros that expand to regular C++. A C++ committee disaproved Borland's choice, and this gave MS an edge. So it is interesting to sort things out when it comes to MS's ways of doing business. Again saying MS won all of those wars because they had undocumented apis is equivalent to say engineers from competing companies were morons! This is obviously a false claim given MS eventually hired a lot of them. So now the dust has settled, Netscape, Borland and others are gone, it is worthless to keep on maintaining those overly simplistic claims.

                        You can't turn lead into gold, unless you've built yourself a nuclear plant.

                        J 1 Reply Last reply
                        0
                        • J jschell

                          Pierre Leclercq wrote:

                          There used to be a lot of talks about undocumented features, and people even made money writing books on this topic. On the other hand, I question the fact it really caused problems to competitors.

                          Certainly disabling competing DOSes in early versions caused problems. http://en.wikipedia.org/wiki/AARD_code[^]

                          P Offline
                          P Offline
                          Pierre Leclercq
                          wrote on last edited by
                          #23

                          jschell wrote:

                          http://en.wikipedia.org/wiki/AARD\_code\[^\]

                          That article from wikipedia states the AARD code was enabled in the beta of Windows 3.1, and DISABLED in the final release of Windows 3.1. So this should not have made much difference to help MS. Also, back in 1992, when Windows 3.1 was released DR-Dos was already way behind MS-DOS, and the shift away from command line interfaces was already well started. (I mean the trend was well visible).

                          You can't turn lead into gold, unless you've built yourself a nuclear plant.

                          J 1 Reply Last reply
                          0
                          • R Rama Krishna Vavilala

                            So during lunch I was looking at the book: Masterminds of Programming[^]. It's a book which has interviews with the creators of different programming languages. I started by looking at Objective-C inventor Tom Love. He was asked, "Both Objective C and C++ started with C, but they took different approach? Which approach do you prefer now?". His reply was:- "There's the successful direction and then there's the approach that Bjarne took with C++". Also he thinks that the only reason for popularity of C++ was the AT&T brand name and that C++ is ugly and complex. I found that pretty funny. I have programmed in both the languages and I find Objective-C to be uglier than C++ in many respects. It is true that C++ is complex in some respects, but it is also true that Objective-C has complex elements too. As far as success is concerned beyond Apple no one else has chosen Objective-C anyways.

                            K Offline
                            K Offline
                            Kevin McFarlane
                            wrote on last edited by
                            #24

                            Can't say I know very much about Objective C. However, a few weeks ago I found what seemed to be a very good Windows tutorial but just couldn't get the suggested Windows distribution working at all. I quickly lost interest.

                            Kevin

                            1 Reply Last reply
                            0
                            • S Shog9 0

                              Funny... If there's one thing i took away from TurboC++ and OWL, it was that i didn't much care for C++. Then again, i got the same impression from using MFC.  It wasn't until i started using STL heavily that i found something to like in the language or its libraries...

                              K Offline
                              K Offline
                              Kevin McFarlane
                              wrote on last edited by
                              #25

                              Shog9 wrote:

                              It wasn't until i started using STL heavily that i found something to like in the language or its libraries...

                              I've worked at places where they say things like "we don't use STL here." This was as recently as 2005. :laugh: In fact, a colleague of mine who had a contract interview at MS Research a while back was giving me tips for the same interview (the job was filled before I got as far as the interview though) told me that they don't use STL either, and that was this year! That surprised me. :omg:

                              Kevin

                              1 Reply Last reply
                              0
                              • M M Towler

                                If you want to understand why C++ is how it is, read Bjarne's excellent book "the design and evolution of c++". It explains why all the warts are there and why the language would fail without it. Put simply the approach taken gave people something they could use now, and with all their old code. Other languages are often better but require recoding everything and retraining programmers. Remember these were the days before the internet and cargo-cult programming - to learn something new you had to get a real paper book, read it and work things out for yourself :) I laughed at the suggestion that MSVC made C++ successful. MFC has always been a C framework with only a slight hint of C++ thrown in, no OO design worth mentioning and no template support. At the time it was suggested this was done so that MS didn't have to retrain all their C programmers in order to produce MFC - which probably also helped as it meant the same for the application programmers who would have also been much more familiar with C. Borland had templates years ahead of MSVC and a proper OO windowing toolkit. It was mostly killed off by anti-competitive practices when windows 95 was released. Specifically certain widgets not really being documented well enough for anyone else to make use of them, or relying on undocumented features so others could not replicate. So if you wanted something up to date and working with the new OS then it had to be MFC. It is worth bearing in mind that C++ of the mid nineties bears little resemblance to that used nowadays. I still have a copy of the second edition of "the C++ programming language" and it is on another planet.

                                K Offline
                                K Offline
                                Kevin McFarlane
                                wrote on last edited by
                                #26

                                M Towler wrote:

                                I laughed at the suggestion that MSVC made C++ successful. MFC has always been a C framework with only a slight hint of C++ thrown in

                                Perhaps, but it may nevertheless have put C++ on the map, i.e., into people's consciousness.

                                M Towler wrote:

                                MFC has always been a C framework with only a slight hint of C++ thrown in, no OO design worth mentioning and no template support. At the time it was suggested this was done so that MS didn't have to retrain all their C programmers in order to produce MFC

                                Yes, I read that they had supposedly created a better OO design but it was rejected in favour of MFC.

                                Kevin

                                1 Reply Last reply
                                0
                                • P Pierre Leclercq

                                  M Towler wrote:

                                  cargo-cult programming

                                  :)

                                  M Towler wrote:

                                  MFC has always been a C framework with only a slight hint of C++ thrown in, no OO design worth mentioning and no template support

                                  yep, it took a long time for MS to change their mindset, moving away from C.

                                  M Towler wrote:

                                  Specifically certain widgets not really being documented well enough for anyone else to make use of them, or relying on undocumented features so others could not replicate

                                  There used to be a lot of talks about undocumented features, and people even made money writing books on this topic. On the other hand, I question the fact it really caused problems to competitors. For example, speaking about UI, nothing prevented competitors to develop their own frameworks and their own controls. Actually, I think that's what Borland did (with those typical Borland bitmaps). So I don't buy that idea MS killed competitors with undocumented features, this would be equivalent to say engineers outside MS were enable to develop by themselves. :omg:

                                  You can't turn lead into gold, unless you've built yourself a nuclear plant.

                                  K Offline
                                  K Offline
                                  Kevin McFarlane
                                  wrote on last edited by
                                  #27

                                  Pierre Leclercq wrote:

                                  There used to be a lot of talks about undocumented features, and people even made money writing books on this topic. On the other hand, I question the fact it really caused problems to competitors.

                                  I think it was just assumed that MS was able to produce more successful and/or better apps. because they made use of these undocumented features. However, over the years, I've noticed many innovative features in Windows applications that Microsoft themselves only copied later despite their owning the API. So even if there are undocumented features that MS use the fact is that the API is rich enough to provide innovation despite this.

                                  Kevin

                                  1 Reply Last reply
                                  0
                                  • J jschell

                                    PeterGuerilla wrote:

                                    C++ is ugly, complex and highly unreliable compared to earlier programming media. I've been at this since 1960 and, as the practice became more user (i.e. engineer) friendly, the "professional" programmers saw the handwriting on the wall. Our purpose, as program designers and developers, was to put ourselves out of business. The computer science community, however, chose to establish a continuing need for their services by morphing assembly language into a syntax-laden barrier between the user and the computer: C, then C++. Believe me, there were plenty of other, more utilitarian, alternatives available to FORTRAN and COBOL. To give the devil his due, Bjarne did make the world safe for professional programmers - and held back the development of computer applications by decades.

                                    Interesting opinion. Certainly not one that I agree with. Certainly not one that I have seen any evidence for. I have certainly seen a number of technologies, recent ones and older, claim that they would remove the need for programmers. Some have had a very limited success in very limited tasks. Most simply fail almost immediately.

                                    K Offline
                                    K Offline
                                    Kevin McFarlane
                                    wrote on last edited by
                                    #28

                                    I haven't done any C++ for a few years and didn't do it to a "super advanced" level. I would say it is to some extent ugly and complex. However, when taking into account the problems it is trying to address, it probably has to be the way it is. C++ has to be there to tackle the problems where: "if you can't do it in anything else, you can do it in C++."

                                    Kevin

                                    1 Reply Last reply
                                    0
                                    • P Pierre Leclercq

                                      jschell wrote:

                                      http://en.wikipedia.org/wiki/AARD\_code\[^\]

                                      That article from wikipedia states the AARD code was enabled in the beta of Windows 3.1, and DISABLED in the final release of Windows 3.1. So this should not have made much difference to help MS. Also, back in 1992, when Windows 3.1 was released DR-Dos was already way behind MS-DOS, and the shift away from command line interfaces was already well started. (I mean the trend was well visible).

                                      You can't turn lead into gold, unless you've built yourself a nuclear plant.

                                      J Offline
                                      J Offline
                                      jschell
                                      wrote on last edited by
                                      #29

                                      Pierre Leclercq wrote:

                                      That article from wikipedia states the AARD code was enabled in the beta of Windows 3.1, and DISABLED in the final release of Windows 3.1. So this should not have made much difference to help MS. Also, back in 1992, when Windows 3.1 was released DR-Dos was already way behind MS-DOS, and the shift away from command line interfaces was already well started. (I mean the trend was well visible).

                                      Not quite sure how any of that is relevant. The intent of MS was to disable DrDOS, as indicated by the memos. The reason it was probably disabled in the release because it was found and publicized before the release. Nor it is relevant that DrDos had fewer sales but rather that MS considered it a threat and was attempting to disrupt it further.

                                      1 Reply Last reply
                                      0
                                      • P Pierre Leclercq

                                        jschell wrote:

                                        Finally there is nothing it C++ standards that relates to "message maps" but perhaps that is a terminology difference.

                                        By reading your post I have the feeling you are not aware of the mechanisms Borland introduced in the OWLs, to attach a handler to a windows message. This was a syntax that looked like this:

                                        void MyClass::MyTimerHandler(/* Some parameters */) = [WM_TIMER]
                                        {
                                        /* Some code to handle the WM_TIMER message*/
                                        }

                                        Obviously this is NOT standard C++. While the message maps introduced in the MFC are a set of macros that expand to regular C++. A C++ committee disaproved Borland's choice, and this gave MS an edge. So it is interesting to sort things out when it comes to MS's ways of doing business. Again saying MS won all of those wars because they had undocumented apis is equivalent to say engineers from competing companies were morons! This is obviously a false claim given MS eventually hired a lot of them. So now the dust has settled, Netscape, Borland and others are gone, it is worthless to keep on maintaining those overly simplistic claims.

                                        You can't turn lead into gold, unless you've built yourself a nuclear plant.

                                        J Offline
                                        J Offline
                                        jschell
                                        wrote on last edited by
                                        #30

                                        Pierre Leclercq wrote:

                                        Obviously this is NOT standard C++.

                                        Interesting. However when it was introduced there was in fact no standard for C++.

                                        Pierre Leclercq wrote:

                                        C++ committee disaproved Borland's choice, and this gave MS an edge. So it is interesting to sort things out when it comes to MS's ways of doing business.

                                        Also interesting but again noting that at the point where there was in fact a standard Borland had already lost. There still remains nothing to the assertion about standards because Microsoft had won and Borland had lost before there was a standard. The success and failure had nothing to do with the standard.

                                        1 Reply Last reply
                                        0
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        • Login

                                        • Don't have an account? Register

                                        • Login or register to search.
                                        • First post
                                          Last post
                                        0
                                        • Categories
                                        • Recent
                                        • Tags
                                        • Popular
                                        • World
                                        • Users
                                        • Groups