Here’s another BoostCon video uploaded by Marshall Clow. This one is about Phoenix V3, by Hartmut Kaiser:
http://blip.tv/boostcon/phoenix-v3-an-overview-5250984
The slides for this talk can be found here: https://github.com/boostcon/2011_presentations/blob/master/mon/phoenix_v3.pdf?raw=true.
Phoenix will be the next generation of creating unnamed, inlined  polymorphic function objects. With V3 we combine the functionality of  Boost.Bind and Boost.Lambda, and arranges it into a new library. By  writing this new library, we were able to fix some limitations of the  aforementioned libraries without breaking backwardscompatibility. The  purpose of the talk will be to outline the importance and elegance of  functional programming (FP) in C++. The first part of the talk will give  an introduction into the Domain Specific Embedded Language (DSEL) we  defined with Phoenix. A DSEL is built with the help of regular C++  function and operator overloads. For Phoenix we defined such a language  that emulates C++, to give potential users a low entry into the world of  FP. While a lot of existing C++ code relies on higher order functions  (better known as function objects), e.g. the C++ standard library use  them as a way to let users customize operations in certain algorithms.  We focus the second part of the talk on examples on how to use Phoenix  instead of writing regular function objects and how to enable your  legacy code to be used inside Phoenix expressions. However, Phoenix is  more. Phoenix is equipped with a unique (in C++) mechanism to handle the  expressions discussed in the previous sections as data. This allows us  to handle Phoenix not in the C++ standard way but in any way you like.  An overview of these mechanisms will be given in the last part of the  talk to give potential users an insight on possible future applications  that might evolve around Phoenix.
GD Star Rating
loading...
			
			           
  			
Recent Comments