4 ms·
LLVM is One Thread Holding Apple and Google Together
- archangel_one 13y agoRidiculous. Of course it's not holding the two companies together - they both use it, but it doesn't determine any kind of strategic direction common to the two.
- samspenc 13y agoLOL, exactly. Just like SQLite "holding" iOS and Android together, even though both mobile OSs use SQLite as the data store of choice!
- astral303 13y ago"Thanks to Lattner’s online resume and other sources, we know that LLVM is “deeply integrated” with Xcode, and that it was used to build the latest versions of Mac OS X and iOS." Ugh. Linkbait headline and "brilliant" reporting--the "other sources" must be the entire front page of a Google search for "Xcode LLVM". It seems like an incredible stretch to claim that it's the last thread holding Apple and Google together. I do not believe that there is a single Google or Apple engineer that would not want to reuse a tool or a library between the two companies.
- killercup 13y agoThanks, that's exactly what I just wanted to write.
- revelation 13y agoThe author doesn't seem to understand that this is just a compiler. From him, it sounds like LLVM is the magic sauce in smartphone software on the planet.
- jtome 13y agoI actually know very little about the LLVM, so the article had me almost confused for a second until I confirmed that the LLVM is just a compiler as I thought. Ignoring the issues with his analysis of google and apple being brought together by the LLVM, which has its own issues, this is a really horrible article. And the android NDK uses the gcc.
- DonPellegrino 13y agoLLVM is truly a wonder of modern software. By making the development of new programming languages easier, it's accelerating the development of new tools and techniques.
- emn13 13y agoI really don't understand this point of view. LLVM is really cool, but its not revolutionary. It, like most (all?) other modern compilers uses an IR. GCC - the obvious comparison - has gone through at least two over the years. The original 1987 release had one. Promoting IR as an interop layer isn't new either (1992: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.41.1069 http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.41.1...). The JVM+CLR were both around by the time LLVM came to be too; CLR was supposed to be multi-language from the start. Modern GCC's IR layers were around not much later. At the time apple bet on LLVM, it wasn't nearly as polished as it is now: they didn't pick it because it was great, but because of the liberal licensing (just like khtml, for that matter). That's not to denigrate LLVM - clean, modern code that's easy to use is wonderful - but that doesn't make it a wonder. If I had to guess, I bet it's like 99% of other projects: lots of work, copying good ideas liberally from several sources, and solving the right problem at the right time.
- wladimir 13y agoThe major difference with GCC's and other IRs is that LLVM and clang made it easy to use and embed the APIs in other software (due to the license as well as exporting a library). This made it much more convenient to make compilers, as well as code inspection and analysis tools (and even graphics drivers). Sure, everything was possible before, but much harder for the average programmer interested in this stuff. With just Python and LLVM-python you can do very interesting things, quickly, without delving into GCC sources. It may be possible that GCC cached up in that aspect, but back in the day I heard from language researchers, the GCC low and high level IR were a hell to introspect and required delving into the GCC source at a deep level.
- rcxdude 13y ago
- randallu 13y agoWebKit regularly pulls changes from Blink and I'm sure the reverse is true too. The One Last Thread Holding Wired Together Is Linkbait Headlines.
- 127001brewer 13y agoRegardless of the link-bait headline, I submitted this article because I thought it gave a satisfactory high-level overview of LLVM.
- craigyk 13y agoThe last thread holding them together is that Google is still primarily a services company and Apple a consumer electronics company. The extent of their divergence is a direct result of how far along they are at stepping on the other's toes (Android, Maps, Siri).