¿Cuáles son los marcos web populares (ok, popular es relativo) para los diversos sabores de LISP?Lisp Web Frameworks?
Respuesta
UncommonWeb (UCW) a menudo se menciona http://www.common-lisp.net/project/ucw/ - no es resto, como se encuentra en cuarto de moda en estos momentos, más como marítimo de Smalltalk (pero, de nuevo, marino es muy en boga).
Hunchentoot es también bastante generalizada
¿No es esto más bien un servidor web? – Svante
Desde su sitio web: * "Hunchentoot es un servidor web escrito en Common Lisp y al mismo tiempo un conjunto de herramientas para crear sitios web dinámicos." * –
Otro fresco (todavía lejos de ser "popular") que hay que mirar es SymbolicWeb - http://groups.google.com/group/symbolicweb
Lo que es Weblocks?
Weblocks es un marco web basado en continuaciones escrito en Common Lisp.
Lisp-en-líneas es un framework de aplicaciones web construido encima de CLSQL y UCW y proporciona un modelo de desarrollo de aplicaciones similares en muchos aspectos a Ruby on Rails. En este momento se puede encontrar en http://versions.tech.coop/lisp-on-lines/.
PLT Scheme cuenta con un built-in, continuation-based web server.
Actualización: PLT Scheme ahora se llama Racket.
La mayoría (quizás todos) de los bien conocidos marcos web de Common Lisp ya se han mencionado, así que solo agregaré algunos comentarios.
Hunchentoot no es un "marco web" en el sentido que la mayoría de la gente quiere decir. Es un servidor HTTP (uno extremadamente bueno).
"Lisp on Lines" de Drew Crampsie parece extremadamente prometedor, pero no estoy seguro de lo avanzado que está. He estado esperando escuchar un anuncio.
La web común de Marco Baringer se ejecuta en muchas de las implementaciones CL más importantes: Allegro CL, CMUCL, Clozure CL (anteriormente conocido como OpenMCL), GNU clisp y SBCL. El único importante que falta es LispWorks; No sé si eso significa que no se ha probado que funcione, o si se sabe que no funciona, o qué; pero si se ejecuta en todos esos otros dialectos, probablemente sea fácil hacerlo funcionar en cualquier otro.
Los enlaces harían esta respuesta más útil. – skeltoac
Common Lisp
Una gran cantidad de los mismos de siempre (Hunchentoot, UCW, lol) ya se han mencionado. Franz pone a disposición de Allegro Common Lisp (y portado a otra Lisps):
- en un nivel inferior (el manejo de peticiones HTTP a sí mismo), AllegroServe.
- en un nivel superior (más de un "marco"), WebActions.
Ambos son de código abierto. Tiendo a utilizar AllegroServe, teniendo en cuenta las utilidades cuando las necesito, pero a algunas personas realmente les gustan las WebActions.
que utilizan Araneida desde hace bastante tiempo, y yo prefiero su estilo a AllegroServe, pero no se ha mantenido desde 2006.
He buscado bastante amplia para un buen marco web para Lisp, y yo los encontró a todos de alguna manera inaccesibles. La arquitectura de UCW no me pareció muy natural (no puedo recordar por qué, ha pasado un tiempo desde que investigué), y KPAX ya no se mantiene (creo).
La web simbólica se ve muy interesante, y creo que Weblocks es la más interesante, pero Weblocks no está muy bien documentada y puede ser bastante intimidante para el recién llegado. SymbolicWeb era inmaduro la última vez que lo busqué, pero puede haber crecido un poco desde entonces. La página features se ve muy bien hoy.
Existen diferentes enfoques que puede tomar. Si quieres un enfoque puramente Lisp, entonces usted podría:
- Si usted puede leer el código con soltura y comprender continuaciones, puede intentar Weblocks con un backend Hunchentoot (Weblocks tiene una dependencia en Hunchentoot que no ha sido todavía abstraído) Se supone que debe haber un manual de usuario real en un mes o dos, pero como con cualquier proyecto de OSS, tales compromisos son incompletos.
- Del mismo modo, puede probar SymbolicWeb. [actualización: no importa, el proyecto no es más]
- haga el suyo. En serio, hay cl-who para ayudar con la generación de HTML, hay librerías javascript y json disponibles, useckets, elephant, cl-sql, hunchentoot, aserve y muchas bibliotecas de utilidades que puedes combinar.
Si estás bien con un enfoque híbrido, esto es algo que estoy experimentando con piso en la actualidad He escrito un backend Lisp JSON-RPC para Qooxdoo, por lo que puede servir interfaces javascript puro a través de una un servidor http súper rápido como Cherokee y deja que Cherokee extienda las conexiones a todos los servidores back-end json-rpc que se ejecutan en Lisp como yo quiera. Muy, muy escalable. Estoy lejos de entender los problemas y desafíos, pero fue bastante sencillo trabajar. la biblioteca json hace que sea estúpido simple hacer que el backend funcione, creo que Qooxdoo en realidad es más difícil (pero realmente no soy un desarrollador de JS).
También voy a consultar WebActions de allegro, porque hay cierto atractivo en la disponibilidad de soporte pago, sin mencionar que Allegro puede ser la mejor implementación de CL disponible (Su Kennyness lo usa :-)) .
Re: SymbolicWeb (y su exagerada desaparición)
SymbolicWeb project page en Gitorious y SymbolicWeb article en Wikipedia. La página de Grupos de Google está definitivamente muerta (y desarchivada?), Pero el árbol de Gitorious muestra registros tan recientemente como 29 April 2010. La página del proyecto también se refiere a "some running examples" estando "ocasionalmente disponible" en nostdal.org (que es inalcanzable mientras escribo esto, reforzando el calificador "ocasionalmente" :-).)
(Nota:.. No soy un usuario SymbolicWeb acabo ubicaron los enlaces SymbolicWeb mientras que la lectura de este hilo)
Esta pregunta es un poco viejo pero pensé que me gustaría compartir mi reciente descubrimiento: el Hop language que se basa en Scheme y es bastante completo.
HOP es un lenguaje de programación de varios niveles para la Web 2.0 y la llamada web difusa. Está diseñado para programar aplicaciones web interactivas en muchos campos, como multimedia (galerías web, reproductores de música, ...), ubicua y domótica (SmartPhones, dispositivos personales), mashups, oficina (agendas web, clientes de correo, ...), etc.
características HOP:
- un amplio conjunto de widgets para la programación y de fantasía GUI web portátiles,
- plena compatibilidad con las tecnologías web tradicionales (Javascript, HTML, CSS),
- Soporte HTML5, un servidor web versátil compatible con HTTP/1.0 y HTTP/1.1,
- un soporte multimedia nativo para permitir que las aplicaciones web multimedia omnipresentes,
- WebDAV rápido de nivel 1 de soporte,
- un compilador de código nativo optimización de código del servidor,
- un control sobre la marcha JavaScript compilador de código de cliente,
- un amplio conjunto de bibliotecas para el correo electrónico, calendarios, bases de datos, telefonía, ...
acabo de descubrir un marco web llamado Clack para Common Lisp y que era bastante fácil de empezar
Presupuesto de su sitio web "Clack es un entorno de aplicaciones web para Common Lisp inspirado en WSGI de Python y Ruby rack".
y caveman es un framework micro web basado en Clack.
restas es otro framework de desarrollo web que ha visto cambios recientes:
Su visión general
RESTAS is a Common Lisp web application framework. Its key features are:
RESTAS was developed to simplify development of web applications following the REST architectural style.
RESTAS is based on the Hunchentoot HTTP server. Web application development with RESTAS is in many ways simpler than with Hunchentoot, but some knowledge of Hunchentoot is required, at least about working with hunchentoot:*request* and hunchentoot:*reply*.
Request dispatch is based on a route system. The route system is the key concept of RESTAS and provides unique features not found in other web frameworks.
The other key RESTAS concept is its module system, which provides a simple and flexible mechanism for modularized code reuse.
Interactive development support. Any RESTAS code (such as the definition of a route, a module or a submodule) can be recompiled at any time when you work in SLIME and any changes you made can be immediately seen in the browser. No web server restart or other complicated actions are needed.
SLIME integration. The inner structure of a web application can be investigated with the standard "SLIME Inspector." For example, there is a "site map" and a simple code navigation with this map.
Easy to use, pure Lisp web application daemonization facility based on RESTAS and SBCL in Linux without the use of Screen or detachtty.
RESTAS is not an MVC framework, although it is not incompatible with the concept. From the MVC point of view, RESTAS provides the controller level. Nevertheless, RESTAS provides an effective and flexible way for separation of logic and representation, because it does not put any constraints on the structure of applications. Separation of model and controller can be effectively performed with Common Lisp facilities, and, hence, doesn't need any special support from the framework.
RESTAS does not come with a templating library. cl-closure-template and HTML-TEMPLATE are two good templating libraries that can be used with RESTAS.
- 1. frameworks web Java
- 2. frameworks Java WEB MVC "tranquilos"
- 3. frameworks web Python vs frameworks web Java (¿cómo se hace el desarrollo web en Python?)
- 4. Servicio web con Lisp
- 5. Cómo son limitados los frameworks web
- 6. ¿Cuáles son los grandes frameworks web hoy?
- 7. Django vs otros frameworks web de Python?
- 8. Programación Web Frameworks Generación "//" para los enlaces
- 9. Web GUI frameworks para Phone development
- 10. ¿El mejor framework web en Common-Lisp?
- 11. Servlets vs MVC frameworks
- 12. ¿Qué frameworks web de Java proporcionan recarga en caliente?
- 13. ¿Los frameworks web de Java realmente valen la pena?
- 14. Django o RoR como frameworks web Java o ASP comunes
- 15. "frameworks" web para Haxe para implementar en un entorno PHP?
- 16. ORM frameworks
- 17. Understanding Frameworks
- 18. frameworks php y seguridad
- 19. Open Source Question Answering Frameworks
- 20. RESTful frameworks para Android, iOS ...?
- 21. Frameworks MVC para WPF
- 22. Java Validation Frameworks
- 23. .NET Rest Client Frameworks
- 24. C: Common Frameworks/Libraries
- 25. Compass vs Bourbon Frameworks
- 26. JavaScript MVC frameworks
- 27. Frameworks vs. SDKs
- 28. .NET benchmarking frameworks
- 29. PyXB y python frameworks
- 30. JAX-RS Frameworks
Me gustaría saber si terminamos usando uno y cómo era =) – DFectuoso
Sí, no creo que "popular" sea el término correcto cuando se habla de un marco LISP. ;) editar: No es que eso sea algo malo EN ABSOLUTO. – Gagege