https://github.com/fink-lang/fink
The official ƒink compiler.
https://github.com/fink-lang/fink
compiler programming-language
Last synced: 24 days ago
JSON representation
The official ƒink compiler.
- Host: GitHub
- URL: https://github.com/fink-lang/fink
- Owner: fink-lang
- License: mit
- Created: 2026-03-07T21:56:55.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-05-26T18:35:13.000Z (28 days ago)
- Last Synced: 2026-05-26T19:18:28.549Z (28 days ago)
- Topics: compiler, programming-language
- Language: Rust
- Homepage:
- Size: 4.55 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
README
# ƒink
A functional programming language and compiler toolchain, written in Rust and targeting WebAssembly.
ƒink is a refined successor to the [original fink](https://github.com/fink-lang) (which compiled to JavaScript and was self-hosted). The long-term goal is a self-hosting compiler.
> **Status:** early and experimental. Language, syntax, and tooling are all subject to change.
## Install
### macOS and Linux (Homebrew / Linuxbrew)
```sh
brew tap fink-lang/tap
brew install fink
```
This installs the `fink` toolchain. Native cross-compilation — `fink compile --target=` — works out of the box for all tier-1 targets (`aarch64`/`x86_64` on macOS and Linux).
### From source
ƒink builds with stable Rust (edition 2024). See [CONTRIBUTING.md](CONTRIBUTING.md) for the full Makefile-driven workflow.
```sh
make deps-install
make build
make test
```
## Hello, ƒink
Save as `hello.fnk`:
```fink
{stdout, write} = import 'std/io.fnk'
main = fn ..args:
write stdout, 'Hello, ƒink!'
0
```
Run it:
```sh
fink hello.fnk
```
## Documentation
- [docs/language.md](docs/language.md) — the language reference.
- [docs/execution-model.md](docs/execution-model.md) — how a ƒink program runs: values, effects, module lifecycle.
- [docs/debugging.md](docs/debugging.md) — running ƒink under a debugger.
- [docs/roadmap.md](docs/roadmap.md) — designed features not yet reachable.
- [CONTRIBUTING.md](CONTRIBUTING.md) — build, test, contribute.
- [fink-lang.org](https://fink-lang.org/) — the same docs rendered, with an in-browser playground.
## Editor integration
- [vscode-fink](https://github.com/fink-lang/vscode-fink) — syntax, language features, and a DAP client for `fink dap`.
## License
[MIT](LICENSE) © fink-lang