问题标签 [acid-state]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - 没有模板haskell的酸状态便利包装器?
在acid-state
教程中,所有示例都使用 Template Haskell。但是,由于某些原因,我不太热衷于使用它。
我知道可以在没有模板 haskell 的情况下使用酸状态,如下所示:http:
//mirror.seize.it/acid-state/examples/HelloWorldNoTH.hs
但是如果有任何方便的包装器或库来帮助更容易地使用酸状态(不使用模板haskell),我会徘徊吗?
PS:我的目的是为网络应用程序实现一个数据库层。
haskell - 我怎样才能让 cabal 安装酸状态?
我是 Haskell 的新手,想尝试 acid-state 库,但在尝试安装它时得到以下输出:
谢谢!
haskell - 从酸性状态查询中检索纯值
这看起来应该很容易,但是如果我使用的是 AcidState 的 Data.Acid.Memory.Pure 模块,如何从查询中获得纯值。我想我可以将这个问题概括为“我如何从 Update monad 中获得任何价值?”。你看,我正在尝试编写一个执行以下常规任务的测试:
- 用一个对象更新一个纯 AcidState
- 使用 IxSet 查询超出状态的对象
- 比较查询对象和更新返回的对象是否相等。
我需要一个纯“布尔”,以便轻松与测试框架集成。起初我以为我会简单地使用 Control.Monad.State 中的 runState,但我错了(或者只是做得不对)。我应该怎么办?
haskell - Snap、IO 和酸态
尝试在 Snap 中使用酸状态,但遇到了障碍。
这是我到目前为止得到的。
首先是我的酸态相关对象(这是一本带有 isbn 编号的虚拟书):
然后我实际尝试将它与 Snap 集成。如您所见,我在定义 __doQuery__ 函数时遇到了麻烦,它应该返回一个字符串 isbn:
对我所缺少的任何帮助将不胜感激。如果有不清楚的地方,请告诉我,我会更新问题。
haskell - 酸态示例错误
我正在尝试开始使用acid-state
一个项目,但我在运行演示时遇到了麻烦。
HelloWorld.hs
在我的 64 位机器上运行这个示例集合会给我错误
同样的事情HelloWorldNoTH.hs
也会发生。在 32 位系统上不会出现任何错误。有什么想法吗?我是否未能安装(或安装不当)某些必需的组件?
我正在使用 CabalThe Glorious Glasgow Haskell Compilation System, version 7.4.1
在 64 位 Debian Wheezy(通过软件包安装)上运行“” 。机器本身是 64 位 Core i3。32 位机器(成功运行了演示)没有明显的不同。haskell-platform
0.14.0
haskell - 无法在 Haskell 平台 2012.2.0.0 (Windows XP) 上安装酸状态
使用 cabal,我尝试在 Haskell Platform 2012.2.0.0 (Windows XP) 上安装 acid-state,但出现以下错误:
haskell - 酸状态查询的意外返回类型(Happstack)
我正在尝试使用一些附加功能扩展Happstack 速成课程博客:在主页上显示所有标签的列表。
我的博客记录是这样的:
我通过以下方式通过 id 获取博客文章(从速成课程中复制粘贴):
它工作正常。
当我尝试以类似方式查询所有标签时:
它行不通。错误堆栈跟踪是:
我不知道为什么返回类型query'
是[EventResult GetTags]
,而应该是[Text]
。
这个错误的原因是什么?有没有办法解决它?
haskell - AcidState 函数中的不明确类型变量
我在 Haskell Web 项目中遇到了错误Ambiguous type variable
。
相关代码是
这些错误专门抱怨insertItem
and changeItemStatus
,这两个都是acid-state
查询函数
withAccount
并且withItem
是帮助我处理Maybe
来自数据库的返回值的辅助函数。它们被定义为
好的,那么现在。
我已经多次阅读Happstack 速成课程中的 AcidState 文档,但没有多大帮助;他们直接在其响应生成函数中使用查询
- 我试过了,得到了同样的
Ambiguous type variable
错误,除了指向query'
调用iteslf, - 我真的不想这样做,因为那会迫使我混合我的模型/控制器代码和
- 对我的特殊情况没有帮助,因为它没有向我显示调用
query'
或update'
将要调用的函数的具体返回类型是什么(它们的函数都是AcidState DBName -> ServerPart Response
,因为它们直接生成响应)。
我试图通过使用表达式的片段来组合类型签名insertItem
,但每次尝试都给了我我认为更糟糕的错误。changeItemStatus
:t
No instance for (MonadIO m1)
我还不是一个特别熟练的 Haskeller,所以我觉得我唯一可以尝试的另一件事就是return $
在这个地方撒上随机 s,但这听起来不太可能真正解决问题或教学我什么。
我试图实现的一般概念是:“对数据库进行此更改,然后返回当前用户的相关元素的(可能更改的)列表”。
关于我接下来应该尝试什么,或者我具体哪里出错的任何提示?我是否以完全错误的方式思考这个问题?我是否可以就该主题查阅其他文件?
PS。我已经包含了我认为上面所有相关的代码,但是如果你想查看完整的源代码,它就在这里和这里。
编辑:完整类型错误
haskell - 试图用 Happstack 将 HSP 和 Acid-state 以一种形式结合在一起
我遵循了 Happstack Crash Course,现在我正在尝试将不同的东西放在一起:
从“使用改革的类型安全表单处理”(http://happstack.com/docs/crashcourse/Reform.html#reform)我已经编写了这个注册表单:
现在我想在表单成功时添加注册用户。我在酸状态(http://happstack.com/docs/crashcourse/AcidState.html#ixset)的帮助下编写了这个 UserBase
这些片段单独工作,但我可以insertUser acid user
在哪里插入insertAndRenderUser
?
我希望你能帮助
我
谢谢弗洛