相关疑难解决方法(0)

为何选择功能语言

我在这里看到很多关于函数式语言和东西的讨论.你为什么要使用"传统"语言?他们做得更好?他们更糟糕的是什么?什么是理想的函数式编程应用程序?

programming-languages functional-programming

330
推荐指数
16
解决办法
18万
查看次数

为什么还没有接受函数式编程呢?

我已经阅读了一些关于声明/函数编程(语言)的文章,尝试过Haskell以及自己编写的文本.从我所看到的,函数式编程比传统的命令式风格有几个优点:

  • 无国籍计划; 无副作用
  • 并发; 采用不断增长的多核技术,发挥得非常好
  • 程序通常较短,在某些情况下更容易阅读
  • 生产力提高(例如:Erlang)

  • 命令式编程是一个非常古老的范例(据我所知),可能不适合21世纪

为什么使用功能语言的公司或程序仍然如此"罕见"?

为什么在查看函数式编程的优点时,我们仍在使用命令式编程语言?

也许它在1990年还为时尚早,但今天呢?

functional-programming

197
推荐指数
11
解决办法
6万
查看次数

在MultiThread方面比较java和scala

我只是听到并看到有人说scala是为MultiThread设计的,尽管它实际上是出于通用目的.

它声称"事情是,虽然你可以在Java中创建线程安全的类(如果你知道你正在做什么),Scala让它变得简单而自然."

事实上,AKKA和Lift是用scala编写的.(实际上是java和scala)

但java在java.util.concurrent的新包中也在这方面做了改进.那么为什么AKKA和Lift出生在JAVA?

也许你会说scala使java看起来像C. :-)

任何人都可以对此有更深入的了解或深入的想法?

我知道可以混合使用JAVA和scala.Scala能够无缝地调用Java代码.那么java有什么,scala也是如此.

但是scala真正改进了java还没有完成,不管语法不同?

只有一些设计像演员/代理或其他什么?(注意Actors/Agents无法解决MultiThread中的所有问题.)

或者scala编译器和采用一些函数式语言语法真的比java更重要或帮助吗?

我听到一些消息称scala将能够采用XText.为了能够利用XText编写线程逻辑,不确定这是否属实.

Scala看起来像是语言的混合物,使用这种方法可以更加可扩展地解决这方面的问题?

UPDATE

感谢您从不同角度出色的答案.我认为他们都非常好.无论你站在哪一边.

编辑

下面的主题(在一年前的SO中)询问了类似的事情."建设性"结论非常相似.但这一次,一些新的观点可能会出现,我要问的方式有点不同.仅供参考.

有关:

其实我很感兴趣,有些人可以用一些全新的角度回答这个问题,这可以启发我的思想,提供一些未知的想法.

但由于没有建设性,它已经关闭了.:-)

java multithreading scala concurrent-programming

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