小编hdb*_*db3的帖子

HDBC ODBC MySQL - 查询仅在编译时失败

我的程序使用runghc运行,但编译时出现错误"在查询期间丢失与MySQL服务器的连接"时,同一程序始终失败.失败与长时间运行的查询无关(它是小表上的CREATE VIEW).MySQL错误日志中没有任何内容,log_warnings = 1.环境 - ubuntu(13.04 ;-),本地数据库)

mysql odbc haskell hdbc

5
推荐指数
1
解决办法
374
查看次数

我应该如何组合St monad和State monad(或等效的)?

我正在构建代码以获得理解,实际上是Solitaire求解器.我有一个简单的暴力实现,它使用状态monad,实际上只是为了证明我可以使用它(它只保留每个移动的计数).但是现在我想使用Unboxed Mutable数组来记录被访问的​​板,从而在我到达已经通过另一条路径访问的板位置时快速评估路径.似乎ST monad不允许我线程隐式状态,但是我必须使用ST(或IO)才能访问Mutable数组.因此,似乎我必须结合两个Monads - State来线程化状态(实际上包括一个Mutable数组),另一个(ST)来获得Mutable数组函数.

  • 这是正确的吗?
  • 如果是这样,有没有比Data.Array.ST/Control.Monad.ST/Control.Monad.ST和mtl的(规范?)组合更好的选择?
  • 如果我走这条路线,那么堆叠ST和State的顺序是否重要?
  • 为了避免使用monad变压器,我应该考虑根据ST或State中的任何一个或两个来编辑我自己的单个Monad吗?

arrays haskell mutable state-monad monad-transformers

3
推荐指数
2
解决办法
342
查看次数

在c中有一个非致命的等同于断言吗?

我想写assert语句但不会中止该程序.所以也许使用与assert()完全相同的语法,但称为expect().当然我可以编写自己的,但断言非常聪明(例如,它不仅知道文件和行号,而且甚至知道不是TRUE的表达式).我当然可以深入了解库和Cv/Cc解决方案.但这是一个非常明显的通用请求,我无法相信已经没有一个好的解决方案了.这当然应该很容易找到...

c assert

2
推荐指数
1
解决办法
569
查看次数

标签 统计

haskell ×2

arrays ×1

assert ×1

c ×1

hdbc ×1

monad-transformers ×1

mutable ×1

mysql ×1

odbc ×1

state-monad ×1