{"id":18510036,"url":"https://github.com/lfex/lutil","last_synced_at":"2025-08-25T19:04:03.493Z","repository":{"id":18575650,"uuid":"21778580","full_name":"lfex/lutil","owner":"lfex","description":"LFE Utility Modules (successor to lfe-utils)","archived":false,"fork":false,"pushed_at":"2025-07-20T21:14:39.000Z","size":742,"stargazers_count":19,"open_issues_count":5,"forks_count":8,"subscribers_count":5,"default_branch":"release/0.16.x","last_synced_at":"2025-08-20T03:54:31.303Z","etag":null,"topics":["beam","erlang","hacktoberfest","lfe","utilities","utility-library"],"latest_commit_sha":null,"homepage":"","language":"LFE","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lfex.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-07-12T23:17:33.000Z","updated_at":"2025-07-20T21:11:16.000Z","dependencies_parsed_at":"2025-01-11T16:30:20.705Z","dependency_job_id":"cbc32c88-1ef0-4e1c-9edb-9f897f563be9","html_url":"https://github.com/lfex/lutil","commit_stats":null,"previous_names":[],"tags_count":58,"template":false,"template_full_name":null,"purl":"pkg:github/lfex/lutil","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lfex%2Flutil","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lfex%2Flutil/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lfex%2Flutil/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lfex%2Flutil/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lfex","download_url":"https://codeload.github.com/lfex/lutil/tar.gz/refs/heads/release/0.16.x","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lfex%2Flutil/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271732362,"owners_count":24811309,"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","status":"online","status_checked_at":"2025-08-23T02:00:09.327Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["beam","erlang","hacktoberfest","lfe","utilities","utility-library"],"created_at":"2024-11-06T15:20:18.056Z","updated_at":"2025-08-25T19:04:03.478Z","avatar_url":"https://github.com/lfex.png","language":"LFE","funding_links":[],"categories":[],"sub_categories":[],"readme":"# lutil\n\n[![Build Status][gh-actions-badge]][gh-actions]\n[![LFE Versions][lfe-badge]][lfe]\n[![Erlang Versions][erlang-badge]][versions]\n[![Tags][github-tags-badge]][github-tags]\n[![Downloads][hex-downloads]][hex-package]\n\n*Utility functions for LFE*\n\n[![Project Logo][logo]][logo-large]\n\n##### Contents\n\n* [Introduction](#introduction-)\n* [Dependencies](#dependencies-)\n* [Installation](#installation-)\n* [Usage](#usage-)\n  * [Modules](#modules-)\n  * [Macros](#macros-)\n* [License](#license-)\n\n## Introduction [\u0026#x219F;](#contents)\n\nlutil offers several modules and macros with convenience functions that can\nbe easily incorporated into projects without having to re-implement these\nlittle functions all the time.\n\nlutil also explores new LFE functions and macros that may be of interest to\nLFE-proper; if they fare well here, we will submit proposals for inclusion.\n\nNote that with the release of 0.14, many deprecated functions and macros that have\neither been moved into LFE itself or other LFE libraries were removed and are\nno longer available in the library. The last version with those functions\npresent is  0.13.5.\n\n## Dependencies [\u0026#x219F;](#contents)\n\nAs of version 0.7.0, this project assumes that you have\n[rebar3](https://github.com/rebar/rebar3) installed somewhere in your `$PATH`.\nIt no longer uses the old version of rebar. If you do not wish to use rebar3,\nyou may use the most recent rebar2-compatible release of lutil: 0.6.7.\n\n## Installation [\u0026#x219F;](#contents)\n\nIn your `rebar.config` file, update your `deps` section to include\n`lutil`:\n\n```erlang\n{deps, [\n  {lutil, \"0.16.0\"}}}\n]}\n```\n\n## Usage [\u0026#x219F;](#contents)\n\n### Modules [\u0026#x219F;](#contents)\n\nFor the modules, usage is the same as any other Erlang or LFE library :-)\n\nSome example usage:\n\n```cl\n\u003e (lutil-math:dot-product '(1 2 3) '(4 5 6))\n32\n\n\u003e (lutil-tuple:cat (tuple 1 2) (tuple 3 4))\n#(1 2 3 4)\n\u003e (lutil-tuple:cat (list (tuple 1 2) (tuple 3 4) (tuple 5 6)))\n#(1 2 3 4 5 6)\n\nlfe\u003e (lutil-list:chunks (lists:seq 1 32) 8 #(by-parts))\n((1 2 3 4)\n (5 6 7 8)\n (9 10 11 12)\n (13 14 15 16)\n (17 18 19 20)\n (21 22 23 24)\n (25 26 27 28)\n (29 30 31 32))\nlfe\u003e (lutil-list:chunks (lists:seq 1 32) 8 #(by-length))\n((1 2 3 4 5 6 7 8)\n (9 10 11 12 13 14 15 16)\n (17 18 19 20 21 22 23 24)\n (25 26 27 28 29 30 31 32))\n```\n\n### Macros [\u0026#x219F;](#contents)\n\nlutil offers the `create-table` macro for use with more easily working\ngenerating Mnesia tables. Example usage is available [here](https://github.com/oubiwann/mnesia-tutorial/blob/master/src/structure.lfe).\n\nIf you are looking for the Clojure macros which used to be in lutil, they have\nan interesting history: they were first moved to their own project, and then\nadded to the [LFE stdlib][clj docs]!\n\n## License [\u0026#x219F;](#contents)\n\nBSD 3-Clause License\n\n```\nCopyright © 2013-2025, Duncan McGreggor \u003coubiwann@gmail.com\u003e\nCopyright © 2016, Eric Bailey \u003ceric@ericb.me\u003e\nCopyright © 2015, arpunk \u003carpunk@cryptolab.net\u003e\n                  osense \u003ckrupicka.adam@gmail.com\u003e\nCopyright © 2014, Torbjorn Tornkvist \u003ckruskakli@gmail.com\u003e\n                  Døkkarr Hirðisson \u003cdokkarr@lfe.io\u003e\n                  Dreki Þórgísl \u003cdreki@billo.systems\u003e\\\nCopyright © 2009, Tim Dysinger \u003ctim@dysinger.net\u003e\n```\n\n[//]: ---Named-Links---\n\n[logo]: priv/images/lutil-x250.png\n[logo-large]: priv/images/lutil-x700.png\n[gh-actions-badge]: https://github.com/lfex/lutil/workflows/ci%2Fcd/badge.svg\n[gh-actions]: https://github.com/lfex/lutil/actions\n[lfe]: https://github.com/lfe/lfe\n[lfe-badge]: https://img.shields.io/badge/lfe-2.1-blue.svg\n[erlang-badge]: https://img.shields.io/badge/erlang-24+-blue.svg\n[versions]: https://github.com/lfex/lutil/blob/master/.travis.yml\n[github-tags]: https://github.com/lfex/lutil/tags\n[github-tags-badge]: https://img.shields.io/github/tag/lfex/lutil.svg\n[clj docs]: https://github.com/rvirding/lfe/blob/develop/doc/lfe_clj.txt\n[hex-badge]: https://img.shields.io/hexpm/v/lutil.svg?maxAge=2592000\n[hex-package]: https://hex.pm/packages/lutil\n[hex-downloads]: https://img.shields.io/hexpm/dt/lutil.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flfex%2Flutil","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flfex%2Flutil","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flfex%2Flutil/lists"}