相关疑难解决方法(0)

如何在Erlang等函数式语言中使用缓存数据?

我最近一直在阅读有关函数式语言的文章.在10多年的OO开发过程中,我发现很难理解人们如何能够指出纯粹的功能方法(即使用相同参数调用相同的方法做同样的事情) (在OO程序中)我需要缓存数据.

  • 我们是否承认在程序中可能需要一个不可变的actor(即缓存).我刚看了Joe Armstrong关于infoq的演讲,他在这方面看起来很教条!

  • 我们是否只是承认查找数据可能很昂贵(因为我们永远无法缓存它)?如果是这样,我们如何控制,例如,某些共享资源(例如数据库)上的负载

  • 是否有一些神奇的尘埃,我还不知道,这解决了整个问题,然后喝了一杯好茶.

当然谷歌搜索"Erlang Cache"似乎返回了一些公平的结果......

erlang functional-programming immutability

16
推荐指数
1
解决办法
3010
查看次数

函数式编程模型效率(特定于Erlang)

嗨,我是Erlang世界的新手.当我想到我们需要如何解决以下问题时(并且有一长串类似的问题),我认为它真的效率很低,因为我们说的是很多递归.显然,像C/Java这样的语言不需要笨拙的递归来解决这个问题,但是对于Erlang(我猜其他函数式编程语言也需要,也许?)你必须以这种方式做.


例3 - 附加

该程序连接两个列表:

append([], List) -> List;

append([First|Rest], List) -> [First | append(Rest,List)].
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释为什么这不是一个问题?

erlang functional-programming

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

欧拉计划为什么说我得错了20号?

这是我要解决的问题:欧拉20.

n! 手段 n ? (n - 1) ? ... ? 3 ? 2 ? 1

例如,10! = 10 ? 9 ? ... ? 3 ? 2 ? 1 = 3628800和数字中的数字之和10!3 + 6 + 2 + 8 + 8 + 0 + 0 = 27.

找到数字中的数字总和 100!

我试过这个:

y = 1  #The actual number
sum = 0 #The sum of its digits.

def factorial(x): #Calculates the number using a recursive factorial algorithm …
Run Code Online (Sandbox Code Playgroud)

python

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