UNPKG

functionalscript

Version:

FunctionalScript is a purely functional subset of JavaScript

18 lines (17 loc) 416 B
const concat = (x, y) => ({ *[Symbol.iterator]() { yield* x; yield* y; } }); const filter = (i, p) => ({ *[Symbol.iterator]() { for (const x of i) { if (p(x)) { yield x; } } } }); export const mapSet = (map, k, v) => new Map(concat(map, [[k, v]])); export const mapDelete = (map, k) => new Map(filter(map, ([xk]) => xk !== k));