Монады — абстракция или костыль? [JPoint`16]

Монады — абстракция или костыль? [JPoint`16]

Во время этого доклада мы постараемся разобраться, что же такое монада и стоит ли внедрять их в код при каждом удобном случае. Особенно актуальным этот вопрос становится с введением лямбда-выражений в Java 8.

Для начала мы рассмотрим традиционное математическое определение монады и составим ему аналогичное, но родное, на Java. Затем мы сконструируем простенькую монаду Promise для представления результатов асинхронных запросов. Этот код поможет нам решить ряд вопросов про монады, изучить их законы, и понять позволяет ли Java 8 создание полноценных монад и, самое главное, зачем? Может вы уже вовсю пользуетесь монадами, не подозревая того?

P.S. Чтобы насладиться докладом необязательно знать хаскели и прочую математическую базу.

5d01eb7205b787b5991db85a11ee5e68?s=128

Oleg Šelajev

April 22, 2016
Tweet