{"id":17254264,"url":"https://github.com/waynevanson/fp-ts-iterable","last_synced_at":"2026-02-28T06:22:08.288Z","repository":{"id":38312330,"uuid":"500616451","full_name":"waynevanson/fp-ts-iterable","owner":"waynevanson","description":"Lazy list programming via Javascript Iterable interface","archived":false,"fork":false,"pushed_at":"2022-08-14T05:40:34.000Z","size":225,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-24T04:46:31.306Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://waynevanson.github.io/fp-ts-iterable","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/waynevanson.png","metadata":{"files":{"readme":"readme.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-06-06T22:50:59.000Z","updated_at":"2022-08-20T16:13:35.000Z","dependencies_parsed_at":"2022-07-12T17:24:39.919Z","dependency_job_id":null,"html_url":"https://github.com/waynevanson/fp-ts-iterable","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waynevanson%2Ffp-ts-iterable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waynevanson%2Ffp-ts-iterable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waynevanson%2Ffp-ts-iterable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waynevanson%2Ffp-ts-iterable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/waynevanson","download_url":"https://codeload.github.com/waynevanson/fp-ts-iterable/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250566444,"owners_count":21451229,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T07:08:04.565Z","updated_at":"2026-02-28T06:22:03.232Z","avatar_url":"https://github.com/waynevanson.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# fp-ts-iterable\n\nfp-ts bindings for `Iterable` types, allowing for programming lazy and infinite lists.\n\nThis could (soon) be used as a drop in replacement for the module `fp-ts/ReadonlyArray`\n\n## Installation\n\n```sh\n# npm\nnpm install fp-ts-iterable\n\n# yarn\nyarn add fp-ts-iterable\n\n# pnpm\npnpm add fp-ts-iterable\n```\n\n## Documentation\n\nPlease visit the [documentation](https://waynevanson.github.io/fp-ts-iterable/) for the API surface.\n\n## Upcoming\n\n- Structures\n  - `IterableTask` for interop with `AsyncIterator`\n  - `NonemptyIterable`\n  - `NonempyIterableTask`\n\n## Recommendations\n\n### Coersion from types that are `Iterable`\n\n- If coersing from something like a `ReadonlyArray`, it's recommended to coerce it to an `Iterable` using `FromReadonlyArray`.\n- There is no performance benefit, but it could alleviate bugs before they happen.\n\n### `\\*Right*` functions\n\n- All functions using the word `Right` in their names require buffering all values so it knows where the end is.\n- If the `Iterable` is large or infinite, it may cause an out of memory error.\n  Ensure infinite iterables end by using a skip combinator that does not contain the word `Right`.\n\n### `AsyncIterable` (Upcoming)\n\n- `AsyncIterable\u003cA\u003e` is `Iterable\u003cPromise\u003cA\u003e\u003e`, but should be coerced to `Iterable\u003cTask\u003cA\u003e\u003e` via `FromAsyncIterable`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaynevanson%2Ffp-ts-iterable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwaynevanson%2Ffp-ts-iterable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaynevanson%2Ffp-ts-iterable/lists"}