Me pregunto si algunos lenguajes funcionales se utilizan para el desarrollo web y cuáles son más útiles y compatibles con ese objetivo.
¿Lisp común o esquema para el lado del servidor?
Respuesta
Raqueta PLT tiene una web en servidor que es un UP- hasta la fecha, derivado activamente del Esquema, y puede ser algo que quieras estudiar. Aquí hay algo de documentación:
http://docs.racket-lang.org/web-server-internal/index.html
Hay unos pocos hilos StackOverflow que pueden proporcionar algunos más respuestas a esto:
state of web development using functional programming language
What are the popular 'web-ready' functional programming languages?
marcos muy interesantes que encontré allí –
Erlang es un lenguaje funcional utilizado (entre otras muchas cosas) para el desarrollo web del servidor, p. Ej.
En cuanto a los marcos Common Lisp, ver Best web framework in Common-lisp?
+1 por mencionar a Erlang – linuxuser27
¿A qué te refieres con "solía ser"? ¿Todavía no se usa para eso? –
@ NateC-K, sí, por supuesto, todavía se usa. Corregida la redacción engañosa. – miku
- BKNR, un entorno de aplicaciones web Common Lisp
- Hunchentoot, un servidor web Common Lisp
- Lisp-on-lines, un framework de desarrollo web Common Lisp
- Parenscript, un Common Lisp -> Traductor Javascript
- UnCommon Web , un marco web Common Lisp
¡Es seguro decir que hay un poco de cosas del lado del servidor para Common Lisp!
Actualización: En mi fuente de noticias de esta noche, cortesía de XACH: A Common Lisp Web Development Primer, Part 1
Hunchentoot es un buen servidor web en el CL. CL-WHO es una biblioteca de generación de HTML, y hay un mod_lisp para apache, creo también. Puede configurar algo con cl-fcgi y hacer que un servidor se conecte a él, como una configuración CL-WHO + cl-fcgi, o cl-who + hunchentoot, o cl-who + mod_lisp. Es tu elección.
Clojure es una opción muy prometedora para el desarrollo web del lado del servidor.
ventajas clave:
- Es un Lisp (ver "beating the averages" ensayo de Paul Graham acerca de por qué esto es importante)
- Usted consigue el acceso a la ecosistema completo de Java de las bibliotecas - esto es una gran ventaja para el desarrollo del servidor (dado que el ecosistema de la biblioteca Java es insuperable)
- Ofrece alto rendimiento - siempre compilado, aprovecha al máximo t que JVM para optimizaciones etc. Por benchmarks game es el lenguaje el segundo más rápido de tipo dinámico (después de Common Lisp)
- Puede utilizar ClojureScript (básicamente Clojure que compila a JavaScript) en el lado del cliente para y al final a extremo solución de servidor cliente
Actualmente, el marco web principal de Clojure es probablemente Noir (http://webnoir.org/), pero hay varios otros que comienzan a surgir.
- 1. Ruby: del lado del cliente o del lado del servidor?
- 2. Web Charting, lado del servidor o del lado del cliente?
- 3. Paginación: ¿lado del servidor o lado del cliente?
- 4. ¿Del lado del servidor o del lado del cliente para buscar tweets?
- 5. ¿Cuándo usar el lado del cliente o del lado del servidor?
- 6. HTML5 - lado del servidor
- 7. Validación de entrada de usuario, del lado del cliente o del lado del servidor? [PHP/JS]
- 8. Método del lado del servidor y del lado del cliente
- 9. ¿Debo hacer solicitudes de API del lado del servidor o del lado del cliente?
- 10. Temporizador de Lisp común
- 11. librería javascript para el almacenamiento del lado del cliente con la sincronización del lado del servidor
- 12. PHP $ _SESSION es del lado del servidor o local?
- 13. Análisis del lado del servidor
- 14. Utilice menos (preprocesador css) del lado del servidor o del lado del cliente
- 15. Cadena para listar sin # \ en lisp común
- 16. ¿Cómo funciona el lado del servidor GZipping?
- 17. Esquema del servidor SQL y esquema predeterminado
- 18. Lisp común: crear un directorio
- 19. Comprobación del lado del servidor frente al lado del agente
- 20. Archivos mínimos necesarios para implementar el lado del servidor webAPI
- 21. GWT I18N en el lado del servidor
- 22. CSS en el lado del servidor?
- 23. lado del servidor JavaScript - general
- 24. lado del servidor MVC + lado del cliente MVC
- 25. ASP.NET Validación lado del servidor
- 26. autocompletar aplicación del lado del servidor
- 27. ¿Es posible usar Google Analytics para el lado del servidor?
- 28. marco javascript del lado del servidor
- 29. selectores css del lado del servidor
- 30. Mecanismo de cola para solicitudes AJAX del lado del servidor
Ni Common Lisp ni Scheme son idiomas funcionales. Pruebe uno de los muchos frameworks web de Erlang/Haskell. –
@Vijay Mathew: Los Lisp son funcionales. Si bien técnicamente son multi-paradigmas, definitivamente permiten que un programador sea completamente funcional si así lo desea. – Greg
@Greg también lo hace C. (piense en los indicadores de función :-)) –