Functional programming with C++ added