Cockatiel is resilience and transient-fault-handling library that allows developers to express policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback.
Two commonly perceived problems of the programming language Go are that handling errors is verbose and repetitive parametric polymorphism is not available This post is about the intersection of those problems and Rob Pike’s recommendation on the former.
When you build real world applications, you are not always on the "happy path". You must deal with validation, logging, network and service errors, and other annoyances. How do you manage all this within a functional paradigm, when you can't use exceptions, or do early returns, and when you have no stateful data?
TL;DR: Curious about error handling? Scroll down to the final approach and/or check out the example project. Angular 2 is a great framework that provides nice tools to create awesome component-based…