https://github.com/adebola-io/whirlwind
Programming language for clear, concise and clever computing.
https://github.com/adebola-io/whirlwind
extension interpreter language language-server-protocol library programming-language runtime rust typechecker typescript
Last synced: 11 months ago
JSON representation
Programming language for clear, concise and clever computing.
- Host: GitHub
- URL: https://github.com/adebola-io/whirlwind
- Owner: adebola-io
- License: apache-2.0
- Created: 2023-08-26T02:28:49.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-11-09T20:56:19.000Z (over 1 year ago)
- Last Synced: 2025-04-24T07:42:30.964Z (about 1 year ago)
- Topics: extension, interpreter, language, language-server-protocol, library, programming-language, runtime, rust, typechecker, typescript
- Language: Rust
- Homepage: https://wrl.vercel.app
- Size: 3.06 MB
- Stars: 10
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: docs/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: docs/CODE_OF_CONDUCT.md
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
README
> **THIS PROJECT IS 55% INCOMPLETE. LOOK AWAY.**
Whirlwind.
Whirlwind is an open-source, statically-typed programming language for quickly and easily writing maintainable software. It is designed to be practical, easy to read and efficient.
## Documentation 📑
The [Whirlwind website](http://whirlwind-lang.vercel.app) is still pending. For more information relating to the source code, refer to the [docs](https://github.com/adebola-io/whirlwind/tree/master/docs) folder.
## Features ✨
- First Class Functions.
- Static, Nominal Typing System.
- Support for Generic Programming.
- Support for Union Types.
- Inbuilt Testing capabilities.
- Modular organization.
## Syntax 📐
Whirlwind is inspired heavily by the syntax of already existing languages. An example of Whirlwind code is:
```ts
/// Function to add two numbers.
function add(a: i32, b: i32) -> i32 {
return a + b
}
/// Entry to the program.
function main() {
add(2, 3)
}
```
## Roadmap and Implementation Status 🛠️
To view the planned and implemented features in the development of Whirlwind, please refer to the [roadmap](./docs/roadmap).