choose wisely:
  1. (20180108) An Introduction to ADTs and Structural Pattern Matching in TypeScript
  2. (20150129) Composing Synchronous and Asynchronous Functions in JavaScript
  3. (20131201) Hanging up on Callbacks: Generators in ECMAScript 6
  4. (20131027) The JavaScript Event Loop: Explained