Time and Location
The introduction of lambdas and first class function objects forever changed the nature of C++, opening up the floodgates to functional programming. Sometimes the best library design is based on a pattern that’s very familiar to a Haskell programmer but alien to a C++ programmer. The new std::future proposal for C++17 hides several functional patterns including that of a monad — the boogeyman of generations of imperative programmers. But once seen in action, the monad becomes just one more pattern in the toolbox of a library designer.
Bartosz Milewski always tries to be where the action is. He started as a quantum physicist when superstrings were hot, joined the software industry to build the search engine for Microsoft Windows, became an avid proponent of object-oriented programming, and wrote a book on C++. He got into concurrency and parallelism when the multicores hit the market, and now he’s evangelizing functional programming as the Holy Grail of software development.
A Word From Our Sponsor
We wanted to introduce ourselves to the C++ community! Aerotek is a national staffing firm with a 30 year legacy of being the best! Aerotek is the largest technical staffing firm in the US, with over 200 offices nationwide. We staff for a variety of industries for a wide range of skill sets, including engineering, skilled trade, administrative and office support, and scientific and clinical studies. My name is Hope Rich, and I work in our engineering division with a focus on embedded systems as a Sr. Engineering Recruiter for the greater Seattle area. My partner Tyler Roush and myself work with companies in the aerospace, medical device, and consumer electronics industries to help staff for engineering needs from an embedded SW background, as well as for roles in mechanical, electrical, manufacturing, and quality engineering skill sets. In embedded, we focus to connect great engineers with a background in HW design, Firmware, middleware, and embedded SW applications development and test. Please visit our web page for additional details at http://www.aerotek.com/