Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zshipko/futhark-bindgen

A Futhark binding generator for Rust and OCaml
https://github.com/zshipko/futhark-bindgen

futhark ocaml rust

Last synced: 24 days ago
JSON representation

A Futhark binding generator for Rust and OCaml

Awesome Lists containing this project

README

        

# futhark-bindgen



A [Futhark](https://futhark-lang.org) binding generator.

`futhark-bindgen` uses the [manifest](https://futhark.readthedocs.io/en/latest/c-api.html#manifest) created by Futhark
to generate bindings for multiple languages.

Supported languages:

- Rust
- OCaml

## Installation

With `cargo`:

```
$ cargo install futhark-bindgen
```

From source:

```
$ make install PREFIX=~/.local/bin
```

## Command-line usage

```
$ futhark-bindgen run test.fut test.rs # Rust output to ./test.rs
$ futhark-bindgen run test.fut test.ml # OCaml output to ./test.ml
```

The `--backend` flag can be used to select which Futhark backend to use: `c`, `multicore`,
`cuda`, `opencl` or `ispc`

See the output of `futhark-bindgen --help` for more information

## Example projects

- [Rust](https://github.com/zshipko/futhark-bindgen/tree/main/examples/rust)
- [OCaml](https://github.com/zshipko/futhark-bindgen/tree/main/examples/ocaml)