The Algorithms + Data Structures = Programs Podcast (aka ADSP: The Podcast) is an informal podcast inspired by Magic Read Along. We plan to talk about whatever we feel like - algorithms, data structures, programming languages, latest news in tech and more. Feel free to follow us on Twitter at @adspthepodcast.

Episode 129: Circle is Charizard! 🔥

May 12, 2023 0:26:59 19.46 MB Downloads: 0

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

Episode 128: GCC 13.1 🥳 and Upcoming Conferences!

May 05, 2023 0:28:40 20.67 MB Downloads: 0

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

Episode 127: Flux, ChatGPT & More with Tristan Brindle

April 28, 2023 0:35:29 25.57 MB Downloads: 0

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

Episode 126: Flux (and Flow) with Tristan Brindle

April 21, 2023 0:28:47 20.75 MB Downloads: 0

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

Episode 125: NanoRange with Tristan Brindle

April 14, 2023 0:28:19 20.41 MB Downloads: 0

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

Episode 124: Vectorizing std::views::filter

April 07, 2023 0:42:17 30.47 MB Downloads: 0

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 episodeC++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

Episode 123: An Algorithm Taxonomy

March 31, 2023 0:20:22 14.7 MB Downloads: 0

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

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

March 24, 2023 0:32:48 23.64 MB Downloads: 0

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

Episode 121: Stories & Chatting with Zach Laine! (Part 5)

March 17, 2023 0:40:03 28.86 MB Downloads: 0

In this episode, Conor and Bryce get some random stories fom Zach Laine and chat about other random topics.Link to Episode 121 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestZach Laine has been using C++ in industry for 15 years, focusing on data visualization, numeric computing, games, generic programming, and good library design. He finds the process of writing bio blurbs to be a little uncomfortable.Show NotesDate Recorded: 2023-02-16Date Released: 2023-03-17CppCastC++NowElixirConf 2015 - Keynote: Elixir Should Take Over the World by Jessica KerrStop working on your slides - Andrei AlexandrescuCppCon 2018: Louis Dionne “Compile-time programming and reflection in C++20 and beyond”PLDI 2022 ConferenceAgdaChip WarIntro 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

Episode 120: C++ Safety, Tuples & Variants with Zach Laine! (Part 4)

March 10, 2023 0:26:10 18.87 MB Downloads: 0

In this episode, Conor and Bryce talk to Zach Laine about safety in C++, tuples, variants, reductions and more.Link to Episode 120 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestZach Laine has been using C++ in industry for 15 years, focusing on data visualization, numeric computing, games, generic programming, and good library design. He finds the process of writing bio blurbs to be a little uncomfortable.Show NotesDate Recorded: 2023-02-16Date Released: 2023-03-10Oxide & Friends PodcastYael Grauer on TwitterYael WritesConsumer Reports: Report: Future of Memory SafetyUnsafe RustC++98 std::unordered_mapC++98 std::vectorC++20 ConceptsC++20 CoroutinesC++20 RangesC++17 std::variantP0095 C++ Language Variant ProposalC++17 std::holds_alternativeC++ boost::hana::tupleC++23 std::views::enumeratePython enumerateADSP Episode 25: The Lost ReductionC++23 std::views::adjacent_transformFutharkArrayCast Episode 37: Troels Henriksen and FutharkFuthark reduceFuthark reduce_commNVIDIA thrust::reduceNVIDIA associative-only reduce ProposalIntro 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

Episode 119: Why APL & Haskell are AWESOME with Zach Laine! (Part 3)

March 03, 2023 0:32:16 23.26 MB Downloads: 0

In this episode, Conor and Bryce talk to Zach Laine about APL, Haskell, the problem Three Consecutive Odds and why C++ developers should learn other languages.Link to Episode 119 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestZach Laine has been using C++ in industry for 15 years, focusing on data visualization, numeric computing, games, generic programming, and good library design. He finds the process of writing bio blurbs to be a little uncomfortable.Show NotesDate Recorded: 2023-02-16Date Released: 2023-03-03ADSP Episode 117: OOP, C++ Containers, APIs, EOP & More with Zach Laine!ADSP Episode 118: C++ Allocators with Zach Laine! (Part 2)APLBQNC++98 std::count_ifAnamorphismsC++20 std::views::splitC++23 std::views::chunkC++23 std::views::chunk_byADSP Episode 115: Max Gap in C++23ADSP Episode 116: Max Gap Count in C++23C++98 std::adjacent_differenceC++23 std::views::adjacent_transformThree Consecutive OddsC++98 std::transformC++17 std::transform_reduceC++23 std::views::adjacentC++23 std::views::slideHaskell fromEnumArrayCast Episode: Michael Higginson, 2022 Dyalog Contest WinnerReverse Polish notationP2672 Exploring the Design Space for a Pipeline OperatorDuo LingoDaniela Engert Duo Lingo StreakCategory Theory for Programmers - Bartosz MilewskiC++23 std::views::filterCollection Oriented Programming

Episode 118: C++ Allocators with Zach Laine! (Part 2)

February 24, 2023 0:31:42 22.85 MB Downloads: 0

In this episode, Conor and Bryce talk to Zach Laine about C++ allocators!Link to Episode 118 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestZach Laine has been using C++ in industry for 15 years, focusing on data visualization, numeric computing, games, generic programming, and good library design. He finds the process of writing bio blurbs to be a little uncomfortable.Show NotesDate Recorded: 2023-02-16Date Released: 2023-02-24ADSP Episode 117: OOP, C++ Containers, APIs, EOP & More with Zach Laine!C++ std::allocatorC++ std::vectorstatic_vectorAn Introduction to Container Adapters in C++C++ std::stackMISRA StandardThrust thrust::host_vector & thrust::device_vectorC++ STL-Like Algorithm LibrariesBoostCon / C++NowBoostCon 2011 - Bryce Lelbach: AST Construction with the Universal TreeBoostCon 2011 - Bryce Lelbach: AST Construction with the Universal Tree ~ SlidesBoost SpiritBoost Spirit utreeCanada Wide Science FairConor’s Science Fair Project SCI IIPlanarianMethylprednisoloneConor’s Science Fair Project Project PokerDavid Stone on TwitterIntro 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

Episode 117: OOP, C++ Containers, APIs, EOP & More with Zach Laine!

February 17, 2023 0:35:56 25.9 MB Downloads: 0

In this episode, Conor and Bryce talk to Zach Laine!Link to Episode 117 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the GuestZach Laine has been using C++ in industry for 15 years, focusing on data visualization, numeric computing, games, generic programming, and good library design. He finds the process of writing bio blurbs to be a little uncomfortable.Show NotesDate Recorded: 2023-02-16Date Released: 2023-02-17UT AustinObject Oriented ProgrammingC++ virtualDynamic and Static PolymorphismAd Hoc PolymorphismParametric PolymorphismRank PolymorphismElements of Programming (Free PDF)The Structure and Interpretation of Computer ProgramsC++23 std::flat_mapC++17 std::string_viewC++20 std::spanC++20 std::basic_string::starts_withC++20 std::basic_string::ends_withC++20 std::basic_string::containsIntro 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

Episode 116: Max Gap Count in C++23

February 10, 2023 0:28:32 20.57 MB Downloads: 0

In this episode, Conor and Bryce discuss the C++23 solution to the problem Max Gap Count.Link to Episode 116 on WebsiteDicuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachShow NotesDate Recorded: 2023-02-01Date Released: 2023-02-10ADSP Episode 115: Max Gap in C++23Max Gap Count ProblemMax Gap Count SolutionThe APL Show PodcastMonoidThe Jelly Programming LanguageUnholy Donuts (Toronto)Harry & Heels Donuts (Toronto)C++17 std::reduceC++23 std::inclusive_scanC++23 std::views::adjacentC++23 std::views::adjacent_transformIntro 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

Episode 115: Max Gap in C++23

February 03, 2023 0:25:37 18.47 MB Downloads: 0

In this episode, Conor and Bryce discuss the C++23 solution to the problem Max Gap.Link to Episode 115 on WebsiteDicuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachShow NotesDate Recorded: 2023-02-01Date Released: 2023-02-03Combinatory LogicCollection Oriented ProgrammingClojure/conj 2023Parallel Block-Delayed SequencesMax Gap ProblemMax Gap SolutionC++17 std::reduceC++23 std::inclusive_scanC++23 std::views::slideC++23 std::views::adjacentC++23 std::views::adjacent_transformC++98 std::minusC++23 std::views::pairwiseC++23 std::views::pairwise_transformF# Seq.pairwisePython more_itertools.pairwiseRxJS pairwiseLightning Talk: Algorithm Selection - Conor Hoekstra [ ACCU 2021 ]C++98 std::accumulateC++20 std::views::elementsC++20 std::views::keysC++20 std::views::valuesC++98 std::adjacent_differenceConor’s Tweet about the C++26 Pipeline OperatorIntro 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