ADSP: Algorithms + Data Structures = Programs

Conor Hoekstra, Bryce Adelstein Lelbach & Ben Deane
undefined
May 26, 2023 • 43min

Episode 131: One Algorithm To Rule Them All!

In this episode, Conor and Bryce chat with Ben Deane and Tristan Brindle about which algorithm is the most fundamental of all algorithms!Link to Episode 131 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestsBen Deane has been programming in C++ for this whole millennium. He spent just over 20 years in the games industry working for companies like EA and Blizzard; many of the games he worked on used to be fondly remembered but now he’s accepted that they are probably mostly forgotten. After getting more interested in modern C++, in the teens he started giving internal company talks and then talks at various conferences, spreading ideas about types, algorithms and declarative and functional techniques.Tristan Brindle a freelance programmer and trainer based in London, mostly focussing on C++. He is a member of the UK national body (BSI) and ISO WG21. Occasionally I can be found at C++ conferences. He is also a director of C++ London Uni, a not-for-profit organisation offering free beginner programming classes in London and online. He has a few fun projects on GitHub that you can find out about here.Show NotesDate Recorded: 2023-05-16Date Released: 2023-05-26ADSP Episode 130: C++Now 2023 with Ben Deane & Tristan Brindle!C++17 std::reducezip_fold_while (No Link)scan_whileWhat Do You Mean by “Cache Friendly”? - Björn Fahller - C++ on Sea 2022b-treeValgrindC++Now 2023: Composition on Tiny Embedded Systems - Luke ValentyCppCon 2016: Jason Turner “Rich Code for Tiny Computers: A Simple Commodore 64 Game in C++17”Thrust Docsunfold (A tutorial on the universality and expressiveness of fold)C++20 std::views::iotaHaskell iterateCatamorphismsAnamorphismsJ cutRecursion SchemesHylomorphismC++ thrust::counting_iteratorC++ thrust::transform_iteratorC++NowCppNorth
undefined
May 19, 2023 • 32min

Episode 130: C++Now 2023 with Ben Deane & Tristan Brindle!

In this episode, Conor and Bryce chat with Ben Deane and Tristan Brindle about C++Now 2023!Link to Episode 130 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestsBen Deane has been programming in C++ for this whole millennium. He spent just over 20 years in the games industry working for companies like EA and Blizzard; many of the games he worked on used to be fondly remembered but now he’s accepted that they are probably mostly forgotten. After getting more interested in modern C++, in the teens he started giving internal company talks and then talks at various conferences, spreading ideas about types, algorithms and declarative and functional techniques.Tristan Brindle a freelance programmer and trainer based in London, mostly focussing on C++. He is a member of the UK national body (BSI) and ISO WG21. Occasionally I can be found at C++ conferences. He is also a director of C++ London Uni, a not-for-profit organisation offering free beginner programming classes in London and online. He has a few fun projects on GitHub that you can find out about here.Show NotesDate Recorded: 2023-05-16Date Released: 2023-05-19ADSP Episode 24: C++Now 2021 with Ben Deane & Tony Van EerdADSP Episode 29: From Papa John’s to Google (Part 1)ADSP Episode 58: Otto & Eric Niebler! (Part 1)Conquering C++20 Ranges - Tristan Brindle - CppCon 2021libc++C++NowBen Deane Talk PlaylistC++Now 2018: Ben Deane “Easy to Use, Hard to Misuse: Declarative Style in C++”Sean Parent’s C++ SeasoningDeclarative thinking, declarative practice - Kevlin Henney - Meeting C++ 2017CppCon 2016: Ben Deane “std::accumulate: Exploring an Algorithmic Empire”C++Now 2023: Calendrical C++: std::chrono, History, Mathematics and the Computus - Ben DeaneC++Now 2023: Speeding Date: Implementing Fast Calendar Algorithms - Cassio NeriLeap YearsC++Now 2023: Applicative: the Forgotten Functional Pattern - Ben DeaneC++Now 2019: Ben Deane “Identifying Monoids: Exploiting Compositional Structure in Code”C++Now 2023: What is Low Latency C++? (Part 1) - Timur DoumlerMonoids, Monads, and Applicative Functors: Repeated Software Patterns - David Sankel - CppCon 2020Intro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download: http://bit.ly/l-miss-you
undefined
May 12, 2023 • 27min

Episode 129: Circle is Charizard! 🔥

In this episode, Conor and Bryce chat about the new pipeline operator in Circle!Link to Episode 129 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachShow NotesDate Recorded: 2023-05-10Date Released: 2023-05-12Circle CompilerCircle Implements |> OperatorP2672 Exploring the Design Space for a Pipeline OperatorHow to Implement Your First Compiler Feature:The Story of Concepts in Clang - Saar Raz - CppCon 2019P0931 Structured bindings with polymorphic lambasAdvice to replace g++ with circle for CMake projectsCircle Godbolt LinkIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8
undefined
May 5, 2023 • 29min

Episode 128: GCC 13.1 🥳 and Upcoming Conferences!

In this episode, Conor and Bryce chat about the GCC 13.1 release and our upcoming conferences!Link to Episode 128 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachShow NotesDate Recorded: 2023-05-03Date Released: 2023-05-05C++Now 2023GCC 13.1 ReleaseRange-v3 LibraryTweet with link to already compiled GCC 13.1Core C++ 2023O3DCON 2022: Keynote C++ Horizons Bryce Adelstein LelbachCode EuropeC++ On Sea ConferenceKX Con 2023LambdaDays 2023Italian C++ 2023Circle CompilerCircle Implements |> OperatorCppNorthIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8
undefined
Apr 28, 2023 • 35min

Episode 127: Flux, ChatGPT & More with Tristan Brindle

In this episode, Conor and Bryce continue to chat with Tristan Brindle about his new library Flux, ChatGPT and more.Link to Episode 127 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestTristan Brindle a freelance programmer and trainer based in London, mostly focussing on C++. He is a member of the UK national body (BSI) and ISO WG21. Occasionally I can be found at C++ conferences. He is also a director of C++ London Uni, a not-for-profit organisation offering free beginner programming classes in London and online. He has a few fun projects on GitHub that you can find out about here.Show NotesDate Recorded: 2023-04-05Date Released: 2023-04-28ADSP Episode 125: NanoRange with Tristan BrindleADSP Episode 126: Flux (and Flow) with Tristan BrindleChatGPTcwhyChatDBGcommentator“Performance Matters” by Emery Berger“Python Performance Matters” by Emery Berger (Strange Loop 2022)Tristan’s Tweet about scanTristan’s Tweet with flux solutions to MCOArrayCast Episode 48 Henry Rich Reveals J with Threads J9.4J Fold’stop10 GitHub RepoHaskell’s mapAdjacentblackbird C++ Combinator LibraryC++ On Sea ConferenceCppNorthIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8
undefined
Apr 21, 2023 • 29min

Episode 126: Flux (and Flow) with Tristan Brindle

In this episode, Conor and Bryce chat with Tristan Brindle about his new library Flux and his predecessor library Flow.Link to Episode 126 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestTristan Brindle a freelance programmer and trainer based in London, mostly focussing on C++. He is a member of the UK national body (BSI) and ISO WG21. Occasionally I can be found at C++ conferences. He is also a director of C++ London Uni, a not-for-profit organisation offering free beginner programming classes in London and online. He has a few fun projects on GitHub that you can find out about here.Show NotesDate Recorded: 2023-04-05Date Released: 2023-04-21ADSP Episode 125: NanoRange with Tristan BrindleKeynote: Iterators and Ranges: Comparing C++ to D, Rust, and Others - Barry Revzin - CPPP 2021Rust IteratorsFlowFluxSwift SequencesEpisode 124: Vectorizing std::views::filterC++ std::find_ifC++17 std::reduceC++ std::accumulateCppCon 2016: Ben Deane “std::accumulate: Exploring an Algorithmic Empire”Intro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8
undefined
Apr 14, 2023 • 28min

Episode 125: NanoRange with Tristan Brindle

In this episode, Conor and Bryce chat with Tristan Brindle about collection oriented programming and NanoRange.Link to Episode 125 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestTristan Brindle a freelance programmer and trainer based in London, mostly focussing on C++. He is a member of the UK national body (BSI) and ISO WG21. Occasionally I can be found at C++ conferences. He is also a director of C++ London Uni, a not-for-profit organisation offering free beginner programming classes in London and online. He has a few fun projects on GitHub that you can find out about here.Show NotesDate Recorded: 2023-04-05Date Released: 2023-04-14C++ On Sea ConferenceACCU Conferencecpp.chat PodcastCppCast PodcastPhil Nash on TwitterCppCast Episode on C++ Uni (with Tristan Brindle)C++ London MeetupFluxFlowD RangesC++ RangesRust IteratorsCollection Oriented ProgrammingFunctional ProgrammingSmalltalkJava 8 StreamsSETLThrust LibrarycuCollectionsSwift SequencesSwift CollectionsRanges TSRange-v3 LibraryNanoRangeConquering C++20 Ranges - Tristan Brindle - CppCon 2021CppCon 2015: Eric Niebler “Ranges for the Standard Library”What a View! Building Your Own (Lazy) Range Adaptors (part 1 of 2) - Chris Di Bella - CppCon 2019What a View! Building Your Own (Lazy) Range Adaptors (part 2 of 2) - Chris Di Bella - CppCon 2019cmcstl2Intro Song InfoMiss You by Sarah Jansen
undefined
Apr 7, 2023 • 42min

Episode 124: Vectorizing std::views::filter

In this episode, Conor and Bryce talk about vectorizing std::views::filter.Link to Episode 124 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachShow NotesDate Recorded: 2023-03-21Date Released: 2023-04-07YouTube Video of this episodeSpaces Prototype Godbolt LinkMD Iteration Comparison Godbolt LinkRanges Vectorization Brainstorming Godbolt LinkMinimal Filter Vectorization Example #0 Godbolt LinkMinimal Filter Vectorization Example #1 Godbolt LinkC++20 std::views::filterAuto-Vectorization in LLVMC++20 std::ranges::replace_ifC++20 std::views::transformBryce’s spaces/view_optimization.hppP0931 Structured bindings with polymorphic lambasC++20 std::views::takeC++20 std::views::dropIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8
undefined
Mar 31, 2023 • 20min

Episode 123: An Algorithm Taxonomy

In this episode, Conor and Bryce talk about a taxonomy of algorithms, C++20 std::views::filter and more C++20/23/26 ranges.Link to Episode 123 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachShow NotesDate Recorded: 2023-03-21Date Released: 2023-03-31C++20 std::views::filterHoogle Translate Tweet of filterC++98 std::find_ifC++20 std::views::takeC++20 std::views::droprange-v3 adjacent_remove_ifrange-v3 remove_ifC++20 std::views::splitC++23 std::views::chunkC++23 std::views::chunk_bychunk_by_key (mentioned in P2214)Sy Brand’s “Livecoding C++ Ranges: chunk_by and chunk_by_key”Python itertools groupbyIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8
undefined
Mar 24, 2023 • 33min

Episode 122: ChatGPT, GTC 2023 & Stickers on our Foreheads

In this episode, Conor and Bryce chat about ChapGPT, the NVIDIA GTC 2023 conference and intelligence augmentation.Link to Episode 122 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachShow NotesDate Recorded: 2023-03-21Date Released: 2023-03-24RUN FOR THE FUN OF IT! Running PodcastChatGPTDeep Blue vs KasparovGTC 2023 ConferenceConor & Bryce Chat About C++ Algorithms + Combinators (YouTube Stream)The NVIDIA AI Podcast - Glean Founders Talk AI-Powered Enterprise Search on NVIDIA Podcast - Ep. 190ADSP Episode 97: C++ vs Carbon vs Circle vs CppFront with Sean BaxterClang-TidyGPTDuckOxide & Friends PodcastNVIDIA GTC 2023 - C++ Standard Parallelism - Bryce LelbachNVIDIA GTC 2023 - Defining the Quantum-Accelerated Supercomputer - Timothy CostaAPL Seeds 2023 Conferencecode_report GTC 2023 Trip ReportIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app