Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/eyelash/moebius

a simple and fast functional programming language
https://github.com/eyelash/moebius

compiler cpp functional-language programming-language

Last synced: 3 months ago
JSON representation

a simple and fast functional programming language

Awesome Lists containing this project

README

        

# Moebius

a simple and fast functional programming language

## Selling Points

- simplicity
- performance
- safety
- a fast compiler

## Instructions

```bash
# clone the repo
git clone https://github.com/eyelash/moebius
# compile the compiler
cmake .
make
# compile some moebius code
./moebc examples/HelloWorld.moeb
# run the compiled code
examples/HelloWorld.moeb.exe
```

## Roadmap

- codegen
- [ ] x86
- [x] C
- [x] JavaScript
- optimizations
- [x] monomorphization
- [x] dead code elimination
- [x] inlining
- [x] constant propagation
- [x] tail call optimization
- [ ] common subexpression elimination
- [ ] register allocation
- types
- [x] integers
- [ ] floating-point numbers
- [x] closures
- [x] structs (product types)
- [x] enums (sum types)
- [x] arrays
- [x] strings
- [ ] interfaces
- [x] recursive types
- [x] first-class types
- operators
- [x] arithmetic (`+`, `-`, `*`, `/`, and `%`)
- [x] relational (`==`, `!=`, `<`, `<=`, `>`, and `>=`)
- [ ] logical (`&&`, `||`, and `!`)
- [x] compile-time garbage collection
- [x] compile-time reflection
- [ ] testing
- [ ] monadic IO
- [ ] async/await