Haskell version of Idris !-notation (bang notation)

前端 未结 3 550
伪装坚强ぢ
伪装坚强ぢ 2021-02-13 21:04

I\'ve had the luxury of learning a bit of Idris lately and one thing I\'ve found extremely convenient is the !-notation, which let\'s me shorten monadic code inside a do block s

3条回答
  •  梦谈多话
    2021-02-13 22:09

    Speaking of arrows...

    import Control.Arrow
    
    a' = Kleisli $ const a
    b' = Kleisli $ const b
    c' = Kleisli $ const c
    
    foo = (`runKleisli`()) $
      (a' &&& b') &&& c' >>> uncurry (uncurry someFunction)
    

    Not that I recommend this.

提交回复
热议问题