精心设计的功能网络应用程序的源代码?

时间:2009-08-12 08:04:16

标签: functional-programming clojure lisp arc-lisp

什么是精心设计的功能(与面向对象相对)的Web应用程序的示例,这些应用程序可以使用其源代码?我目前正在研究Hacker News source,但我想看一些其他非平凡的例子,最好是clojure

对于MVC,有很多Rails和PHP应用程序,框架和教程要研究 - 函数式编程有什么用?

3 个答案:

答案 0 :(得分:7)

有:

这个列表足以让你忙着提供具有不同特征的函数式语言样本:

  • Clojure:多范式?,灵活?它不是一种纯粹的函数式语言,虽然你最好以函数式编程,但并不是绝对必要的。您可以通过Java互操作编写java风格的OOP,也可以使用多方法从中抽象出来。那里有很多灵活性,尽管说它是否只是普通lisp的“灵活”或“多范式”还为时尚早。部分地设计为易于处理并发的lisp,它实际上射击了许多目标,因此灵活或多范式指定。
  • Scheme:与Clojure相比,它更像是一种纯函数式语言,它比Clojure更强有力地推动了程序员的功能风格。
  • Erlang:为可靠并发而构建的功能编程。 Erlyweb构建在一个高度并发的平台上。
  • Smalltalk:高度OO函数编程(甚至控制结构是对象系统中的对象,而不是语法结构)。

如果你想看看webapps如何以“不惜一切代价”运作的语言,那么jrockway的建议是值得关注的。

答案 1 :(得分:2)

Weblocks是一个经过验证的面向对象的功能框架,它从Seaside获取灵感。

它是用Common Lisp编写的,可以在这里找到两个基本的例子(weblocks-demo,simple-blog):http://bitbucket.org/S11001001/weblocks-dev/src/tip/examples/

答案 2 :(得分:1)

如果您正在寻找以纯函数式语言实现的真实世界开源项目,此链接可能有所帮助:http://haskell-news.blogspot.com/2008/01/top-10-most-popular-haskell-programs.html

如果您对网络应用程序非常具体,请查看:http://www.haskell.org/haskellwiki/RPC