2017-07-31 76 views
0

我一直花時間最近掌握FP概念,尤其是免費的monad。我認爲我很瞭解自由單體背後的想法,但出現了一個問題。Scala免費monad與doobie結合

我一直在使用Doobie建立在免費單子之上。對我來說,將不同的代數組合起來(包括副產品),包括doobie是有意義的。在測試代​​數時,人們通常會創建一個測試解釋器。但對於像Doobie這樣的現有庫(代數有點大),我是否需要自己創建一個測試解釋器?對我而言,在這一點上使用免費的monad提供了許多樣板代碼。另外,如果方法錯誤,我想獲得一些反饋。

也許是一個更常見的問題,但是您傾向於使用它們的用例是什麼?你是否使用它們來構造幾乎所有的FP應用程序,或者是否只有免費的monad發光的特殊用例。

在此先感謝!

+0

看看http://frees.io/docs/ – Daenyth

回答

0

Doobie很棒,表面下很複雜,但使用起來很簡單。你不需要觸摸免費的monad來使用Doobie。

除非您爲Doobie項目做出貢獻,否則我沒有看到任何接觸免費monad的理由。

對於單元測試,您可以使用H2還有一個特殊的Doobie Spec軟件包。

https://tpolecat.github.io/doobie-0.2.1/11-Unit-Testing.html

關於自由單子的其他用途: 免費的單子是解決難題的一個非常複雜的工具。 功能編程新手的人都想使用所有閃亮的新玩具。這導致了很多過度工程。 :D

我知道的自由monad唯一的好用處是Doobie。