streamer.js

Easy to use lazy evaluation library


Keywords
ES6, ES7, library, javascript-modules, node, lazy, lazy-evaluation, collection, array, higher-order-functions, javascript, typescript
License
GPL-3.0
Install
npm install streamer.js@0.1.1

Documentation


Build Status codecov

Easy to use lazy evaluation library for JavaScript / TypeScript


Example:

Streamer([1, 2, 3, 4])
  .map(x => x * 2)
  .filter(x => x > 6)
  .take(2);

Piece of 🍰

FAQ

What is Streamer.js?

Streamer.js is a lazy evaluation for iterable data types (Set, Array, LinkedList, Generators, etc.). It can also send HTTP requests and ask the data from remote endpoints. Streamer.js tries to implement most of Kotlin Lazy Sequence methods.

What is "Lazy Evaluation"?

In programming language theory, lazy evaluation, or call-by-need is an evaluation strategy which delays the evaluation of an expression until its value is needed (non-strict evaluation).
Read more: https://en.wikipedia.org/wiki/Lazy_evaluation

Bug report

Please open a ticket in GitHub issues.

Contribution

Please create a branch for each patch and send a PR to GitHub. Make sure you write tests. There is a CI integarated with this repo.

License

GPLv3