July 11, 2007
Clang open-sourced
Apple open-sourced ClangLLVM's C, C++, and Objective-C compiler front end — fast diagnostics and an embeddable parser for tools. on July 11, 2007 — a C, C++, and Objective-CA language combining C with Smalltalk-style object messaging — used for macOS and iOS before Swift. front end built on LLVMLow Level Virtual Machine — a compiler infrastructure reused by Clang, Rust, Swift, and many language toolchains. with fast diagnostics.
What it was for
ClangLLVM's C, C++, and Objective-C compiler front end — fast diagnostics and an embeddable parser for tools. compiles to LLVMLow Level Virtual Machine — a compiler infrastructure reused by Clang, Rust, Swift, and many language toolchains. IR with clearer error messages than GCCGNU Compiler Collection — the dominant open-source compiler toolchain for C, C++, and other languages. and powers XcodeApple's integrated development environment for iOS, macOS, watchOS, and visionOS applications., SwiftApple's language for iOS, macOS, and server apps — designed for safety and performance., and many static analyzers. Its library design lets tools share the same parser — IDEs, linters, and formatters all ride one AST. Example: a typo in C++ template code gets a pinpoint note instead of pages of cascade errors.
Companies
- Apple
Why it's here
ClangLLVM's C, C++, and Objective-C compiler front end — fast diagnostics and an embeddable parser for tools. gave the LLVMLow Level Virtual Machine — a compiler infrastructure reused by Clang, Rust, Swift, and many language toolchains. ecosystem a modern, embeddable C-family compiler front end.
Why it mattered
It became the default toolchain on macOSApple's desktop operating system — runs on Mac hardware with Unix foundations and the Cocoa UI framework. and influenced language tooling everywhere.
What it solved
GCCGNU Compiler Collection — the dominant open-source compiler toolchain for C, C++, and other languages.'s monolithic design made fast, friendly diagnostics and IDEIntegrated development environment — an editor with debugging, build tools, and project management built in. integration difficult.
Media
ImageClangSoftware: LLVM Developer GroupScreenshot: VulcanSphere, Apache License 2.0, via Wikimedia Commons
Related
- LLVM 1.0 releasedOctober 24, 2003
- Language Server Protocol announcedJune 27, 2016
- GCC first public releaseMarch 22, 1987