小编Ray*_*yne的帖子

Clojure列表与向量对集

我是Clojure的新手.如果这是一个愚蠢的问题,请道歉!

每次我不关心项目的顺序时,我应该使用集合而不是向量或列表吗?在没有必要订购时,在这三者之间做出决定的共同标准是什么?

clojure

17
推荐指数
2
解决办法
2789
查看次数

我应该何时在Haskell中使用记录语法进行数据声明?

与必须编写自己的访问器函数相比,记录语法似乎非常方便.我从来没有见过任何关于何时最好使用记录语法而非正常数据声明语法的指南,所以我在这里问一下.

haskell types

16
推荐指数
2
解决办法
1908
查看次数

如何使用pprint格式化多行数据?

pprint的文档有点像砖墙.如果你打印一张地图,它会出现在一行上,如下所示:{:a "b", :b "c", :d "e"}.相反,我想像这样打印,可选择使用逗号:

{:a "b"
 :b "c"
 :d "e"}
Run Code Online (Sandbox Code Playgroud)

如何用pprint做到这一点?

clojure pprint

16
推荐指数
2
解决办法
3355
查看次数

为什么Scala对它的热情很低?

我已经注意到,随着时间的推移,Clojure用户对这种语言只有极大的热情.然而,似乎大多数Scala用户甚至都不太关心这种语言.有些人告诉我"这比使用Java更好." 我不确定为什么Clojure对此有如此多的热情,但Scala几乎没有.它破坏了我必须学习语言的任何动机.我并不关心语言的使用"因为它比使用Java更好." 你怎么看?我对Scala的了解还不足以衡量人气随着时间的推移增加或减少的程度.你对这门语言有什么看法?我特别感兴趣的是听到使用该语言的人的意见.

谢谢.

编辑:显然这篇文章比我想要的更具攻击性.我不是要试图说明任何一种语言,也不是说Scala没有背后的人.我只是说,随着时间的推移,在我看来,较少的人对Scala充满热情,因为他们和Clojure在一起.我并没有做出"不合理的假设"或者"在辩论中做出蠢事"我只是在寻求理论.

如果我知道这会引起很多争议,我甚至不会写出这个帖子.我为任何误解而道歉.我会持续想指出的是,我做的像Scala和Clojure的.我在说话的时候正在学习Scala.感谢您的帖子,至少有理论的部分.

编辑:9月30日:我确实为我所获得的任何敌意道歉.这个问题被误解了.我喜欢Scala,并认为它是一种令人惊叹的语言.我是根据自己的观察发言的,看来我自己的观察结果显然是错误的.欢迎你继续投票这个问题,但是如果我有能力的话我会删除它,但我不是.

scala

15
推荐指数
7
解决办法
2万
查看次数

有没有办法在Emacs中自动关闭文件名完成缓冲区?

例如,当您通过CxCf打开文件时,您可以选择完整的文件名,如果有多个可能的完成,它将弹出一个包含可能的完成列表的完成缓冲区.问题是,在您打开文件后,缓冲区所处的窗口切换回正常,但它没有关闭.有没有什么办法可以让文件打开后自动关闭这些缓冲区?

emacs elisp

14
推荐指数
2
解决办法
1284
查看次数

在Haskell中如何"获得"实际/获得/初始状态?

我有一个功能:

test :: String -> State String String
test x = 
    get >>= \test ->
    let test' = x ++ test in
    put test' >>
    get >>= \test2 -> put (test2 ++ x) >>
    return "test"
Run Code Online (Sandbox Code Playgroud)

我几乎可以理解整个函数中发生了什么,并且我开始得到monad的支持.我不明白的是,当我这样做时:

runState (test "testy") "testtest"
Run Code Online (Sandbox Code Playgroud)

'test'中的'get'函数以某种方式获得初始状态"testtest".有人可以打破这个并向我解释一下吗?

我感谢任何回应!

monads haskell state-monad

12
推荐指数
2
解决办法
837
查看次数

在Scala中格式化字符串的最佳方法是什么?

我想知道在Scala中格式化字符串的最佳方法是什么.我正在重新实现类的toString方法,它是一个相当长而复杂的字符串.我想过使用String.format,但它似乎与Scala有问题.这样做是否有本机Scala功能?

java string scala

9
推荐指数
1
解决办法
8191
查看次数

厌倦了ASP.NET,我应该学习以下哪些内容以及为什么?

以下哪项技术易于学习,有趣于开发网站?如果你只能选择一个,那就是它

  • Clojure的/的Compojure +戒指/胡须+戒指
  • Groovy中/ Grails的
  • 的Python/Django的
  • 的Ruby/Rails
  • Turbogear
  • 卡布奇诺咖啡或Sproutcore
  • 使用Javascript/jQuery的

ruby python asp.net-mvc groovy clojure

8
推荐指数
8
解决办法
1537
查看次数

Clojure"如果"从未评估其第三个论点

我一直想把这个问题想象一下.

(defn is-decimal [astr]
  (if (. astr (indexOf (int \.)))
    (Double/parseDouble astr)
    (Integer/parseInt astr)))
Run Code Online (Sandbox Code Playgroud)

这就是我写的功能.is-decimal或者传递诸如"2.5"或"5"之类的东西或类似的东西,但它总是使用if第二个参数,而不是第三个参数.我(. astr (indexOf (int \.)))在REPL中测试过,它看起来工作正常,它在失败时返回-1,而在它失败时返回1.我相信这可能是问题所在.-1在Clojure中并不意味着错误.谁能想到解决这个问题的方法?

提前致谢.

编辑:谢谢你的帮助.在我写完之后,我有了一个主意.我编写了一个检查1和-1的谓词函数.正是我需要的.醒来后我不应该直接编码:

clojure

7
推荐指数
2
解决办法
1268
查看次数

有人可以引导我完成这个Haskell函数(State monad相关)吗?

tick :: State Int Int
tick = get >>= \n ->
       put (n+1) >>= \y ->
       return n
Run Code Online (Sandbox Code Playgroud)

put (n+1)对这个功能的最终结果有什么影响感到困惑.似乎这个函数应该返回初始状态不变.我想在脑海中试图解决这个问题,但是我一直没有足够的空间把东西拿到位.:\

如果有人可以引导我完成对此功能的评估,那将非常有帮助.

monads state haskell

7
推荐指数
3
解决办法
1045
查看次数

标签 统计

clojure ×4

haskell ×3

monads ×2

scala ×2

asp.net-mvc ×1

elisp ×1

emacs ×1

groovy ×1

java ×1

pprint ×1

python ×1

ruby ×1

state ×1

state-monad ×1

string ×1

types ×1