article banner (priority)

LLVM: The tool that shaped modern programming and no one talks about

If you asked me what project from this century has most influenced how modern programming looks, I wouldn’t point out a single language or tool; instead, I would point to something that underlies nearly all of them, yet most developers do not even know what it is.
LLVM stands behind most new programming languages we use today. It stands behind Rust, Swift, and even my beloved Kotlin when compiled for native platforms. It is currently often used even by languages that previously lived without it, like C or C++.
Before LLVM, making a native programming language was a nightmare. The biggest problem of creators of languages like C or C++ wasn’t how to design a good language, but how to compile it to all the different processor types and operating systems.
LLVM changes that. Languages that use it are compiled to an intermediate form, which LLVM optimizes and compiles to a specific platform. This makes it much easier to implement a native programming language, as you only need to produce the representation LLVM requires, and you do not need to consider processor specifics or low-level optimizations. At the same time, LLVM is highly optimized and does its job really well.
This way, LLVM allowed the creation of a new cohort of low-level languages that changed modern programming. Rust is becoming a new standard for embedded and high-performance systems. Swift changed iOS or MacOS development, and Kotlin Native allows writing multiplatform Kotlin applications.
LLVM was created at the University of Illinois and is one of many academic projects that quietly influenced our world. I don't think any company or individual would be able to undertake such an ambitious project. That should remind us that not everything is made by corporations.
I hope you enjoyed this video. If you like my teaching style, I have prepared a series of books about Kotlin, covering everything from essentials to advanced topics and best practices. If you are a Kotlin developer, join my free newsletter, where I share new tips and lessons every week. More materials or workshops that I offer can be found on kt.academy website.