Mojo allows you to take advantage of all these powerful things that have been built into the hardware over time. So it's very, very powerful weapons against slowness,. which is why people have been having fun like just taking code and making it go fast because it's just kind of an adrenaline rush. Before I talk about some of the interesting stuff with parallelization, all that, let's first talk about like the basics.
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