2009-08-12 6 views
11

¿Cuáles son ejemplos de aplicaciones web funcionales (y no orientadas a objetos) bien diseñadas que hacen que su código fuente esté disponible? Actualmente estoy estudiando el Hacker Newssource pero me gustaría ver algunos otros ejemplos no triviales, idealmente en clojure.¿Código fuente de aplicaciones web funcionales bien diseñadas?

Para MVC hay muchas aplicaciones, frameworks y tutoriales de Rails y PHP para estudiar: ¿qué hay para la programación funcional?

+0

Arco y clojure son apenas funcionales idiomas. Eche un vistazo a HappS: http://happs.org/ – jrockway

+0

Tal vez la búsqueda de "aplicaciones web basadas en la continuación" podría brindarle algunos resultados interesantes. – fortran

+0

Marco y artículo interesante: ¡gracias! ¿Tiene algún enlace a implementaciones reales de estas ideas? Por ejemplo, ¿un sistema de tienda en Haskell, un CMS basado en continuaciones o un simple software de blog?Me encanta aprender de soluciones probadas que están en vivo en algún lugar. – Lorenz

Respuesta

7

Hay:

Esa lista es suficiente para mantener estás ocupado dando una muestra de idiomas funcionales con diferentes características:

  • Clojure: multi-paradigm ?, flexible? no es un lenguaje funcional puro y, aunque se prefiere que programes en un estilo funcional, no es estrictamente necesario. Puede escribir OOP estilo Java a través de la interoperabilidad de Java, o puede abstraerse de él utilizando métodos múltiples. Hay mucha flexibilidad allí, aunque todavía es un poco pronto para decir si es simplemente "flexible" o "multiparadigma" en el sentido común. Diseñado, en parte, para ser un ceceo que maneja la simultaneidad fácilmente, en realidad dispara a muchos objetivos, de ahí la designación flexible o multiparadigma.
  • Esquema: más cerca de ser un lenguaje funcional puro que Clojure, empuja al programador un poco más enérgicamente en un estilo funcional que Clojure.
  • Erlang: Programación funcional construida para concurrencia confiable. Erlyweb está construido sobre una plataforma diseñada para ser altamente concurrente.
  • Smalltalk: programación altamente funcional OO (incluso las estructuras de control son objetos dentro del sistema de objetos, y no construcciones sintácticas).

Si quiere ver cómo se ven las aplicaciones web en un lenguaje funcional "a toda costa", entonces la sugerencia de jrockway es la que hay que mirar.

+0

Para una introducción al servidor web PLT Scheme, eche un vistazo a http://docs.plt-scheme.org/continue/. –

+0

¿Podría explicarnos por qué se incluyen aquí el servidor web PLT Scheme y Seaside? ¿Son su implementación buenos ejemplos de programación funcional? –

+0

@Vijay, ambos controlan la interacción entre el servidor web y el cliente utilizando continuaciones. Este sería el sello distintivo del enfoque funcional de la programación web. Una descripción de esto se puede encontrar en Yahoo! patente en servidores web basados ​​en la continuación: http://www.google.com/patents?id=WE8GAAAAEBAJ&printsec=abstract&zoom=4&source=gbs_overview_r&cad=0#v=onepage&q=&f=false esta patente proviene del trabajo de Paul Graham al escribir lo que convertirse en Yahoo! tiendas en Lisp a mediados de los 90. Verifique también los comentarios de Fortran a la pregunta original para obtener más información acerca de los servidores web basados ​​en la continuación. – Pinochle

Cuestiones relacionadas