All Projects → boostcon → Cppnow_presentations_2018

boostcon / Cppnow_presentations_2018

Presentation Material for C++Now 2018

========================= C++Now 2018 Presentations

|guidelines|_

.. |guidelines| replace:: Slide Deck Submission Guidelines .. _guidelines: SLIDE_DECK_GUIDELINES.md

Monday, May 07

+-----------------------+----------------------------+ | | Paepcke | +=======================+============================+ | Morning (9:00-10:30) | |monAM0pae|_ |monAM0paeV|_ | +-----------------------+----------------------------+

+-----------------------+----------------------------+----------------------------+----------------------------+ | | Flug | Hudson | Bethe | +=======================+============================+============================+============================+ | Morning (11:00-12:30) | |monAM2flg|_ |monAM2flgV|_ | |monAM2hud|_ |monAM2hudV|_ | |monAM2bet|_ |monAM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (2:30-4:00) | |monPM0flg|_ |monPM0flgV|_ | |monPM0hud|_ |monPM0hudV|_ | |monPM0bet|_ |monPM0betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (4:30-6:00) | |monPM2flg| |monPM2flgV|_ | |monPM2hud|_ |monPM2hudV|_ | |monPM2bet|_ |monPM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+

Tuesday, May 08

+-----------------------+----------------------------+----------------------------+----------------------------+ | | Flug | Hudson | Bethe | +=======================+============================+============================+============================+ | Morning (9:00-10:30) | |tueAM0flg|_ |tueAM0flgV|_ | |tueAM0hud|_ |tueAM0hudV|_ | |tueAM0bet|_ |tueAM0betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Morning (11:00-11:45) | |tueAM2flg|_ |tueAM2flgV|_ | |tueAM2hud|_ |tueAM2hudV|_ | |tueAM2bet| |tueAM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Morning (11:45-12:30) | |tueAM3flg|_ |tueAM3flgV|_ | |tueAM3hud| |tueAM3hudV|_ | | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (2:30-4:00) | |tuePM0flg|_ |tuePM0flgV|_ | |tuePM0hud|_ |tuePM0hudV|_ | |tuePM0bet|_ |tuePM0betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (4:30-6:00) | |tuePM2flg|_ |tuePM2flgV|_ | |tuePM2hud|_ |tuePM2hudV|_ | |tuePM2bet|_ |tuePM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+

Wednesday, May 09

+-----------------------+----------------------------+----------------------------+----------------------------+ | | Flug | Hudson | Bethe | +=======================+============================+============================+============================+ | Morning (9:00-10:30) | |wedAM0flg|_ |wedAM0flgV|_ | |wedAM0hud|_ |wedAM0hudV|_ | |wedAM0bet|_ |wedAM0betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Morning (11:00-12:30) | |wedAM2flg| |wedAM2flgV|_ | |wedAM2hud|_ |wedAM2hudV|_ | |wedAM2bet| |wedAM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (2:30-4:00) | |wedPM0flg| |wedPM0flgV|_ | |wedPM0hud| |wedPM0hudV|_ | |wedPM0bet|_ |wedPM0betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (4:30-6:00) | |wedPM2flg| |wedPM2flgV|_ | |wedPM2hud|_ |wedPM2hudV|_ | |wedPM2bet| |wedPM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+

Thursday, May 10

+-----------------------+----------------------------+----------------------------+----------------------------+ | | Flug | Hudson | Bethe | +=======================+============================+============================+============================+ | Morning (9:00-10:30) | |thuAM0flg|_ |thuAM0flgV|_ | |thuAM0hud| |thuAM0hudV|_ | |thuAM0bet|_ |thuAM0betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Morning (11:00-11:45) | |thuAM2flg|_ |thuAM2flgV|_ | |thuAM2hud|_ |thuAM2hudV|_ | |thuAM2bet|_ |thuAM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Morning (11:45-12:30) | |thuAM3flg|_ |thuAM3flgV|_ | |thuAM3hud|_ |thuAM3hudV|_ | | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (2:30-4:00) | |thuPM0flg|_ |thuPM0flgV|_ | |thuPM0hud| |thuPM0hudV|_ | |thuPM0bet| |thuPM0betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+ | Afternoon (4:30-6:00) | |thuPM2flg| |thuPM2flgV|_ | |thuPM2hud|_ |thuPM2hudV|_ | |thuPM2bet| |thuPM2betV|_ | +-----------------------+----------------------------+----------------------------+----------------------------+

Friday, May 11

+-----------------------+----------------------------+ | | Paepcke | +=======================+============================+ | Morning (9:00-10:30) | |friAM0pae|_ |friAM0paeV|_ | +-----------------------+----------------------------+ | Morning (11:30-12:30) | |friAM2pae| |friAM2paeV|_ | +-----------------------+----------------------------+

Lightning Talks

+------------------------+-------------------+ | Talk | Video | +========================+===================+ | |lightning00|_ | |lightning00V|_ | +------------------------+-------------------+ | |lightning01|_ | |lightning01V|_ | +------------------------+-------------------+ | |lightning02|_ | |lightning02V|_ | +------------------------+-------------------+ | |lightning03|_ | |lightning03V|_ | +------------------------+-------------------+ | |lightning04| | |lightning04V|_ | +------------------------+-------------------+ | |lightning05| | |lightning05V|_ | +------------------------+-------------------+ | |lightning06|_ | |lightning06V|_ | +------------------------+-------------------+ | |lightning07| | |lightning07V|_ | +------------------------+-------------------+ | |lightning08| | |lightning08V|_ | +------------------------+-------------------+ | |lightning09| | |lightning09V|_ | +------------------------+-------------------+ | |lightning10| | |lightning10V|_ | +------------------------+-------------------+ | |lightning11| | |lightning11V|_ | +------------------------+-------------------+ | |lightning12| | |lightning12V|_ | +------------------------+-------------------+ | |lightning13| | |lightning13V|_ | +------------------------+-------------------+ | |lightning14| | |lightning14V|_ | +------------------------+-------------------+ | |lightning16| | |lightning16V|_ | +------------------------+-------------------+ | |lightning17| | |lightning17V|_ | +------------------------+-------------------+ | |lightning19| | |lightning19V|_ | +------------------------+-------------------+ | |lightning20|_ | |lightning20V|_ | +------------------------+-------------------+ | |lightning21| | |lightning21V|_ | +------------------------+-------------------+ | |lightning22|_ | |lightning22V|_ | +------------------------+-------------------+ | |lightning23| | |lightning23V|_ | +------------------------+-------------------+ | |lightning24| | |lightning24V|_ | +------------------------+-------------------+ | |lightning25| | |lightning25V|_ | +------------------------+-------------------+ | |lightning26| | |lightning26V|_ | +------------------------+-------------------+ | |lightning27| | |lightning27V|_ | +------------------------+-------------------+ | |lightning28| | |lightning28V|_ | +------------------------+-------------------+ | |lightning29| | |lightning29V|_ | +------------------------+-------------------+

.. .. |tag| replace:: .. .. _tag: http://link.com/to/slides .. .. |tagV| (video) .. .. _tagV: http://link.com/to/video

.. Monday, May 07

.. |monAM0pae| replace:: Opening Keynote: The Shape of a Program, Lisa Lippincott .. _monAM0pae: 05-07-2018_monday/the_shape_of_a_program__lisa_lippincott__cppnow_05072018.pdf .. |monAM0paeV| replace:: (video) .. _monAM0paeV: https://www.youtube.com/watch?v=QFIOE1jKv30

.. |monAM2flg| replace:: C++ Mixins: Customization Through Compile Time Composition, Odin Holmes .. _monAM2flg: .. |monAM2flgV| replace:: (video) .. _monAM2flgV: https://youtu.be/wWZi_wPyVvs .. |monAM2hud| replace:: A Quantum Data Structure for Classical Computers, Charles Bay .. _monAM2hud: 05-07-2018_monday/a_quantum_data_structure_for_classical_computers__charley_bay__cppnow_2018__05072018.pdf .. |monAM2hudV| replace:: (video) .. _monAM2hudV: https://youtu.be/Y2K82EVGxaI .. |monAM2bet| replace:: Fast Conversion from UTF-8 with C++, DFAs, and SSE Intrinsics, Bob Steagall .. _monAM2bet: 05-07-2018_monday/fast_conversion_from_utf8_with_cpp_dfas_and_sse_intrinsics__bob_steagall__cppnow_05072018.pdf .. |monAM2betV| replace:: (video) .. _monAM2betV: https://youtu.be/h5oczBeib_M

.. |monPM0flg| replace:: An Allocator is a Handle to a Heap, Arthur O'Dwyer .. _monPM0flg: 05-07-2018_monday/an_allocator_is_a_handle_to_a_heap__arthur_o_dywer__cppnow_05072018.pdf .. |monPM0flgV| replace:: (video) .. _monPM0flgV: https://youtu.be/0MdSJsCTRkY .. |monPM0hud| replace:: Generalized Full Duplex Messaging, Jason Rice .. _monPM0hud: 05-07-2018_monday/generalized_full_duplex_messaging__jason_rice__cppnow_05072018.pdf .. |monPM0hudV| replace:: (video) .. _monPM0hudV: https://youtu.be/UalTAQmP3iE .. |monPM0bet| replace:: Boost.Text: Fixing std::string, and Adding Unicode to Standard C++ (part 1 of 2), Zach Laine .. _monPM0bet: 05-07-2018_monday/boost_text_fixing_std_string_and_adding_unicode_to_standard_cpp__zach_laine__cppnow_2018__05072018.pdf .. |monPM0betV| replace:: (video) .. _monPM0betV: https://youtu.be/944GjKxwMBo

.. |monPM2flg| replace:: C++17's std::pmr Comes With a Cost, David Sankel .. _monPM2flg: .. |monPM2flgV| replace:: (video) .. _monPM2flgV: https://youtu.be/FLbXjNrAjbc .. |monPM2hud| replace:: Beyond C++17, Mateusz Pusz .. _monPM2hud: 05-07-2018_monday/beyond_cpp17__mateusz_pusz__cppnow_05072018.pdf .. |monPM2hudV| replace:: (video) .. _monPM2hudV: https://youtu.be/y7PBciQp0B8 .. |monPM2bet| replace:: Boost.Text: Fixing std::string, and Adding Unicode to Standard C++ (part 2 of 2), Zach Laine .. _monPM2bet: 05-07-2018_monday/boost_text_fixing_std_string_and_adding_unicode_to_standard_cpp__zach_laine__cppnow_2018__05072018.pdf .. |monPM2betV| replace:: (video) .. _monPM2betV: https://youtu.be/GJ2xMAqCZL8

.. Tuesday, May 08

.. |tueAM0flg| replace:: Fancy Pointers for Fun and Profit, Bob Steagall .. _tueAM0flg: 05-08-2018_tuesday/fancy_pointers_for_fun_and_profit__bob_steagall__cppnow_05082018.pdf .. |tueAM0flgV| replace:: (video) .. _tueAM0flgV: https://youtu.be/Uwe2gXNMeG4 .. |tueAM0hud| replace:: The Best Type Traits C++ Doesn't Have, Arthur O'Dwyer .. _tueAM0hud: 05-08-2018_tuesday/the_best_type_traits__arthur_o_dwyer__cppnow_05082018.pdf .. |tueAM0hudV| replace:: (video) .. _tueAM0hudV: https://youtu.be/MWBfmmg8-Yo .. |tueAM0bet| replace:: The Continuing Saga of the Lock-Free Queue: Part 3 of N, Tony Van Eerd .. _tueAM0bet: 05-08-2018_tuesday/the_continuing_saga_of_the_lockfree_queue__tony_van_eerd__cppnow_05082018.pdf .. |tueAM0betV| replace:: (video) .. _tueAM0betV: https://youtu.be/mu6XB-WRNxs

.. |tueAM2flg| replace:: Git, CMake, Conan: How to Ship and Reuse our C++ Projects, Mateusz Pusz .. _tueAM2flg: 05-08-2018_tuesday/git_cmake_conan__how_to_ship_and_reuse_our_cpp_projects__mateusz_pusz__cppnow_05202018.pdf .. |tueAM2flgV| replace:: (video) .. _tueAM2flgV: https://youtu.be/6sWec7b0JIc .. |tueAM2hud| replace:: The Untapped Potential of Software Visualization, Eberhard Gräther .. _tueAM2hud: 05-08-2018_tuesday/the_untapped_potential_of_software_visualization__eberhard_graether__cppnow_05082018.pdf .. |tueAM2hudV| replace:: (video) .. _tueAM2hudV: https://youtu.be/2UmDvg5xv1U .. |tueAM2bet| replace:: Boost.TMP: Your DSL for Metaprogramming, Odin Holmes .. _tueAM2bet: .. |tueAM2betV| replace:: (video) .. _tueAM2betV: https://youtu.be/WRTjLPJTcgA

.. |tueAM3flg| replace:: Docker Based C++ Dependency and Build Management, Jason Rice .. _tueAM3flg: 05-08-2018_tuesday/cppdock__docker_based_cpp_dependency_and_build_management__jason_rice__cppnow_05082018.pdf .. |tueAM3flgV| replace:: (video) .. _tueAM3flgV: https://youtu.be/lmIc0MgWBEI .. |tueAM3hud| replace:: Fortransformers: A Field Study, Tobias Loew .. _tueAM3hud: .. |tueAM3hudV| replace:: (video) .. _tueAM3hudV: https://youtu.be/9jGPe1S17R0

.. |tuePM0flg| replace:: Futures without Type Erasure, Vittorio Romeo .. _tuePM0flg: 05-08-2018_tuesday/futures_without_type_erasure__vittorio_romeo__cppnow_05082018.pdf .. |tuePM0flgV| replace:: (video) .. _tuePM0flgV: https://youtu.be/Avvhs3PLP7o .. |tuePM0hud| replace:: The Julia Language and C++: The Perfect Marriage? Keno Fischer, Bart Janssens .. _tuePM0hud: 05-08-2018_tuesday/the_julia_language_and_cpp__bart_janssens__cppnow__05082018.pdf .. |tuePM0hudV| replace:: (video) .. _tuePM0hudV: https://youtu.be/hvnxY3NjHQ4 .. |tuePM0bet| replace:: Smart Output Iterators, Jonathan Boccara .. _tuePM0bet: 05-08-2018_tuesday/smart_output_iterators__jonathan_boccara__cppnow_05082018.pdf .. |tuePM0betV| replace:: (video) .. _tuePM0betV: https://youtu.be/ZJA3-h7Ct_Y

.. |tuePM2flg| replace:: Moving Faster: Everyday Efficiency in Modern C++, Alan Talbot .. _tuePM2flg: 05-08-2018_tuesday/moving_faster__everyday_efficiency_in_modern_cpp__cppnow_05082018.pdf .. |tuePM2flgV| replace:: (video) .. _tuePM2flgV: https://youtu.be/J9yVA341zrw .. |tuePM2hud| replace:: Generative Programming & Declarative Interfaces: Emulating the Nintendo 3DS, Tony Wasserka .. _tuePM2hud: 05-08-2018_tuesday/generative_programming_and_declarative_interfaces__emulating_the_nintendo_3ds__tony_wasserka__cppnow_05082018.pdf .. |tuePM2hudV| replace:: (video) .. _tuePM2hudV: https://youtu.be/1qGksJWsfow .. |tuePM2bet| replace:: What Else has My Compiler Done for Me Lately? Matt Godbolt .. _tuePM2bet: 05-08-2018_tuesday/what_else_has_my_compiler_done_for_me_lately__matt_godbolt__cppnow_05082018.pdf .. |tuePM2betV| replace:: (video) .. _tuePM2betV: https://youtu.be/nAbCKa0FzjQ

.. Wednesday, May 09

.. |wedAM0flg| replace:: If I Had My 'Druthers: Some Thoughts on Improving the Containers in C++2x, Bob Steagall .. _wedAM0flg: 05-09-2018_wednesday/if_i_had_my__druthers__some_thoughts_on_improving_the_containers_in_cpp2x__bob_steagall__cppnow_05092018.pdf .. |wedAM0flgV| replace:: (video) .. _wedAM0flgV: https://youtu.be/bAE0qteS4Rk .. |wedAM0hud| replace:: Words of Wisdom, Tony Van Eerd .. _wedAM0hud: 05-09-2018_wednesday/words_of_wisdom__tony_van_eerd__cppnow_05092018.pdf .. |wedAM0hudV| replace:: (video) .. _wedAM0hudV: https://youtu.be/l2NsHY_ohHI .. |wedAM0bet| replace:: Game Engine API Design, Allan Deutsch .. _wedAM0bet: .. |wedAM0betV| replace:: (video) .. _wedAM0betV: https://youtu.be/W3ViIBnTTKA

.. |wedAM2flg| replace:: Rethinking Pointers, Jonathan Müller .. _wedAM2flg: .. |wedAM2flgV| replace:: (video) .. _wedAM2flgV: https://youtu.be/kYiEvVEh6Tw .. |wedAM2hud| replace:: Design and Implementation of DBMS Asynchronous Client Library with C++17, Boost.Hana and Boost.Asio, Roman Siromakha .. _wedAM2hud: 05-09-2018_wednesday/design_and_implementation_of_dbms_asynchronous_client_library__roman_siromakha__cppnow_05092018.pdf .. |wedAM2hudV| replace:: (video) .. _wedAM2hudV: https://youtu.be/-1zbaxuUsMA .. |wedAM2bet| replace:: You Can Do Better than std::unordered_map: New and Recent Improvements to Hash Table Performance, Malte Skarupke .. _wedAM2bet: .. |wedAM2betV| replace:: (video) .. _wedAM2betV: https://youtu.be/M2fKMP47slQ

.. |wedPM0flg| replace:: Runtime Polymorphism: Back to the Basics, Louis Dionne .. _wedPM0flg: .. |wedPM0flgV| replace:: (video) .. _wedPM0flgV: https://youtu.be/OtU51Ytfe04 .. |wedPM0hud| replace:: How Compilers Reason About Exceptions, Michael Spencer .. _wedPM0hud: .. |wedPM0hudV| replace:: (video) .. _wedPM0hudV: https://youtu.be/C4gpj-MDstY .. |wedPM0bet| replace:: Initializer Lists Are Broken, Let's Fix Them, Jason Turner .. _wedPM0bet: 05-09-2018_wednesday/initializer_lists_are_broken__jason_turner__cppnow_05092018.pdf .. |wedPM0betV| replace:: (video) .. _wedPM0betV: https://youtu.be/sSlmmZMFsXQ

.. |wedPM2flg| replace:: The Current State of Modules in C++, John Lakos .. _wedPM2flg: .. |wedPM2flgV| replace:: (video) .. _wedPM2flgV: https://youtu.be/EglLjioQ9x0 .. |wedPM2hud| replace:: Argot: Simplying Variants, Tuples and Futures, Matt Calabrese .. _wedPM2hud: 05-09-2018_wednesday/argot_simplifying_variants_tuples_and_futures__matt_calabrese__cppnow_05092018.pdf .. |wedPM2hudV| replace:: (video) .. _wedPM2hudV: https://youtu.be/pKVCB_Bzalk .. |wedPM2bet| replace:: Optional(al) is Not A Failure, Phil Nash .. _wedPM2bet: .. |wedPM2betV| replace:: (video) .. _wedPM2betV: https://youtu.be/OsRty0KNDZ0

.. Thursday, May 10

.. |thuAM0flg| replace:: Easy to Use, Hard to Misuse - Declarative Style in C++, Ben Deane .. _thuAM0flg: 05-10-2018_thursday/easy_to_use_hard_to_misuse__declarative_style_in_cpp__ben_deane__cppnow_05102018.pdf .. |thuAM0flgV| replace:: (video) .. _thuAM0flgV: https://youtu.be/2ouxETt75R4 .. |thuAM0hud| replace:: yomm2: Fast, Orthogonal, Open Methods in a Library, Jean-Louis Leroy .. _thuAM0hud: .. |thuAM0hudV| replace:: (video) .. _thuAM0hudV: https://youtu.be/rm82LBpyXjM .. |thuAM0bet| replace:: The Problem with "Cutting Edge C++", Jens Weller .. _thuAM0bet: 05-10-2018_thursday/the_problem_with_cutting_edge_cpp__jens_weller__cppnow_05102018.pdf .. |thuAM0betV| replace:: (video) .. _thuAM0betV: https://youtu.be/T7RhxjB5sSg

.. |thuAM2flg| replace:: A View to a View, Peter Bindels .. _thuAM2flg: 05-10-2018_thursday/a_view_to_a_view__peter_bindles__cppnow_05102018.pdf .. |thuAM2flgV| replace:: (video) .. _thuAM2flgV: https://youtu.be/T1WjKvLJGxg .. |thuAM2hud| replace:: -Os Matters, Mark Zeren .. _thuAM2hud: 05-10-2018_thursday/os_matters__mark_zeren__cppnow_05102018.pdf .. |thuAM2hudV| replace:: (video) .. _thuAM2hudV: https://youtu.be/vGV5u1nxqd8 .. |thuAM2bet| replace:: From Parsing to sema: Making Sense of Syntax Trees, Michał Dominiak .. _thuAM2bet: 05-10-2018_thursday/from_parsing_to_sema_making_sense_of_syntax_trees__michal_dominiak__cppnow_05102018.pdf .. |thuAM2betV| replace:: (video) .. _thuAM2betV: https://youtu.be/YiGbMdIMAr4

.. |thuAM3flg| replace:: Debug C++ Without Running, Anastasia Kazakova .. _thuAM3flg: 05-10-2018_thursday/debug_cpp_w_o_running__anastasia_kazakova__cppnow_05102018.pdf .. |thuAM3flgV| replace:: (video) .. _thuAM3flgV: https://youtu.be/8-tmVEong2k .. |thuAM3hud| replace:: Making Your Library More Reliable with Fuzzing, Marshall Clow .. _thuAM3hud: 05-10-2018_thursday/making_your_library_more_reliable_with_fuzzing__marshall_clow__cppnow_05182018.pdf .. |thuAM3hudV| replace:: (video) .. _thuAM3hudV: https://youtu.be/LlLJRHToyUk

.. |thuPM0flg| replace:: Modern C++ in Embedded Systems, Michael Caisse .. _thuPM0flg: 05-10-2018_thursday/modern_cpp_in_an_embedded_world__michael_caisse__cpnow_05102018.pdf .. |thuPM0flgV| replace:: (video) .. _thuPM0flgV: https://youtu.be/c9Xt6Me3mJ4 .. |thuPM0hud| replace:: My Little *this Deduction: Friendship is ... Uniform?, Gašper Ažman .. _thuPM0hud: .. |thuPM0hudV| replace:: (video) .. _thuPM0hudV: https://www.youtube.com/watch?v=yB4E-SzQPdI .. |thuPM0bet| replace:: Secure Coding Best Practices: Your First Line Is The Last Line Of Defense, Matthew Buttler .. _thuPM0bet: .. |thuPM0betV| replace:: (video) .. _thuPM0betV: https://youtu.be/oW3rRfjWwUE

.. |thuPM2flg| replace:: Modern C++ API Design: From Rvalue-References to Type Design, Titus Winters .. _thuPM2flg: .. |thuPM2flgV| replace:: (video) .. _thuPM2flgV: https://youtu.be/2UmDvg5xv1U .. |thuPM2hud| replace:: Compile Fast, Run Faster, Scale Forever - a Look into the sol2 Libary, ThePhD .. _thuPM2hud: 05-10-2018_thursday/compile_fast_run_faster_scale_forever__a_look_into_the_sol2_library__thephd__cppnow_05102018.pdf .. |thuPM2hudV| replace:: (video) .. _thuPM2hudV: https://youtu.be/0Lwy4_sKeJM .. |thuPM2bet| replace:: C++ Development with Visual Studio Code, Rong Lu .. _thuPM2bet: .. |thuPM2betV| replace:: (video) .. _thuPM2betV: https://youtu.be/-erXR6k9TeE

.. Friday, May 11

.. |friAM0pae| replace:: Closing Keynote: Undefined Behavior and Compiler Optimizations, John Regehr .. _friAM0pae: 05-11-2018_friday/undefined_behavior_and_compiler_optimizations__john_regehr__cppnow__05112018.pdf .. |friAM0paeV| replace:: (video) .. _friAM0paeV: https://youtu.be/AeEwxtEOgH0

.. |friAM2pae| replace:: Closing Panel: What Belongs in the C++ Standard Library .. _friAM2pae: .. |friAM2paeV| replace:: (video) .. _friAM2paeV: https://youtu.be/McpMfeEJf2w

.. Lightning Talks

.. |lightning00| replace:: Easing into Modern C++, Ben Deane .. _lightning00: lightning_talks/easing_into_modern_cpp__ben_deane__cppnow_05072018.pdf .. |lightning00V| replace:: (video) .. _lightning00V: https://youtu.be/lheIZOdAYD4

.. |lightning01| replace:: Where Should I Belong?, ThePhD .. _lightning01: lightning_talks/we_are_glad_you_are_here__jeanheyd_meneide__cppnow_05072018.pdf .. |lightning01V| replace:: (video) .. _lightning01V: https://youtu.be/Vl8OK1hDYUg

.. |lightning02| replace:: Loop Exit Blocks: A proposal for C++20, Alan Talbot .. _lightning02: lightning_talks/loop_exit__alan_talbot__cppnow_05072018.pdf .. |lightning02V| replace:: (video) .. _lightning02V: https://youtu.be/4s3E8yVtSXE

.. |lightning03| replace:: Improving Debuggability with GDB's Python API, Jeff Trull .. _lightning03: lightning_talks/improving_debuggability_with_gdbs_python_api__jeff_trull__cppnow_05072018.pdf .. |lightning03V| replace:: (video) .. _lightning03V: https://youtu.be/mLPp1x_1h3g

.. |lightning04| replace:: Enums For Ways, Wissam Mehio .. _lightning04: .. |lightning04V| replace:: (video) .. _lightning04V: https://youtu.be/pknpnYA9pI0

.. |lightning05| replace:: Code Generation: The Lisp Way, Jean-Louis Leroy .. _lightning05: .. |lightning05V| replace:: (video) .. _lightning05V: https://youtu.be/bT11fx2BpEc

.. |lightning06| replace:: Copy Elision, Jon Kalb .. _lightning06: lightning_talks/copy_elision__jon_kalb__cppnow_05092018.pdf .. |lightning06V| replace:: (video) .. _lightning06V: https://youtu.be/fSB57PiXpRw

.. |lightning07| replace:: Placement New, Jonathan Müller .. _lightning07: .. |lightning07V| replace:: (video) .. _lightning07V: https://youtu.be/kyK1lTwADYg

.. |lightning08| replace:: 11 Years of Boost at Conservancy, Bradley Kuhn .. _lightning08: .. |lightning08V| replace:: (video) .. _lightning08V: https://youtu.be/CBl4UsbUjNU

.. |lightning09| replace:: Workflow Modeling with Boost.Graph Library, Philip Salvaggio .. _lightning09: .. |lightning09V| replace:: (video) .. _lightning09V: https://youtu.be/OLP6HWpBkXM

.. |lightning10| replace:: Lightning Talk, Odin Holmes .. _lightning10: .. |lightning10V| replace:: (video) .. _lightning10V: https://youtu.be/RMvazscApWw

.. |lightning11| replace:: Avoiding Virtual Call in CRTP, Daniel Dilts .. _lightning11: .. |lightning11V| replace:: (video) .. _lightning11V: https://youtu.be/0hy3DhE5pIo

.. |lightning12| replace:: SFINAE: Substitution Failure Is Not An Error, Agustín Bergé .. _lightning12: .. |lightning12V| replace:: (video) .. _lightning12V: https://youtu.be/40HTly0lt4s

.. |lightning13| replace:: C++ Puzzler, Leor Zolman .. _lightning13: .. |lightning13V| replace:: (video) .. _lightning13V: https://youtu.be/kLZRDT3XHmc

.. |lightning14| replace:: Puzzler, Leor Zolman .. _lightning14: .. |lightning14V| replace:: (video) .. _lightning14V: https://youtu.be/_1kXvS_A3hc

.. |lightning16| replace:: C++ Potpurri 2, Richard Powell .. _lightning16: .. |lightning16V| replace:: (video) .. _lightning16V: https://youtu.be/J--cJlhYEAI

.. |lightning17| replace:: An allocator is a handle to a heap, Arthur O'Dwyer .. _lightning17: .. |lightning17V| replace:: (video) .. _lightning17V: https://youtu.be/j9HsT7o8Suc

.. |lightning19| replace:: ForTransformers vs deCeePeePeeticons, Tobias Loew .. _lightning19: .. |lightning19V| replace:: (video) .. _lightning19V: https://youtu.be/YBqYHtf9Sw0

.. |lightning20| replace:: C++ Execution Model in Five Minutes, Bryce Adelstein Lelbach .. _lightning20: lightning_talks/cpp_execution_model_in_five_minutes__bryce_adelstein_lelbach__cppnow_05072018.pdf .. |lightning20V| replace:: (video) .. _lightning20V: https://youtu.be/lrG0C1Ugdz4

.. |lightning21| replace:: Talk to me! The art of reporting a Bug, Anastasia Kazakova .. _lightning21: .. |lightning21V| replace:: (video) .. _lightning21V: https://youtu.be/0R-WJ3-2W2M

.. |lightning22| replace:: Poetry Club, ThePhD .. _lightning22: lightning_talks/poetry__jeanheyd_meneide__cppnow_05072018.pdf .. |lightning22V| replace:: (video) .. _lightning22V: https://youtu.be/EG5v7CSmO3s

.. |lightning23| replace:: for_each_adjacent, Marcel Ebmer .. _lightning23: .. |lightning23V| replace:: (video) .. _lightning23V: https://youtu.be/0_k-2Nil2XI

.. |lightning24| replace:: C++ Reflection via Clang LibTooling, Griffin Downs .. _lightning24: .. |lightning24V| replace:: (video) .. _lightning24V: https://youtu.be/cj3dL_ngCBk

.. |lightning25| replace:: The Object Upside Down, Louis Dionne .. _lightning25: .. |lightning25V| replace:: (video) .. _lightning25V: https://youtu.be/yTb6xz_FSkY

.. |lightning26| replace:: We have always been at war with West Constia, Phil Nash .. _lightning26: .. |lightning26V| replace:: (video) .. _lightning26V: https://youtu.be/Ci4xOvOvAWo

.. |lightning27| replace:: This is Why We Can't have Nice Things, Jon Kalb .. _lightning27: .. |lightning27V| replace:: (video) .. _lightning27V: https://youtu.be/fovPSk8ixK4

.. |lightning28| replace:: A Fool's Consistency, Jonathan Müller .. _lightning28: .. |lightning28V| replace:: (video) .. _lightning28V: https://youtu.be/_27NHB1OlNI

.. |lightning29| replace:: Ø, Serj Bilokhatniuk .. _lightning29: .. |lightning29V| replace:: (video) .. _lightning29V: https://youtu.be/6uon_MtpcwE

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].