相关疑难解决方法(0)

为什么在Clojure中使用Maybe/Option并不是那么普遍?

为什么Clojure尽管如此强调功能范式,却不使用Maybe/ Optionmonad来表示可选值?Option在Scala中使用非常普遍,Scala是我经常使用的函数式编程语言.

monads functional-programming clojure option maybe

40
推荐指数
6
解决办法
8908
查看次数

Rails 3.1:Ruby成语,以防止.each抛出异常,如果为nil?

有没有办法使用,.each所以如果对象为零或空(如果没有添加额外的空/空白测试,它不会抛出错误?

似乎如果我说phonelist.each do |phone|如果phonelist是空的,那么不应该执行该块.

但是在我看来(haml)我有- @myvar.phonelist.each do |phone|,如果phonelist是空的,它会抛出一个NoMethodError.

我遇到了很多,总是通过为.blank添加显式检查/分支来解决这个问题?但似乎应该有一种更简单的方法来告诉.每个空手段什么都不做.

ruby each ruby-on-rails

25
推荐指数
4
解决办法
2万
查看次数

为什么Clojure成语更喜欢返回nil而不是像Scheme这样的空列表?

对另一个问题的评论中,有人说Clojure成语更喜欢返回nil而不是像Scheme中的空列表.这是为什么?

喜欢,

(when (seq lat) ...)
Run Code Online (Sandbox Code Playgroud)

代替

  (if (empty? lat)  
    '() ...)
Run Code Online (Sandbox Code Playgroud)

idioms clojure

14
推荐指数
3
解决办法
6028
查看次数