The rise of new exotic crazy accelerators is people have been trying to turn this from a let's go right lots of special kernels problem into a compiler problem. This whole stack allows that stack to be extended and hacked by researchers and hardware innovators. And so what both Swift and Mojo are doing with the engine that we're providing, which goes into heterogeneous runtimes? It turns out, rightturns out, some smart people don't like compilers at all.
Chris Lattner is a legendary software and hardware engineer, leading projects at Apple, Tesla, Google, SiFive, and Modular AI, including the development of Swift, LLVM, Clang, MLIR, CIRCT, TPUs, and Mojo. Please support this podcast by checking out our sponsors:
– iHerb: https://lexfridman.com/iherb and use code LEX to get 22% off your order
– Numerai: https://numer.ai/lex
– InsideTracker: https://insidetracker.com/lex to get 20% off
EPISODE LINKS:
Chris’s Twitter: https://twitter.com/clattner_llvm
Chris’s Website: http://nondot.org/sabre/
Mojo programming language: https://www.modular.com/mojo
Modular AI: https://modular.com/
PODCAST INFO:
Podcast website: https://lexfridman.com/podcast
Apple Podcasts: https://apple.co/2lwqZIr
Spotify: https://spoti.fi/2nEwCF8
RSS: https://lexfridman.com/feed/podcast/
YouTube Full Episodes: https://youtube.com/lexfridman
YouTube Clips: https://youtube.com/lexclips
SUPPORT & CONNECT:
– Check out the sponsors above, it’s the best way to support this podcast
– Support on Patreon: https://www.patreon.com/lexfridman
– Twitter: https://twitter.com/lexfridman
– Instagram: https://www.instagram.com/lexfridman
– LinkedIn: https://www.linkedin.com/in/lexfridman
– Facebook: https://www.facebook.com/lexfridman
– Medium: https://medium.com/@lexfridman
OUTLINE:
Here’s the timestamps for the episode. On some podcast players you should be able to click the timestamp to jump to that time.
(00:00) – Introduction
(06:38) – Mojo programming language
(16:55) – Code indentation
(25:22) – The power of autotuning
(35:12) – Typed programming languages
(51:56) – Immutability
(1:04:14) – Distributed deployment
(1:38:41) – Mojo vs CPython
(1:54:30) – Guido van Rossum
(2:01:31) – Mojo vs PyTorch vs TensorFlow
(2:04:55) – Swift programming language
(2:10:27) – Julia programming language
(2:15:32) – Switching programming languages
(2:24:58) – Mojo playground
(2:29:48) – Jeremy Howard
(2:40:34) – Function overloading
(2:48:59) – Error vs Exception
(2:56:39) – Mojo roadmap
(3:09:41) – Building a company
(3:21:27) – ChatGPT
(3:27:50) – Danger of AI
(3:31:44) – Future of programming
(3:35:01) – Advice for young people