{"id":18032379,"url":"https://github.com/dmitriz/functional-examples","last_synced_at":"2025-04-04T21:08:28.243Z","repository":{"id":14129050,"uuid":"76075452","full_name":"dmitriz/functional-examples","owner":"dmitriz","description":"Examples with Functional JavaScript, following Professor Frisby's course","archived":false,"fork":false,"pushed_at":"2024-11-04T00:14:27.000Z","size":138,"stargazers_count":180,"open_issues_count":2,"forks_count":22,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-28T20:08:07.009Z","etag":null,"topics":["category-theory","functional-js","functional-programming","functor","monad"],"latest_commit_sha":null,"homepage":"https://egghead.io/lessons/javascript-refactoring-imperative-code-to-a-single-composed-expression-using-box","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dmitriz.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}},"created_at":"2016-12-09T22:36:01.000Z","updated_at":"2025-01-29T12:50:30.000Z","dependencies_parsed_at":"2023-01-11T18:44:56.354Z","dependency_job_id":"c44b2e5f-64de-4937-b2ef-627c490bd8d8","html_url":"https://github.com/dmitriz/functional-examples","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriz%2Ffunctional-examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriz%2Ffunctional-examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriz%2Ffunctional-examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmitriz%2Ffunctional-examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dmitriz","download_url":"https://codeload.github.com/dmitriz/functional-examples/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247249526,"owners_count":20908212,"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":["category-theory","functional-js","functional-programming","functor","monad"],"created_at":"2024-10-30T10:13:13.549Z","updated_at":"2025-04-04T21:08:28.223Z","avatar_url":"https://github.com/dmitriz.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"### functional-examples\n\n\n\n\n\n## [New functional library `cpsfy`](https://github.com/dmitriz/cpsfy)\n\nUPDATE. Check out my new advanced functional library: \nhttps://github.com/dmitriz/cpsfy\n\n# Examples with Functional JavaScript\n\nHeavily annotated examples from the awesome videos\n\u003ca href=\"https://egghead.io/lessons/javascript-refactoring-imperative-code-to-a-single-composed-expression-using-box\"\u003eProfessor Frisby Introduces Composable Functional JavaScript\u003c/a\u003e,\nsee also \u003ca href=\"https://www.reddit.com/r/javascript/comments/5hfq6n/100_minutes_of_free_functional_programming/\"\u003ethe discussion on Reddit\u003c/a\u003e and \u003ca href=\"https://news.ycombinator.com/item?id=13167149\"\u003eon Hacker News\u003c/a\u003e.\n\nSee also the wonderful e-book \u003ca href=\"https://drboolean.gitbooks.io/mostly-adequate-guide/content/\"\u003e\nProfessor Frisby's Mostly Adequate Guide to Functional Programming\u003c/a\u003e\nby the same author (See also https://github.com/MostlyAdequate/mostly-adequate-guide for the updates).\n\n\n## What makes Prof. Frisby's course and book awesome?\nBoth course and book amazingly manage to avoid suffering from the two widespread diseases when explaining abstract functional concepts: \n\n- The first disease is to stay with abstract artifically simplified examples that can be easily manipulated \ndirectly without the theory, thus failing to illustrate the very benefits of the theory and abstraction. \nThe reader not familiar with real world uses of that abstraction is therefore struggling to appreciate its usefulness.\n\n- The second disease is to bring complete nontrivial real world examples relying on all technical details involved,\nincluding those not relevant to the point of the explanation. The reader not familiar with those technical details\ncan feel distracted if not confused.\n\nProfessor Frisby masterfully manages to navigate the reader through convincing real world examples\ndemonstrating real benefits of the functional abstractions with sharp focus and no distraction by unnecessary details.\n\n\n\n\n## Running Examples\nInstall the packages with either of\n```js\nyarn install\nnpm install\n```\nthen enter the `examples` directory and run the files directly with node\n```js\nnode \u003cfile.js\u003e\n```\n\n\n## Related Projects\n- [Monadic Libraries Examples with Tests](https://github.com/dmitriz/monadic-libraries-examples)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmitriz%2Ffunctional-examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdmitriz%2Ffunctional-examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmitriz%2Ffunctional-examples/lists"}