C++ Weekly Episode 20: C++17's Fold Expressions - Introduction—Jason Turner
Episode 20 of C++ Weekly.
C++17's Fold Expressions - Introduction
by Jason Turner
About the show:
This week Jason introduces C++17's fold expressions.
September 13-19, Aurora, CO, USA
October 25, Pavia, Italy
November 6-8, Berlin, Germany
November 3-8, Kona, HI, USA
By Jason Turner | Jul 18, 2016 12:29 PM | Tags: None
Episode 20 of C++ Weekly.
C++17's Fold Expressions - Introduction
by Jason Turner
About the show:
This week Jason introduces C++17's fold expressions.
By robwirving | Jul 15, 2016 09:05 AM | Tags: None
Episode 63 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Alfred Bratterud, CEO of IncludeOS to discuss Microservice applications with the IncludeOS platform.
CppCast Episode 63: IncludeOS with Alfred Bratterud
by Rob Irving and Jason Turner
About the interviewee:
Alfred has been doing research towards IncludeOS since 2013, and got a PhD scholarship based on the early work in 2014. The IEEE CloudCom paper introducing the IncludeOS prototype was published in 2015 and he spun out a startup around IncludeOS in 2016, in collaboration with Oslo and Akershus university college (the largest institution for engineering education in Norway). He's currently focusing 100% on developing IncludeOS from research experiment to a production ready platform for cloud services.
Alfred holds BSc and MSc in computer science, with focus on logic and computability, from the university of Oslo. He has 10+ years of industrial programming experience, mostly in web services. He's been working at Oslo university college since 2011, teaching various subjects ranging from operating systems, sysadmin and firewalls to web development. He started learning C++ when he took over a C++ course at the college in 2011. A very good year to start C++.
By Adrien Hamelin | Jul 15, 2016 08:00 AM | Tags: community
Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2015 for you to enjoy. Here is today’s feature:
Organizational Leadership with Modern C++
by Kevin Kostrzewa & Johm Wyman
Summary of the talk:
With the "C++ Renaissance" it is imperative that the technical leadership prove their mettle to lead a large organization into adopting modern practices and idioms.
In this talk, John and Kevin will discuss various techniques that they have employed to help drive their large development organization (~ 75 software engineers) towards a culture of modernization - some techniques that have worked well, and some that have not.
This will not be a discussion on specifics and nuances of the language. This is more a "fuzzy" discussion on what it means to be both at the forefront of the language and a leader / champion for your peers.
By Adrien Hamelin | Jul 13, 2016 08:00 AM | Tags: performance advanced
Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2015 for you to enjoy. Here is today’s feature:
completion T : Improving the future T with monads
by Travis Gockel
Summary of the talk:
std::future provides us a mechanism for asynchronous communication between a provider and receiver. However, the C++14 standard does not allow for actual asynchronous programming, as the only ways to interact with an std::future are blocking calls. The proposed then helps, but the interface is awkward and can be extremely slow when handling exceptions. Here, I will talk about completion a high-performance, async-only and monadic alternative to std::future and how it is used at SolidFire.
By Jason Turner | Jul 12, 2016 12:50 PM | Tags: efficiency c++14 basics
Episode 19 of C++ Weekly.
C++14 For The Commodore 64
by Jason Turner
About the show:
This week Jason demonstrates using modern C++ to write extremely efficient high level programs for the Commodore 64.
By Adrien Hamelin | Jul 11, 2016 08:00 AM | Tags: intermediate efficiency
Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2015 for you to enjoy. Here is today’s feature:
Functional Design Explained
by David Sankel
Summary of the talk:
An oft-cited benefit of learning a functional language is that it changes one's approach to solving problems for the better. The functional approach has such a strict emphasis on simplistic and highly composable solutions that an otherwise varied landscape of solution possibilities narrows down to only a few novel options.
This talk introduces functional design and showcases its application to several real-world problems. It will briefly cover denotational semantics and several math-based programming abstractions. Finally, the talk will conclude with a comparison of functional solutions to the results more traditional design methodologies.
No prior knowledge of functional programming or functional programming languages is required for this talk. All the examples make use of the C++ programming language.
By Adrien Hamelin | Jul 8, 2016 08:00 AM | Tags: intermediate efficiency c++14
Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2015 for you to enjoy. Here is today’s feature:
Simple, Extensible Pattern Matching in C++14
by John R. Bandela
Summary of the talk:
Recently, there has been in increased interest in applying functional programming techniques to C++. A very convenient construct that is used in functional programming languages is pattern matching. Due to the features introduced in C++11 and C++14 we can actually write a simple, easy to use, understandable, and extensible pattern matching library that is header only and uses no macros.
In this talks we will discuss the motivations for pattern matching, and see examples of use from other languages. We will then go on to design and implement a pattern matching library in C++. Particular attention will be payed to new C++14 features that greatly simplify the implementation such as integer_sequence, function return type deduction, and generic lambdas. The implementation will also serve a practical guide to using variadic templates and std::tuple.
We will show how the library can be easily extended and customized by working through some examples of customization such as working with user defined classes and structs, pointers, tuples, boost::optional, and boost::variant. At the end of the session, the audience will have an appreciation for pattern matching, as well as a sense that the C++11/14 features open new paradigms without sacrificing understandable code.
By robwirving | Jul 8, 2016 07:28 AM | Tags: None
Episode 62 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Elias Daler, CS student and Indie game developer to discuss game development with C++ and Lua.
CppCast Episode 62: C++ and Lua Game Development with Elias Daler
by Rob Irving and Jason Turner
About the interviewee:
Elias Daler is a CS student, indie game developer, and C++ enthusiast. Passion for game development was the starting point for learning C++ and he's been programming in it for 6 years. Elias is working on a game called Re:creation and various open source C++ libraries. He also writes various articles about game development, C++ and Lua/C++ integration at eliasdaler.wordpress.com. These articles are well received and frequently shared on various game development subreddits and forums.
By Adrien Hamelin | Jul 6, 2016 08:00 AM | Tags: intermediate efficiency
Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2015 for you to enjoy. Here is today’s feature:
Time Programming Fundamentals
by Greg Miller
Summary of the talk:
"Time zones are logical and easy to use." -- No one ever
Time programming is notoriously difficult and error prone. Attempts at handling daylight-saving time, for example, often yield baffling code, which of course is explained by a similarly misguided comment. Programmer confusion can spread virally throughout the codebase when these misconceptions find their way into library interfaces.
The problem is not that dates and times are fundamentally complicated (though they are). The problem is the lack of a simplified mental model with library support. This would give programmers the concepts and vocabulary necessary to reason about and discuss these concepts, and the ability to express this reasoning in simple C++ terms.
In this talk I will show how date and time programming evolved into what it is today. I will present a greatly simplified mental model that applies to all programming languages. I will show clear examples using an open source C++ library that implements these simplified concepts. And I will present practical tips for proper time hygiene that should be used by everyone immediately.
By Jason Turner | Jul 5, 2016 10:20 AM | Tags: intermediate c++17
Episode 18 of C++ Weekly.
C++17's constexpr if
by Jason Turner
About the show:
This week Jason previews C++17's upcoming "constexpr if" functionality.