当前位置:  开发笔记 > 编程语言 > 正文

函数式编程是否与Web开发相关?

如何解决《函数式编程是否与Web开发相关?》经验,为你挑选了5个好方法。

我最近看到很多关于函数式编程的东西,而Clojure看起来特别有趣.虽然我"理解"它的基本描述,但是如果我可以的话,我无法弄清楚如何在日常工作中使用它作为Web开发人员.我所阅读的很多内容都集中在函数式编程的数学方面,而不是常规OO中的典型编程情况.

我有错误的结束吗?函数式编程与Web开发完全无关吗?如果没有,是否有任何关于它'用于网络'的例子?



1> JacquesB..:

功能编程非常适合Web应用程序.Web应用程序接收HTTP请求并生成HTML结果.这可以被视为从页面请求的功能.

与桌面应用程序相比,我们通常具有长时间运行的进程,多个方向的有状态UI和数据流.这更适合关注具有状态和消息传递的对象的OO.



2> Greg Case..:

我头顶的几个例子:

雅虎 Store由Lisp提供支持(最初在收购前命名为Viaweb)

Reddit在Lisp中完全是原型,尽管他们在2005年转向Python

黑客新闻完全用Arc(一种Lisp方言)编写


奇怪的例子选择......雅虎!Store由Paul Graham撰写,他是Lisp的忠实拥护者.他还撰写了Hacker News,实际上是一个Reddit克隆版.据推测,HN的编写有点是为了回应Reddit从Lisp切换到Python,而Reddit的人是YCombinator的一部分:由Paul Graham运营的加速器程序.我把它算作一个例子,而不是三个.
雅虎 几年前,商店用c ++重写了.
语言!=编程范式.

3> Sherm Pendle..:

我不明白为什么不这样做 - 只要您向浏览器提供符合标准的HTML,他们就不关心您用它来制作它,无论是功能语言,命令式语言还是训练有素的猴子.



4> Chris Conway..:

函数式编程可能无法很好地映射到Web编程环境中.但主要障碍是缺乏基础设施(框架和API).在功能语言拥有与Java,Python或Ruby一样丰富的Web编程环境之前,这将是一段很长的时间(可能永远不会,老实说).

也就是说,有一些选择.

HAppS - 一个Haskell Web应用程序服务器

Haskell服务器页面

链接 - 一种功能性的网络编程语言

mod_caml - Apache的OCaml CGI模块

Ocsigen/Eliom - OCaml Web服务器/编程框架

OPA - 商业Web应用程序框架

Yesod - Haskell的Web框架

我没有任何经验.也许评论者可以权衡什么对他们有用.



5> James McMaho..:

Twitter在Scala中重写了它们的后端,Scala是一种支持面向对象和功能范例的JVM语言.

此外,Lift Web框架是用Scala编写的.

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有