Monads are about "happy paths"

This keynote does a good job in stressing that monads are all about allowing programmers to write explicit code only for the happy path in the specific context at hand (e.g., in the context of a "throwable" computation)…

Context object vs. function calls

function foo() { console.log(this.a); } var obj = { a: 2, foo: foo }; obj.foo(); Regardless of whether foo() is initially declared on obj, or is added as a reference later (as this snippet shows), in neither case is the function really "owned" or "contained" by the obj object. However... the…