https://github.com/rockofox/indigo
Functional programming language
https://github.com/rockofox/indigo
functional-programming language programming-language
Last synced: about 2 months ago
JSON representation
Functional programming language
- Host: GitHub
- URL: https://github.com/rockofox/indigo
- Owner: rockofox
- License: mpl-2.0
- Created: 2023-03-19T22:25:08.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-11-19T19:11:25.000Z (2 months ago)
- Last Synced: 2025-11-19T20:24:14.656Z (2 months ago)
- Topics: functional-programming, language, programming-language
- Language: Haskell
- Homepage: https://indigo.fox.boo
- Size: 5.34 MB
- Stars: 8
- Watchers: 0
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Indigo
Indigo is an **experimental** programming language designed to lay focus on functional programming, clearity and convinience.
Inspired by F# and Haskell, it aims to deliver satisfactory functional programming features, while exploring new concepts.
```julia
struct Person = (name: String, age: Int)
let greet (p: Person): IO = println "Hello " ++ p.name
let main: IO = do
let person = Person { name: "Lily", age: 22 }
greet person
end
# Hello Lily
```
```julia
map (`*`2), [2, 4, 6, 8] # [4, 8, 12, 16]
```
### Features
* Structures
* Traits
* Polymorphism
* Partial Functions
* Lambda/Anonymous functions
* Pattern Matching
* Types
* Function Composition/Pipelines
* Imports
* Generics
* Refinement types (very WIP)
### Resources
* [Wiki](https://github.com/rockofox/indigo/wiki)
* [Website](https://indigo.fox.boo)
* [Fiddle](https://indigo-fiddle.fox.boo)