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

https://github.com/LunaStev/Wave

A versatile programming language designed for high performance, safety, and seamless integration across diverse domains, from low-level systems programming to web development and AI.
https://github.com/LunaStev/Wave

compiler low-level-programming programming-language wave

Last synced: 7 months ago
JSON representation

A versatile programming language designed for high performance, safety, and seamless integration across diverse domains, from low-level systems programming to web development and AI.

Awesome Lists containing this project

README

          


Wave Programming Language Logo

Wave Programming Language



Website
Contributing
LICENSE




Discord


Email

---

> **Warning:**
> The official version of this project has not yet been released. The first version will be distributed as v0.0.1.

![Latest version](https://img.shields.io/github/v/release/LunaStev/Wave?style=for-the-badge&include_prereleases)

![Code size](https://img.shields.io/github/languages/code-size/LunaStev/Wave?style=for-the-badge&logo=github)
![Downloads](https://img.shields.io/github/downloads/LunaStev/Wave/total?color=%2324cc24&style=for-the-badge&logo=github)
![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/LunaStev/Wave/rust.yml?logo=rust&style=for-the-badge&branch=master)

---

## Overview

**Wave** is a next-generation programming language designed for developing operating systems, system software, and applications—entirely using **Wave**.
We're building a **Wave** compiler with full hardware access.

---

## Sponsor Us

Wave is an open-source programming language built with love, care, and a long-term vision.
It’s a project that aims to push the boundaries of what low-level languages can be — without sacrificing clarity or safety.

If you believe in that vision, even a small gesture of support can make a big difference.
Wave is developed by an independent creator with no corporate backing, and your sponsorship helps keep it alive and evolving.

[![Sponsor LunaStev](https://img.shields.io/badge/Sponsor%20LunaStev-%23ea4aaa?style=for-the-badge&logo=github-sponsors&logoColor=white)](https://github.com/sponsors/LunaStev)

---

## Examples

### Fibonacci sequence

```wave
fun fibonacci(n: i32) -> i32 {
if (n == 0) {
return 0;
}

if (n == 1) {
return 1;
}

var prev :i32 = 0;
var curr :i32 = 1;
var next :i32;
var i :i32 = 2;

while (i <= n) {
next = prev + curr;
prev = curr;
curr = next;
i = i + 1;
}

return curr;
}

fun main() {
var i :i32 = 0;
var result :i32;

while (i <= 10) {
result = fibonacci(i);
println("fibonacci({}) = {}", i, result);
i = i + 1;
}

println("END FIBONACCI");
}
```

### Pointer Swap Example

```wave
fun main() {
var a: i32 = 10;
var b: i32 = 20;

var p1: ptr = &a;
var p2: ptr = &b;

println("Before:");
println("a = {}, b = {}", a, b);
println("p1 = {}, p2 = {}", deref p1, deref p2);

var temp: i32 = deref p1;
deref p1 = deref p2;
deref p2 = temp;

println("After:");
println("a = {}, b = {}", a, b);
println("p1 = {}, p2 = {}", deref p1, deref p2);
}
```

More examples are available inside `test/`.

---

## Concept


Wave Concept Diagram

---

## Sponsors ❤️

A huge thank you to our sponsors for supporting this project!



heymanbug


heymanbug

---

## Contributing

Interested in contributing? Check out our [Contributing Guide](https://github.com/LunaStev/Wave/wiki/Contributing) to get started.

---

## Cool graphs

[![Star History Chart](https://api.star-history.com/svg?repos=LunaStev/Wave&type=Date)](https://star-history.com/#LunaStev/Wave&Date)

---

## LICENSE

Wave is released under the [MPL-2.0 License](LICENSE).