小编dan*_*dan的帖子

对于像个人提要阅读器这样的应用程序,sqlite3与CouchDB的优势是什么?

假设我想构建一个将RSS和Atom提要下载到本地计算机的提要阅读器,并允许您在本地查看它们.使用CouchDB或sqlite3作为此类应用程序的数据存储区有哪些优缺点?

sqlite couchdb

3
推荐指数
1
解决办法
3305
查看次数

使用CouchDB与Hadoop存储/分析Web应用程序日志数据的优点是什么?

我想从使用普通Rails日志文件升级到我的Web应用程序,因此我可以分析页面视图和使用模式.我听说有时会使用CouchDB.

另一方面,我知道有些人只是将纯文本日志文件提供给Hadoop并将它们缩减为汇总统计信息,然后将它们插入到MySQL中.

这两种日志文件记录和分析方法的优缺点是什么?

logging analytics hadoop couchdb ruby-on-rails

3
推荐指数
1
解决办法
534
查看次数

使用CamelCase命名Ruby Constants是不好的风格?

大多数Ruby常量遵循具有全部大写的C约定.

但是使用CamelCase命名Ruby常量被认为是合法的风格吗?我只是认为以这种方式输入更容易,因为我的Caps Lock被重新映射到CTRL.

ruby coding-style

3
推荐指数
1
解决办法
1228
查看次数

使用Nokogiri删除没有文本的<p>元素

鉴于Nokogiri中的HTML文档,我想删除<p>没有实际文本的所有节点.这包括<p>带有空格和/或<br/>标记的元素.最优雅的方式是什么?

ruby nokogiri

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

构建基本Windows.Form的这个简单F#代码的C#版本是什么?

我刚开始一起学习F#和C#.下面的F#代码是Chris Smith的Programming F#书中略有调整的例子.

C#中的等价物会是什么样的?

open System.Windows.Forms

let form = new Form(Text="Click Me", TopMost=true)

form.MouseClick.AddHandler(
  new MouseEventHandler(
    fun sender clickArgs -> printfn "MouseClickEvent @ [%d, %d] %O" clickArgs.X clickArgs.Y clickArgs.Button
  )
);;

form.ShowDialog();;
Run Code Online (Sandbox Code Playgroud)

c# f#

3
推荐指数
1
解决办法
139
查看次数

如何在PostgreSQL中执行ALTER DATABASE $ current_database

我正在尝试在我提供的SQL脚本中执行此操作psql:

ALTER DATABASE dbname SET SEARCH_PATH TO myschema,public
Run Code Online (Sandbox Code Playgroud)

但我需要dbname动态设置为当前数据库而不是硬编码.

这在PostgreSQL中是否可行?我试过这个,但它不起作用:

ALTER DATABASE (select current_database()) SET SEARCH_PATH TO myschema,public;
Run Code Online (Sandbox Code Playgroud)

postgresql

3
推荐指数
1
解决办法
670
查看次数

Haskell记录访问器由相同数据类型的不同构造函数共享

关于Haskell记录的基本问题.如果我定义此数据类型,

data Pet = Dog { name :: String } | Cat { name :: String } deriving (Show)                           
Run Code Online (Sandbox Code Playgroud)

以下作品:

main = do                                                                                            
  let d = Dog { name = "Spot" }                                                                      
      c = Cat { name = "Morris" }                                                                    
  putStrLn $ name d                                                                                  
  putStrLn $ name c                                                                                  
Run Code Online (Sandbox Code Playgroud)

但如果我这样做,

data Pet = Dog { name :: String } | Cat { name :: Integer } deriving (Show)                          
Run Code Online (Sandbox Code Playgroud)

我会得到这个错误:Multiple declarations of 'name'.

我想我明白为什么直觉这应该是这样,因为类型name在第一种情况就是Pet -> String无论使用哪种构造方法.但我不记得在我读过的任何Haskell书籍中都看到过有关记录访问器功能的规则.有人可以对我上面看到的行为稍微深入一些解释吗?

haskell records

3
推荐指数
1
解决办法
632
查看次数

如何以不区分大小写的方式创建最新的Attoparsec匹配字符串?

attoparsec 0.72有这个功能,但它似乎在以后的版本中消失了:

stringTransform :: (ByteString -> ByteString) -> ByteString -> Parser ByteString
Run Code Online (Sandbox Code Playgroud)

"在对它和匹配文本应用转换后匹配文字字符串.对于例如不区分大小写的字符串比较很有用."

http://hackage.haskell.org/package/attoparsec-0.7.2/docs/Data-Attoparsec.html

haskell attoparsec

3
推荐指数
1
解决办法
280
查看次数

PostgreSQL插入后输出的结果到底是什么意思?

我正在将数据插入PostgreSQL数据库。我做这样的事情:

$ psql test -c "insert into items (name) values ('test name') returning id " -At
4
INSERT 0 1
Run Code Online (Sandbox Code Playgroud)

第一个数字INSERT 0 1指的是什么?我假设第二个数字是受影响或创建的行数。

postgresql

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

在 Haskell 中使用工作池运行并行 URL 下载

我想使用 Control.Concurrent.AsyncmapConcurrentlyhttp-conduit. 这里的解决方案对我来说是不够的,因为我想处理n 个任务,但将并发工作人员的数量限制为m,其中m < n

传递给m 的mapConcurrently多个块也是不够的,因为这样活动工作人员的数量往往会少于m,因为某些任务会比其他任务更早完成,从而造成利用率差距。

有没有简单的方法——几乎和使用一样简单 mapConcurrently我希望——来实现一个工作池并发执行任务队列,直到所有任务都完成?

或者只是保持 Haskell 简单并使用 进行进程级并行更容易xargs -P吗?

haskell

3
推荐指数
1
解决办法
775
查看次数