Programming - C++

As you can read in my resume, I have been a C++ programmer (I don't really like the word programmer but oh well) since the very early days. I of course started with C and had the fortune to get involved with people that had been in the business a lot longer than myself who told me that C++ was going to be the future. As soon as I knew about it I bought a book about it, trying to understand what it was all about. I liked the idea's of the object oriented design and development so much that I first started manually applying them to the project written in C as was working on at that time as I could not afford a C-Front (C++ to C converter) I started writing one myself which I used for quite a couple of projects. Shortly after however I read about Zortech C++ (written by Walter Bright) and it being a native C++ compiler and bought a copy as soon as I had enough money to afford it. I remember that I did not have a credit card at that time being rather young and not having a credit history. So I went to the bank to get a check I could send to London where the main Zortech office was located. Probably because of this unusual way of payment I didn't receive a compiler for 4 weeks. I finally sent a FAX to Zortech to tell them the check should have been received and that I was waiting impatiently for the compiler. I received it within a week after sending the FAX.

Having worked with Microsoft C, Borland's Turbo C and the SCO Xenix and Unix C compilers at that time Zortech C++ was a different animal. I was surprised to learn that I had to add a couple of empty lines at the end of a source file to prevent the compiler for giving an error. After resolving a couple of minor misunderstandings I had about the C++ language I fell in love with the compiler and have liked it the very best ever since. In the time I have been using the compiler Symantec bought Zortech. Symantec pretty much dumped support of the compiler in favor of their Java product called Visual Cafe until at the end of 2000 if I am correct Walter Bright got the rights to the compiler back from Symantec and the product was renamed to Digital Mars C++. Unfortunately the compiler is a little behind in the C++ standards. For one, it does not have the latest template support and for that reason can not compile the latest STL which is a little bit of a burden if you have code that relies on the latest STL. In many other ways however the compiler is a blessing. I know people have had a difficult time believing it, but the compiler compiles C++ code quite a bit faster than the major C++ compiler on the Win32 platforms. Digital Mars C++ outperforms Visual C-- 6.0 with a factor greater than 2. It outperforms Borland C++ Builder 5.0 with a factor of at least 2. Only on a Dual Pentium II 733 Borland C++ Builder 5.0 comes close to Digital Mars C++' compile time because of heavily utilization of the two processors. On a single processor computer it's no competition. Now the next thing is the most unbelievable thing. While having the shortest compile time Digital Mars C++ creates the smallest and fastest code at the same time. Some C++ programmers that never took the time to do a serious compare of compilers will contest this. However it is true! Check the newsgroup for Digital Mars C++ at news.digitalmars.com and question any users about it and they all will confirm this as for quite a few of them it is the very reason why they still use the compiler. Someday in the future I hope to have the time to publish a project, which will compile with all three mentioned compilers and will show any one the real difference.

I have wondered many times why such a huge difference in C++ compilers is possible. However, thinking back about how it all started it is not surprising. Zortech C++ was a fact before Borland nor Microsoft even heard of C++. They both performed a catch up and every one that has been in the business long enough remembers the ads in the several magazines where they destroyed each other. Needless to say, neither one of them had a long experience with implementing a compiler for a language as C++. I also tend to believe that the original peoples that build the Turbo C compilers for Borland did not build the C++ compilers as they left to create Top Speed. The same is probably true for Microsoft. This leaves Digital Mars C++ alone as the first C++ compiler on earth, created and still maintained by Walter Bright.