【发布时间】:2010-11-29 18:47:55
【问题描述】:
首先,我几乎被“整个函数式语言的东西”所吸引。我突然想到,多年来,我主要使用 Java 进行函数式编程。但是对于如何启动大型功能性应用程序,我有点茫然。我想查看大型项目(OSS 或其他)的源代码和构建结构,以便了解在这样的环境中如何最好地处理模块化。
我的问题是我想启动一个大型 JVM 项目,我目前正在考虑选择 Java/Groovy 组合或 Scala/Groovy 组合。我不想使用 Scala/Groovy 组合,除非我朝着功能方向发展,因为我不喜欢 Scala 用于 OO 编程(一个完全不同的主题)。这意味着要避免使用 DI 框架、AspectJ 等(我知道我可以通过函数式编程来模拟/完成/批准这些东西……但这与这里无关。)我担心缺乏非常大的公开可见使用这些语言的项目是因为普遍认为它们对于大型项目来说确实很差,这将是一个真正的耻辱......
所以我问,您关注哪些大型 fp 项目(比如说 20K+ 行)?我很高兴听到任何在 JVM 上运行的语言。特别是如果您觉得他们以一种很好的方式处理模块化。
【问题讨论】:
-
已经为 Erlang、Haskell 和 Lisp 列出了一些有趣的项目(没有 Scala 或 Clojure ......也许这是一个迹象)。我真的很喜欢Wings 3D。但是似乎没有一个项目表现出太多的模块化(除了 Emacs,它已经提到,它是非常必要的......正如我在十多年前编写插件时所记得的那样)。我没有使用“企业”这个词,因为它通常是一个无用的词,但我真的在寻找一个建立在其他非核心或“标准库”类型代码上的项目。在大小和横切实用程序上类似于 Spring Framework 或 Hibernate 或 OSGI...
-
看到 Clojure 的“标志”:flightcaster.com/team
标签: open-source scala functional-programming clojure