Programming - C++

www.janknepper.com

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 of C++. 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 object oriented design and development so much that I first started manually applying them to the projects written in C I was working on. 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. I 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/money order I could send to London where the main Zortech office was located at that time. 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/money order 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 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 from 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++. Ever since Walter has been doing an outstanding job of supporting the compiler and bringing it up to the latest C and C++ standards. The current version should be compliant with C99 and C++ 98. Walter has done a tremendous amount of work on template support in C++. The current compiler compile STLport and probably still SGI's STL. Libraries as wxWIndows and STLSoft have been successfully compiled with the compiler and have their own secstions in the computers's newsgroup at:
news://news.digitalmars.com/c++
news://news.digitalmars.com/c++.wxwindows
news://news.digitalmars.com/c++.stlsoft
The amazing part here is that Digital Mars C++ seems to be the only compiler that actually can deal with quite a bit of templates in precompiled header files! In many ways 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 Processor computers Borland C++ Builder 5.0 comes close to Digital Mars C++' compile time because of heavily utilization of the dual processor. 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++ generally creates rather small and optimized code. 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 mostlikely will confirm this as for quite a few of them it is the very reason why they 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 too surprising. Zortech C++ was a fact before Borland or Microsoft even heard of C++. They both performed a catch up and everyone 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 heard that the original people 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 native C++ compiler on earth, created and still maintained by Walter Bright.
Programming - C++

www.janknepper.com