A functional pattern-matching library for JavaScript