Abstract
C++ is a multiparadigm programming language. So the programmer may choose and combine between structural, procedural, object oriented, generic or functional features of C++ to solve his problem. Especially the functional aspect of C++ lambda functions with, type inference and the function std::bind and std::function has grown in modern C++ and is quietly evolving with the next C++ standard.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Type traits, 13 February 2016. http://en.cppreference.com/w/cpp/header/type_traits
Webpage, 13 February 2016. http://en.cppreference.com/w/
Proposal n3701, 2 July 2013. https://isocpp.org/blog/2013/07/new-paper-n3701-concepts-lite-a.-sutton-b.-stroustrup-g.-dos-reis
std::optional, 13 May 2016. http://en.cppreference.com/w/cpp/experimental/optional
Maybe monad, 18 June 2016. https://en.wikipedia.org/wiki/Monad_
Syntactic sugar, 26 February 2016. https://en.wikipedia.org/wiki/Syntactic_sugar
Fold variations in haskell, 3 April 2016. https://en.wikibooks.org/wiki/Haskell/Lists_III#Folds
Fold variations in haskell, 3 April 2016. http://en.cppreference.com/w/cpp/language/fold
C++17, 3 June 2016. https://en.wikipedia.org/wiki/C
Proposal n3721, 3 June 2016. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3721.pdf
Eric Niebler: Ranges library, 3 March 2016. https://ericniebler.github.io/std/wg21/D4128.html
Bjarne Stroustrup: Concepts, 13 March 2016. https://isocpp.org/blog/2013/02/concepts-lite-constraining-templates-with-predicates-andrew-sutton-bjarne-s
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Grimm, R. (2019). Programming in a Functional Style in C++. In: Zsók, V., Porkoláb, Z., Horváth, Z. (eds) Central European Functional Programming School. CEFP 2015. Lecture Notes in Computer Science(), vol 10094. Springer, Cham. https://doi.org/10.1007/978-3-030-28346-9_4
Download citation
DOI: https://doi.org/10.1007/978-3-030-28346-9_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-28345-2
Online ISBN: 978-3-030-28346-9
eBook Packages: Computer ScienceComputer Science (R0)