Skip to main content

Fuyu

A concurrent, functional programming language

👀 Stay tuned! Fuyu is not yet released. Follow progress on the GitHub repository .

Fuyu is a statically typed, concurrent, functional programming language for building reliable concurrent software. Running on the BEAM, it combines immutable data, scalable concurrency, type inference, pattern matching, higher-order functions, and traits in a concise declarative syntax.

Givens

Givens are values that the compiler automatically wires through a program based on context, which enable controllable and configurable approaches to polymorphism.

Scalable concurrency

Compile to native code and run on Fuyu's own lightweight runtime, which can spawn hundreds of thousands of concurrent tasks. Concurrency is highly scalable, letting you tackle massive workloads.

Static typing

Every expression's type is verified at compile time. Inconsistent types cause the compiler to reject the program, eliminating an entire class of runtime errors before the code ever runs.

Type inference

Write concise code without repetitive annotations. While function signatures stay explicit, the compiler automatically infers the types of all other expressions, preserving safety with minimal visual noise.

Declarative style

Use pattern matching and algebraic effects to describe what to do, not how to do it. Let the compiler help you by checking exhaustiveness, managing side-effects, and generating optimized code.

Immutability

Immutability ensures that values never change after creation, giving you referential transparency and making programs easier to reason about, test, and refactor.