{"id":20338734,"url":"https://github.com/Voyrox/Haskell","last_synced_at":"2025-05-08T02:31:49.971Z","repository":{"id":154099581,"uuid":"578033740","full_name":"Voyrox/Haskell","owner":"Voyrox","description":"Software Engineering Unit (UNSW) - This repository serves as a comprehensive guide to several fundamental concepts in Haskell. Each project within this repository elucidates a specific topic in Haskell, providing a succinct and practical implementation to aid understanding.","archived":false,"fork":false,"pushed_at":"2023-07-16T08:52:33.000Z","size":11894,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-03T19:04:09.856Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Haskell","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/Voyrox.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":"2022-12-14T05:04:59.000Z","updated_at":"2025-03-11T04:44:27.000Z","dependencies_parsed_at":null,"dependency_job_id":"0e75b0fe-4ff2-4e3d-abb1-3aa9de3790d3","html_url":"https://github.com/Voyrox/Haskell","commit_stats":null,"previous_names":["voyrox/haskell"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Voyrox%2FHaskell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Voyrox%2FHaskell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Voyrox%2FHaskell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Voyrox%2FHaskell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Voyrox","download_url":"https://codeload.github.com/Voyrox/Haskell/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252986839,"owners_count":21836238,"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-11-14T21:14:00.462Z","updated_at":"2025-05-08T02:31:49.963Z","avatar_url":"https://github.com/Voyrox.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Haskell Concepts Demonstrations\n\nThis repository serves as a comprehensive guide to several fundamental concepts in Haskell. Each project within this repository elucidates a specific topic in Haskell, providing a succinct and practical implementation to aid understanding.\n\n## Project Summaries:\n\n### 1. Logging\nThe 'Logging' project demonstrates basic IO operations in Haskell. The code simply prints \"Hello, Haskell!\" to the console.\n\n### 2. Functions\nThe 'Functions' project is an introduction to defining and using functions in Haskell. It includes examples of a function to add two numbers together, and a function to concatenate two strings.\n\n### 3. Typeclasses\nThe 'Typeclasses' project covers the basics of typeclasses in Haskell. It includes a custom typeclass called 'Showable' and instances of 'Showable' for the `Int` and `Bool` types. The project also includes a function that prints the 'showValue' of a 'Showable' type.\n\n### 4. Pattern Matching\nThe 'Pattern Matching' project demonstrates the use of pattern matching in function definitions. It provides examples for checking if a number is positive, negative, or zero, calculating the factorial of a non-negative integer, and concatenating two lists.\n\n### 5. List Manipulation\nThe 'List Manipulation' project provides examples of how to manipulate lists in Haskell. This includes doubling each element in a list, filtering even numbers from a list, summing all elements in a list, and generating a list of numbers within a given range.\n\n### 6. Monads and IO\nThe 'Monads and IO' project is an introduction to monads and IO operations in Haskell. It includes a function that asks for the user's name and greets them, and another function that performs an IO operation.\n\n### 7. Modules and Packages\nThe 'Modules and Packages' project shows how to define and import custom modules in Haskell. It includes a module called 'MyModule' that contains a function to greet a user.\n\n### 8. Error Handling\nThe 'Error Handling' project demonstrates error handling in Haskell. It includes a function that divides two numbers and handles the case of division by zero, as well as a function that handles the result of the division operation, printing an error message if one occurred, or the result if it was successful.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FVoyrox%2FHaskell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FVoyrox%2FHaskell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FVoyrox%2FHaskell/lists"}