Linked by David Adams on Mon 4th Oct 2010 19:32 UTC, submitted by Idefix
OSNews, Generic OSes Once upon a time, operating systems used to matter a lot; they defined what a computer could and couldn't do... Today, there's only one operating system: Unix (okay, there are two, but we'll get to that). This is why I contend that the OS doesn't matter - or that we need to take another look at the word's content, at what we mean when we say 'Operating System'.
Permalink for comment 444363
To read all comments associated with this story, please click here.
RE[6]: "There is only one."
by SamuraiCrow on Thu 7th Oct 2010 17:08 UTC in reply to "RE[5]: "There is only one.""
Member since:

"It is being designed for C++0x from the ground up as well as Objective C and is used internally by Mono and several JVMs as well. (...) It is used to optimize shader programs in OpenGL drivers, and is used as a backend by several functional languages as well, namely GHC Haskell and OCaml.

Yeah, and for those who don't use draft standards it still has to provide full and stable support for C++98. As you said, it's a young project. The fact that several projects jump on alpha code like that, rather than impressing me, reminds me of PulseAudio...
Did you read the whole paragraph I posted? Granted, I should have said that Clang and LibC++ are being built from the ground up for C++0x standards but the rest of them are using LLVM also. OpenGL drivers aren't immature code nor are some of the other compilers listed.

Could you please go in more details about that ? I'm not sure I understand this part.

The difference isn't all in the code. It's also in the license. I didn't get into it earlier because I didn't see the need but the UIUC license is more BSD-like than the GPL 3.0. I like my licenses short and easy-to-understand. GPL is neither.

For years I was trying to create a new BASIC compiler. My partner looked at GCC first and decided it wasn't well-documented enough to be of any use to us even though it was already ported to all the platforms we wanted to support. We opted to go with LLVM instead.

LLVM is better documented code so even though GCC has many programmers their numbers will not grow as quickly as LLVM's because of a code documentation problem.

As far as LLVM incorporating GCC's optimizations, it's actually a two-way street. GCC has been implementing LLVM's features all along as well. Competition drives the market.

The statement that a compiler framework is not just a compiler was intended to convey the idea that modularity and ease-of-reuse play a role in frameworks. A generic compiler tooled to just one processor is not a compiler framework. GCC and LLVM are two frameworks used to make many other compilers. I felt your comment that "A compiler is just a compiler." was overly broad. The term compiler covers a lot of territory. Once I wrote a compiler that converted music files into C code for a self-hosting player. That was a compiler but was not a compiler framework.

Reply Parent Score: 2