J8SK

Sep. 19th, 2016 11:54 pm
xacid: (Default)
Написал тут на досуге SK на джаве

import java.util.function.Function;

public interface SK {

    // Kxy = x

    static <X, Y> Function<Y, X> K(X x) {
        return y -> x;
    }

    static <X, Y> Function<X, Function<Y, X>> K() {
        return x -> y -> x;
    }


    // Sxyz = xz(yz)

    static <X, Y, Z> Function<Z, X> S(
            final Function<Z, Function<Y, X>> x,
            final Function<Z, Y> y) {
        return z -> x.apply(z).apply(y.apply(z));
    }

    static <X, Y, Z> Function<
            Function<Z, Function<Y, X>>,
            Function<Function<Z, Y>, Function<Z, X>>
            > S() {
        return x -> y -> z -> x.apply(z).apply(y.apply(z));
    }

}


теперь думаю что с ним дальше делать? )

вобще планы были более грандиозные но пока вот на этом остановился както

может еще продолжу в том же духе если будет настроение)

Update: вот продолжил :)

Profile

xacid: (Default)
xacid

June 2017

S M T W T F S
    123
45678910
11121314151617
18192021222324
252627282930 

Syndicate

RSS Atom

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 26th, 2017 06:34 am
Powered by Dreamwidth Studios