scala – 通过免费Monad和Coproduct的口译员自动选择
发布时间:2020-12-16 09:42:12 所属栏目:安全 来源:网络整理
导读:我正在玩应用程序架构和免费的monk在haskell。我已经把它放下了,除了如何将我的“指令”提升到我的副产品的正确插槽中,没有明确地给出完整的左/右路径。 这是我从一开始就使用的haskell示例:https://gist.github.com/aaronlevin/87465696ba6c554bc72b#fil
我正在玩应用程序架构和免费的monk在haskell。我已经把它放下了,除了如何将我的“指令”提升到我的副产品的正确插槽中,没有明确地给出完整的左/右路径。
这是我从一开始就使用的haskell示例:https://gist.github.com/aaronlevin/87465696ba6c554bc72b#file-reasonable-hs 在这里,为了将类型注入到副产品中,我们明确提到了路径。 例如: Program :: Coproduct Interaction (Coproduct Auth Logging) a logC :: (Functor f) => (forall a. Logging a -> f a) -> String -> Free f () logger :: String -> Free Program () logger = logC (Program . Coproduct . Right . Coproduct . Right) 在这里,记录器必须用Coproduct手动放在副产品的正确位置。对 。副产品。对 Runar在scala中的讲话使用隐式类型转换和一个Inject类型类来实现这个结果:https://gist.github.com/runarorama/a8fab38e473fafa0921d#file-gistfile1-scala-L119 简而言之,我想知道有没有办法在haskell这样做。 谢谢! 解决方法
从评论中填写答案部分到原始问题…
原来的Haskell纸可以在这里找到:Data Types à la Carte Haskell实现可以在这里找到:ALaCarte.hs (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- FrontEnd 步步高升:bootstrap3-validation.js 必填项星号(*
- angularjs – 如何将结果从angular-ui-bootstrap的模态传递
- [WebService Test]: 1. Web Service 概念和原理的总结
- 单击时如何读取angularjs中的鼠标位置?
- AngularJS和contentEditable双向绑定不能按预期工作
- 使用karma jasmine在angular2中模拟keyup.space事件以进行单
- 如何优雅的利用YUM安装软件
- 利用Axis2开发WebService(2)---编写和发布WebService
- unix – 如何使用awk进行文件复制.在awk中使用拆分复制不起
- 解决Docker Image镜像无法删除问题的方法