{"id":22495483,"url":"https://github.com/matzeb/fluffy","last_synced_at":"2025-08-03T02:31:15.498Z","repository":{"id":540975,"uuid":"170662","full_name":"MatzeB/fluffy","owner":"MatzeB","description":"The fluffy programming language main repository","archived":false,"fork":false,"pushed_at":"2013-02-02T09:27:07.000Z","size":3276,"stargazers_count":23,"open_issues_count":1,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2023-04-14T18:22:54.360Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://fluffy.sf.net","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/MatzeB.png","metadata":{"files":{"readme":"README","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}},"created_at":"2009-04-08T00:56:19.000Z","updated_at":"2022-06-01T01:37:29.000Z","dependencies_parsed_at":"2022-07-07T14:10:21.776Z","dependency_job_id":null,"html_url":"https://github.com/MatzeB/fluffy","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatzeB%2Ffluffy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatzeB%2Ffluffy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatzeB%2Ffluffy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatzeB%2Ffluffy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatzeB","download_url":"https://codeload.github.com/MatzeB/fluffy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228517370,"owners_count":17932434,"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-12-06T19:29:19.846Z","updated_at":"2024-12-06T19:29:20.615Z","avatar_url":"https://github.com/MatzeB.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\t\t\t\t\t\tThe fluffy programming language\n\n\n\n1. Introduction\n\nfluffy is an experimental language designed around the following features:\n\t- support the low-level constructs and performance needed for system\n\t  programming and speed critical algorithms\n\t- generic programming with parametric polymorphy and typeclasses\n\t- extensible through plugins\n\t- consistent syntax\n\nThe implementation utilizes the libfirm backend for producing highly optimized\nmachine assembly.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n2. Building and Installation\n\n2.1 Prerequisites\n\n* Any ANSI C99 compiler (the makefiles are configure for gcc)\n\n* libfirm 1.9.0 or later\n* libcore 0.9.0 or later (needed for libfirm)\n* gcc is needed if you want to assemble and link programs produces by the\n  fluffy compiler\n\n2.2 Building\n\nOpen the Makefile and change the variables if needed (on linux systems it\nshould work out of the box). Then type\n\nmake\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n3. Language\n\nThere's no detailed language description yet as the language is still evolving.\nHowever you could look at the code here:\n\n\ttest/typeclass2.fluffy\t- generic sorting algorithm implemented with\n                              typeclasses\n\ttest/sdl                - simple image viewer utlitzing the libSDL library\n\t                          (you currently have to manually link the assembly\n\t\t\t\t\t\t\t   against libsdl)\n\tstdlib/*                - declarations for large parts of the C standard\n\t                          library. Also including some helper coder for\n\t\t\t\t\t\t\t  variable sized array.\n\tplugins/*               - Language extensions plugins (for and while loops)\n\t                          developed in the language itself\n\tbenchmarks/*            - several smaller benchmark programs\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n4. Contact\n\nMatthias Braun \u003cmatze@braunis.de\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatzeb%2Ffluffy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatzeb%2Ffluffy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatzeb%2Ffluffy/lists"}