Encuesta de marcos web de Haskell [cerrada]

19

Hay varios marcos web para Haskell como Happstack , Snap y Yesod , y probablemente algunos más.

¿En qué aspectos difieren entre sí? Por ejemplo:

  • características (por ejemplo, solo servidor, o también secuencias de comandos del cliente, soporte sencillo para diferentes tipos de bases de datos)
  • madurez (por ejemplo, estabilidad, calidad de la documentación)
  • escalabilidad (por ejemplo, rendimiento, abstracción práctica)
  • objetivos principales

Además, ¿cuáles son ejemplos de sitios web / aplicaciones web del mundo real que usan estos marcos?

Muchas gracias.

Phil
fuente
2
+1 Aunque no conozco a Haskell, esto podría ser interesante.
Anto
¿Hay servidores gratuitos disponibles para los sitios web de Haskell? ¿Cuáles serían los requisitos para un servidor?
Armand
@Alison: supongo que no, ya que lo más probable es que necesite un VPS o un servidor dedicado.
Jetti
podría usar el nivel gratuito en Amazon EC2, supongo que para el alojamiento
Zachary K
Realmente esperaba que algunas personas hablaran sobre otros marcos (para poder comparar)
Zachary K

Respuestas:

10

Solo puedo hablar en nombre de Yesod, ya que solo he probado Snap y Yesod hasta ahora, pero rápidamente me quedé con Yesod.

La razón principal de Yesod es probablemente que ofrece un marco completo con un número creciente de características, como

  • Lenguajes de plantilla Typesafe para HTML, CSS y JavaScript
  • Enrutamiento seguro
  • División en subsitios
  • Integración de base de datos con persistente
  • Subsitios prefabricados para problemas recurrentes: Autorización, Estática, CRUD ...

En mi opinión, la gran fortaleza de Yesod es la compilación de sus contenidos dinámicos, por ejemplo, sitios HTML. El sitio de la plantilla se analiza a través de Template Haskell y se convierte en una estructura de datos de Haskell. Por lo tanto, la plantilla no se analiza cada vez que el usuario la llama. En mi opinión, esta es una gran ventaja de velocidad, en comparación con PHP, y también con Snap, que usa plantillas no compiladas, y también ayuda mucho para la escalabilidad.

Yesod se acerca a la versión 1.0 pronto, según su creador, y hay algunos sitios web que ya se están ejecutando. Creo que el objetivo principal de Yesod es ofrecer un marco de aplicaciones web completo y seguro para todos los tipos que satisfaga todas sus necesidades, y algo más.

Además, Yesod se integra con la interfaz WAI y funciona perfectamente con la deformación pura del servidor Haskell.

Lanbo
fuente