The Power of Composition (Scott Wlaschin) üzerine düşüncelerim - Bileşim peşinde Currying ve Monad
(ohyecloudy.com)- Yeniden kullanım yöntemlerinden biri olan bileşim; tipler ve fonksiyonlarla ilgilidir
- Tipler AND veya OR ile bileştirilir
- Input sayısı ile output sayısı aynı olduğunda fonksiyon bileşimi kolaydır
- Fonksiyonun output'unu bir sonraki fonksiyonun input'una vermek yeterlidir
- Sayılar farklı olduğunda bunu çözmek için bir yönteme ihtiyaç vardır
- Input sayısı daha fazlaysa Currying
- Input sayısını bire indirir
- Output sayısı daha fazlaysa Monad
- Output sayısını bire indirir ve işlendi / işlenmedi olarak ayırır
- İşlenmiş olanı doğrudan bir sonraki fonksiyona geçirir
- İşlenmemiş olanı fonksiyonla işlemeyi dener
- Meğer bunun adı Monad'mış
- Output'u Monad içine koyup
bindile fonksiyonları birleştiririz
- Output sayısını bire indirir ve işlendi / işlenmedi olarak ayırır
Fonksiyon bileşimi üzerinden anlatıp "neden?" sorusuna da cevap verdiği için anlaması kolaylaşıyor. Monad'ı bir kutuya koyup çıkarmak gibi anlatan yazılar gördüğümde pek anlayamamıştım. Şimdi düşününce bunun nedeni, o yazılarda "neden" kısmının eksik olmasıymış gibi geliyor.
2 yorum
Keyifle okudum~
Güzel bir yazı olmuş. Böyle görünce anlaması daha kolay.