{"id":28259803,"url":"https://github.com/p-obrthr/functional-csharp","last_synced_at":"2026-04-15T23:31:30.387Z","repository":{"id":294020941,"uuid":"985327679","full_name":"p-obrthr/functional-csharp","owner":"p-obrthr","description":"functional experimentation with C#","archived":false,"fork":false,"pushed_at":"2025-05-18T15:14:24.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-23T19:58:27.309Z","etag":null,"topics":["csharp","dotnet","functional-programming"],"latest_commit_sha":null,"homepage":"","language":"C#","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/p-obrthr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2025-05-17T14:30:14.000Z","updated_at":"2025-05-18T15:14:27.000Z","dependencies_parsed_at":"2025-05-18T14:45:27.485Z","dependency_job_id":null,"html_url":"https://github.com/p-obrthr/functional-csharp","commit_stats":null,"previous_names":["p-obrthr/functional-csharp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/p-obrthr/functional-csharp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-obrthr%2Ffunctional-csharp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-obrthr%2Ffunctional-csharp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-obrthr%2Ffunctional-csharp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-obrthr%2Ffunctional-csharp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/p-obrthr","download_url":"https://codeload.github.com/p-obrthr/functional-csharp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-obrthr%2Ffunctional-csharp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31864945,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"ssl_error","status_checked_at":"2026-04-15T15:24:39.138Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["csharp","dotnet","functional-programming"],"created_at":"2025-05-20T03:12:59.146Z","updated_at":"2026-04-15T23:31:30.376Z","avatar_url":"https://github.com/p-obrthr.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## functional-csharp\n\nThis repository is an experimental project exploring functional programming techniques within the C# language.\n\nWhile C# is a multi-paradigm language that supports functional programming alongside other styles, the majority of existing solutions tend to be predominantly object-oriented and imperative.\n\nThe aim of this project is to emphasize functional programming principles by minimizing object orientation and mutable state. Instead, it focuses on things like immutability or pure functions wherever possible.\n\n\u003e **NOTE:** It is acknowledged that the experiments conducted here not conform to idiomatic C# standards but rather serve as a learning platform and proof of concept.\n\n### Project Structure\n\n- **FunctionalCsharp.Core** – *ClassLibrary*, contains the primary logic and core classes  \n- **FunctionalCsharp.Tests** – *TestProject*, implements tests for the core logic  \n- **FunctionalCsharp.Web** – *Blazor*, provides a GUI for example user interaction\n\n### Overview\n\n| Concepts                               | Core                              | Web                                                 | \n|:---------------------------------------|:----------------------------------|:----------------------------------------------------|\n| pure function, immutability, recursion | `CounterService.cs`, `Helpers.cs` | `Counter.razor(.cs)`, `CounterComponent.razor(.cs)` |\n| option (some/none), map                | `Option.cs`                       | `Greeting.razor(.cs)`                               | \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp-obrthr%2Ffunctional-csharp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fp-obrthr%2Ffunctional-csharp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp-obrthr%2Ffunctional-csharp/lists"}