小编Pau*_*rey的帖子

在Haskell中将整数转换为Double

我想复合增长超过一年,但我不关心小数点,所以我试过

take 52 $ iterate (floor . (*1.1)) 100
Run Code Online (Sandbox Code Playgroud)

问题是is的类型(floor . (*1.1))Double -> Integer,而第一个arg迭代所期望的类型是a -> a.

我尝试了几种方法,但最终将自己捆绑在一起.

在函数应用程序中保持数字类型一致的首选解决方案是什么?

haskell numbers

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

如何仅在Vim中存在映射时取消映射

作为如何使用vim-rails覆盖gf的已接受答案的后续内容,多次编辑同一文件会导致以下错误:

Error detected while processing User Auto commands for "Rails.javascript.coffee*":
E31 : No such mapping
Run Code Online (Sandbox Code Playgroud)

我的违规行vimrc

:autocmd User Rails.javascript.coffee* nunmap <buffer> gf
Run Code Online (Sandbox Code Playgroud)

如果映射已存在,如何通过取消映射来避免此错误?

(注意:多次编辑同一个文件可能看起来很奇怪,但我认为这是用ack.vim或ag.vim搜索的副作用)

vim

24
推荐指数
1
解决办法
2061
查看次数

输入toList和toBuffer之间的推断不一致

根据下面的示例,调用xs.toList.map(_.toBuffer)成功,但xs.toBuffer.map(_.toBuffer)失败.但是当使用中间结果执行后者中的步骤时,它会成功.是什么导致这种不一致?

scala> "ab-cd".split("-").toBuffer
res0: scala.collection.mutable.Buffer[String] = ArrayBuffer(ab, cd)

scala> res0.map(_.toBuffer)
res1: scala.collection.mutable.Buffer[scala.collection.mutable.Buffer[Char]] = ArrayBuffer(ArrayBuffer(a, b), ArrayBuffer(c, d))

scala> "ab-cd".split("-").toBuffer.map(_.toBuffer)
<console>:8: error: missing parameter type for expanded function ((x$1) => x$1.toBuffer)
              "ab-cd".split("-").toBuffer.map(_.toBuffer)
                                              ^

scala> "ab-cd".split("-").toList.map(_.toBuffer)
res3: List[scala.collection.mutable.Buffer[Char]] = List(ArrayBuffer(a, b), ArrayBuffer(c, d))
Run Code Online (Sandbox Code Playgroud)

scala type-inference

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

标签 统计

haskell ×1

numbers ×1

scala ×1

type-inference ×1

vim ×1