Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Recently I have began to wonder when developers should pay for compilers. Compil

ID: 654292 • Letter: R

Question

Recently I have began to wonder when developers should pay for compilers. Compilers come for free with most platforms or there is a free version easily obtainable.

Example:

OS X - GCC and Clang/LLVM come with the developer tools. No limitations here for how and what you can turn out with them.

Linux - GCC and I am sure more. I dont know the current state of linux compilers. No limitations here for how and what you can turn out with them.

Windows - MinGW and Microsoft does offer a free version of Visual Studio. No limitations with MinGW but I think with the free Visual Studio there are severe limitations.

However, as an example, Intel produces C/C++ compilers. They are hefty in price. Educationally I think that one can get the OS X version for $49 and Windows/Linux for $129 each. They then offer a complete "Studio" product too. Obviously using the educational pricing there are imposed limitations.

But what I am wondering is when should one really considering paying for compilers. One example I can think of is a video game. If you are using a compiler that works on the major platforms there would be no more switching tools for the platform. It seems there would be a level of ease in switching among platforms if the tools were the same.

Can anyone shed some light on paying for compilers like the Intel compilers and the true cross-platform benefits one might get from using them? Does one's code become less portable even trying very hard to not do platform specific techniques?

Explanation / Answer

In my experience, cross host platform ability is a minor consideration for choosing a compiler. In fact, quite the opposite. People much more frequently choose a compiler for it's superior support for one specific target platform.

Take the Intel compiler for example. People usually buy it when they want to eke every last ounce of performance out of the latest bleeding edge Intel chip. After all, it's hard to design a compiler better than the guys who can walk down the hall and talk to the guys who designed the chips.

It's the same reason people buy tools from Microsoft to develop on Microsoft platforms. That's who has the support first and foremost.