UNPKG

js-slang

Version:

Javascript-based implementations of Source, written in Typescript

20 lines 681 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.stream = stream; exports.list_to_stream = list_to_stream; const list_1 = require("./list"); /** * Makes a Stream out of its arguments\ * LOW-LEVEL FUNCTION, NOT SOURCE */ function stream(...elements) { if (elements.length === 0) return null; const [item, ...rest] = elements; return (0, list_1.pair)(item, () => stream(...rest)); } // same as list_to_stream in stream.prelude.ts function list_to_stream(xs) { return (0, list_1.is_null)(xs) ? null : (0, list_1.pair)((0, list_1.head)(xs), () => list_to_stream((0, list_1.tail)(xs))); } //# sourceMappingURL=stream.js.map