lubeck 0.0.0-prealpha.5-abandoned

Functional programming framework written in cutting edge rust
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use lubeck::prelude::*;

fn main() {
    let mk_tup_app = |first: usize| move |second: usize| (first, second);
    let xs = vec![3, 4, 5, 6];
    let fs = [11, 21, 31, 41].map(mk_tup_app).to_vec();

    let applicative_tuples = xs.app(fs);
    println!("tuples through applicative: {applicative_tuples:?}");

    let mk_tup_mon = |first: usize| vec![(first, 3), (first, 4), (first, 5), (first, 6)];
    let xs = vec![11, 21, 31, 41];

    let monad_tuples = xs.bind(mk_tup_mon);
    println!("tuples through monad: {monad_tuples:?}");
}