{"adoption": {"forks": 208, "observed_at": "2026-08-28T04:07:22.233007+00:00", "stars": 2793}, "canonical_url": "https://ross.abutalabs.com/products/futhark", "card": {"archived": false, "artifact_type": "cli-tool", "description": ":boom::computer::boom: A data-parallel functional programming language", "domain": ["programming-languages", "compilers", "gpu-computing", "performance"], "enriched": true, "function": ["compiler", "programming-language", "gpu-computing", "math", "concurrency"], "health_score": 100, "homepage": "http://futhark-lang.org", "language": "Haskell", "license": "ISC", "license_family": "permissive", "maturity": "active", "member_repos": ["diku-dk/futhark"], "name": "diku-dk/futhark", "platform": ["windows", "cli", "cross-platform"], "pushed_at": "2026-08-26T16:05:41+00:00", "repo": "diku-dk/futhark", "stars": 2793, "tags": ["futhark", "data-parallel", "functional-programming", "array-language", "opencl", "cuda", "hip", "hpc", "ml-family", "automatic-differentiation", "algorithms", "high-performance-computing", "linux", "macos", "gpu"], "topics": ["language", "boom", "gpu", "hpc", "compiler", "gpgpu", "futhark", "opencl", "cuda", "hacktoberfest"], "urls": [], "use_cases": ["accelerate array computations on the GPU without writing CUDA or OpenCL by hand", "compile a small compute-intensive kernel to call from Python, Rust, Haskell, or C", "write high-performance parallel numeric code in a functional language", "prototype GPGPU data-parallel algorithms with automatic differentiation", "generate multi-threaded CPU code for parallel workloads"], "what_it_is": "Futhark is a purely functional, statically typed data-parallel array programming language in the ML family, developed at the University of Copenhagen. Its optimizing ahead-of-time compiler generates efficient GPU code (CUDA, HIP, OpenCL) or multi-threaded CPU code, intended for compute-intensive kernels called from other languages.", "when_to_avoid": ["you need a general-purpose language for full applications - Futhark is meant for small compute-intensive parts", "you need graphics programming - it targets compute, not rendering", "you rely on features Futhark omits to guarantee high-performance parallelism"], "when_to_choose": ["you need high-performance data-parallel array code and want to avoid hand-written GPU kernels", "you want a small, purely functional language with a heavily optimizing compiler", "you need to embed fast compute kernels into applications written in other languages"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/futhark", "repo": "diku-dk/futhark", "role": "main", "score": 95}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:22.233007+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:49:13.838368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2dd231f2a53a43012a006d23781a2acad877b851997e304333a2d97b1188307d", "fetched_at": "2026-08-28T04:07:22.233007+00:00", "kind": "readme", "missing": false, "url": "https://github.com/diku-dk/futhark"}, {"content_hash": "d085a6bbe7f5968bc909b2d8cb54bf83e221697d37f21cdb7a8250ce61c909ea", "fetched_at": "2026-08-29T09:55:01.534638+00:00", "kind": "homepage", "missing": false, "url": "http://futhark-lang.org"}, {"content_hash": "1c435d99514a21084f45a018951d4193c86c402ede88306973d1cd6178362c13", "fetched_at": "2026-08-29T09:55:01.543877+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs.html"}, {"content_hash": "189dd068028787cc5a170c59e7ad09d723bbd1a017308efcbc50b0546a260eee", "fetched_at": "2026-08-29T09:55:01.545754+00:00", "kind": "site_page", "missing": false, "url": "https://futhark-lang.org/docs/prelude"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 86}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4961, "days_push": 7, "days_rel": 14, "gap_med": 30.5, "n_releases_24m": 21}, "score": 95, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}