C++Now 2019 has ended
Wednesday, May 8 • 16:30 - 18:00
Parametric Expressions: A Proposed Language Feature

Log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
This presentation will explain and review Parametric Expressions (P1221), a proposed language feature for C++. Parametric Expressions are a hygienic macro on expressions that occur during semantic analysis and template instantiation. Simply put, they are functions without an actual function call or type. This allows working with intermediate "placeholder expressions" such as overloaded functions and parameter packs resulting in more concise interfaces that hide scary template code, while also providing a means for lazy evaluation. Because it lacks overloading, function type instantiation, type deduction, SFINAE, and all of the other features that function templates provide, it can make build times considerably faster especially when the type names are bloated.

First, there will be an entry level expository for those who have no idea what Parametric Expressions are along with simple, motivating use cases. Then we will gradually work our way up to more complicated uses that would benefit library authors involving techniques such as mixing compile-time with run-time computations.

Audience participation and discussion is highly encouraged.

avatar for Jason Rice

Jason Rice

Jason is a web applications programmer with an appetite for C++ metaprogramming having made small contributions to Boost.Hana. He is actively working on the library Nbdl, waiting for the day when C++ takes over the web.

Wednesday May 8, 2019 16:30 - 18:00 MDT
Flug Auditorium