You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(description "Halide image processing pipeline generation; overlaps with futharkiser for image convolutions but Halide is schedule-based while Futhark is functional"))
30
35
(project "squeakwell"
31
36
(relationship "sibling")
32
37
(description "Database recovery via constraint propagation"))
@@ -35,4 +40,11 @@
35
40
(description "Shared Idris2 verified library"))
36
41
(project "typell"
37
42
(relationship "dependency")
38
-
(description "Type theory engine"))))
43
+
(description "Type theory engine")))
44
+
45
+
(external-dependencies
46
+
(project "futhark"
47
+
(relationship "compilation-target")
48
+
(url "https://futhark-lang.org")
49
+
(description "Purely functional array language by DIKU Copenhagen — compiles to OpenCL/CUDA GPU kernels")
(consequences "Users write zero target language code; all complexity in the -iser"))
12
+
(context "Need to make Futhark GPU programming accessible without steep learning curves")
13
+
(decision "Use manifest-driven code generation: user describes WHAT array operations to accelerate, futharkiser generates Futhark SOACs and compiles to GPU kernels")
14
+
(consequences "Users write zero Futhark/CUDA/OpenCL code; all complexity in the -iser"))
15
15
16
16
(adr "002-abi-ffi-standard"
17
17
(status "accepted")
18
-
(context "Need verified interop between Rust CLI, target language, and user code")
19
-
(decision "Idris2 ABI for formal proofs, Zig FFI for C-ABI bridge")
20
-
(consequences "Compile-time correctness guarantees; zero runtime overhead from proofs"))
18
+
(context "Need verified interop between Rust CLI, Futhark GPU kernels, and user code")
19
+
(decision "Idris2 ABI for formal proofs of parallelism safety and GPU buffer layouts; Zig FFI for C-ABI bridge to Futhark runtime")
20
+
(consequences "Compile-time correctness guarantees for GPU memory management; zero runtime overhead from proofs"))
21
21
22
-
(adr "003-rsr-template"
22
+
(adr "003-futhark-soacs"
23
+
(status "accepted")
24
+
(context "Futhark's power comes from its second-order array combinators (SOACs)")
(explanation "User intent captured in TOML; all generation is deterministic and reproducible"))
56
+
(explanation "User intent captured in futharkiser.toml; all generation is deterministic and reproducible"))
38
57
(principle "Formally verified bridges"
39
-
(explanation "Idris2 dependent types prove interface correctness at compile time"))
40
-
(principle "Zero target language exposure"
41
-
(explanation "Users never write Chapel/Julia/Futhark/etc. — the -iser handles everything"))))
58
+
(explanation "Idris2 dependent types prove parallelism safety (associativity of reduce operators, purity of map functions, array shape compatibility) at compile time"))
59
+
(principle "Zero GPU expertise required"
60
+
(explanation "Users never write Futhark, CUDA, or OpenCL — futharkiser generates everything from high-level array operation annotations"))
61
+
(principle "GPU buffer layout proofs"
62
+
(explanation "The ABI layer includes a GPUBufferDescriptor struct layout that is verified to match between Idris2 and Zig at compile time (32 bytes, 8-byte aligned)"))))
4. Read `.machine_readable/6a2/STATE.a2ml` for current project state
118
133
119
134
## ATTESTATION PROOF
120
135
121
-
**"I have read the AI manifest. All machine-readable content (state files, anchors, policies, bot directives, contractiles, AI guides) is located in `.machine_readable/` ONLY, and community metadata is in `.github/`. I will not create duplicate files in the root directory."**
136
+
**"I have read the AI manifest for futharkiser. All machine-readable content (state files, anchors, policies, bot directives, contractiles, AI guides) is located in `.machine_readable/` ONLY, and community metadata is in `.github/`. I will not create duplicate files in the root directory."**
0 commit comments