{"id":217278,"name":"persistent-vector","ecosystem":"hackage","description":"This package provides persistent vectors based on array mapped\ntries.  The implementation is based on the persistent vectors used\nin clojure, but in a Haskell-style API.  The API is modeled after\nData.Sequence from the containers library.\n\nTechnically, the element-wise operations are O(log(n)), but the\nunderlying tree cannot be more than 7 or 8 levels deep so this is\neffectively constant time.\n\nOne change from the clojure implementation is that this version supports\nO(1) slicing, though it does cheat a little.  Slices retain references\nto elements that cannot be indexed.  These extra references (and the space\nthey occupy) can be reclaimed by shrinking the slice.  This seems like\na reasonable tradeoff, and, I believe, mirrors the behavior of the vector\nlibrary.\n\nHighlights:\n\nO(1) append element, indexing, updates, length, and slicing\n\nReasonably compact representation","homepage":"https://github.com/travitch/persistent-vector","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/travitch/persistent-vector","keywords_array":["bsd3","data","library","Propose Tags"],"namespace":null,"versions_count":5,"first_release_published_at":"2012-08-28T22:44:31.000Z","latest_release_published_at":"2020-10-29T06:21:47.000Z","latest_release_number":"0.2.0","last_synced_at":"2026-05-15T16:31:35.072Z","created_at":"2022-04-05T23:52:57.638Z","updated_at":"2026-05-15T16:31:35.073Z","registry_url":"https://hackage.haskell.org/package/persistent-vector","install_command":"cabal install persistent-vector","documentation_url":null,"metadata":{},"repo_metadata":{"id":4454305,"uuid":"5592889","full_name":"travitch/persistent-vector","owner":"travitch","description":"Persistent vectors for Haskell based on array mapped tries","archived":false,"fork":false,"pushed_at":"2022-05-09T06:48:26.000Z","size":86,"stargazers_count":27,"open_issues_count":10,"forks_count":4,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-03-15T00:51:48.388Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/travitch.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-08-28T22:11:32.000Z","updated_at":"2023-08-26T16:12:56.000Z","dependencies_parsed_at":"2022-09-21T11:11:29.722Z","dependency_job_id":null,"html_url":"https://github.com/travitch/persistent-vector","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/travitch","download_url":"https://codeload.github.com/travitch/persistent-vector/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":202653806,"owners_count":14038877,"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"},"owner_record":{"login":"travitch","name":"Tristan Ravitch","uuid":"354470","kind":"user","description":"","email":"","website":"http://ravit.ch","location":"Portland, OR","twitter":null,"company":"AWS","icon_url":"https://avatars.githubusercontent.com/u/354470?u=6f4fa2fa64f81edd31fc0c0d99b2d04c06222a21\u0026v=4","repositories_count":41,"last_synced_at":"2023-03-12T04:25:42.771Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/travitch","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T02:41:27.610Z","updated_at":"2023-03-12T04:25:42.796Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/travitch","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/travitch/repositories"},"tags":[{"name":"v0.2.0","sha":"db2a8dcb531eac504fe1e193be998a7b95e187db","kind":"commit","published_at":"2020-10-29T06:19:24.000Z","download_url":"https://codeload.github.com/travitch/persistent-vector/tar.gz/v0.2.0","html_url":"https://github.com/travitch/persistent-vector/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/tags/v0.2.0/manifests"},{"name":"v0.1.0.1","sha":"ba9bd49cc73fa533d2ebaee0c47f3eaf2b7d5ce6","kind":"commit","published_at":"2012-08-29T04:29:54.000Z","download_url":"https://codeload.github.com/travitch/persistent-vector/tar.gz/v0.1.0.1","html_url":"https://github.com/travitch/persistent-vector/releases/tag/v0.1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/tags/v0.1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/tags/v0.1.0.1/manifests"}]},"repo_metadata_updated_at":"2024-04-15T01:40:22.820Z","dependent_packages_count":1,"downloads":3725,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":39.316941494043775,"dependent_repos_count":55.143477495452146,"dependent_packages_count":5.962091426559475,"stargazers_count":14.641159556364064,"forks_count":16.45443342526847,"average":26.303620679537584},"purl":"pkg:hackage/persistent-vector","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/hackage/persistent-vector","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/hackage/persistent-vector","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/hackage/persistent-vector/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-03-15T00:43:41.997Z","issues_count":18,"pull_requests_count":16,"avg_time_to_close_issue":25195557.777777776,"avg_time_to_close_pull_request":114211.06666666667,"issues_closed_count":9,"pull_requests_closed_count":15,"pull_request_authors_count":3,"issue_authors_count":6,"avg_comments_per_issue":2.944444444444444,"avg_comments_per_pull_request":2.5,"merged_pull_requests_count":12,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/travitch%2Fpersistent-vector/issues","maintainers":[{"login":"travitch","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/travitch"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/persistent-vector/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/persistent-vector/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/persistent-vector/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/persistent-vector/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/persistent-vector/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/persistent-vector/codemeta","maintainers":[{"uuid":"TristanRavitch","login":"TristanRavitch","name":null,"email":null,"url":null,"packages_count":11,"html_url":"https://hackage.haskell.org/user/TristanRavitch","role":null,"created_at":"2022-11-14T19:13:35.275Z","updated_at":"2022-11-14T19:13:35.275Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/maintainers/TristanRavitch/packages"}]}