Survei kerangka kerja web Haskell [ditutup]

19

Ada beberapa kerangka kerja web untuk Haskell seperti Happstack , Snap , dan Yesod , dan mungkin beberapa lagi.

Dalam aspek apa mereka berbeda satu sama lain? Sebagai contoh:

  • fitur (mis. server saja, atau skrip klien, dukungan mudah untuk berbagai jenis database)
  • jatuh tempo (misalnya stabilitas, kualitas dokumentasi)
  • skalabilitas (mis. kinerja, abstraksi praktis)
  • target utama

Juga, apa saja contoh situs / aplikasi web dunia nyata yang menggunakan kerangka kerja ini?

Terimakasih banyak.

Phil
sumber
2
+1 Meskipun saya tidak tahu Haskell, ini bisa menarik.
Anto
Apakah ada host gratis yang tersedia untuk situs web Haskell? Apa persyaratan untuk server?
Armand
@Alison - Saya berasumsi tidak karena Anda kemungkinan besar akan membutuhkan VPS atau dedicated server.
Jetti
Anda bisa menggunakan tingkat gratis di Amazon EC2 Saya kira untuk hosting
Zachary K
Saya benar-benar berharap untuk membuat beberapa orang berbicara tentang kerangka kerja lain (sehingga kami dapat membandingkan)
Zachary K

Jawaban:

10

Saya hanya dapat berbicara atas nama Yesod, karena saya hanya mencoba Snap dan Yesod sejauh ini tetapi dengan cepat terjebak dengan Yesod.

Alasan utama Yesod mungkin karena ia memberikan kerangka kerja lengkap dengan semakin banyak fitur, seperti

  • Bahasa Template Template untuk HTML, CSS dan JavaScript
  • Routing Typeafe
  • Membagi menjadi Sub-situs
  • Integrasi database dengan Persistent
  • Subtes yang dibuat sebelumnya untuk masalah yang muncul kembali: Otorisasi, Statis, CRUD ...

Di mata saya, kekuatan besar Yesod adalah kompilasi konten dinamisnya, misalnya situs HTML. Situs templat diuraikan melalui Haskell Templat dan dikonversi menjadi struktur data Haskell. Jadi templat tidak diuraikan setiap kali pengguna menyebutnya. Menurut pendapat saya, ini adalah keunggulan kecepatan utama, dibandingkan dengan PHP, dan juga Snap yang menggunakan templat yang tidak dikompilasi, dan juga membantu banyak untuk skalabilitas.

Yesod segera mendekati versi 1.0, menurut penciptanya, dan ada beberapa situs web yang sudah berjalan di atasnya. Saya pikir target utama Yesod adalah memberikan kerangka kerja aplikasi web lengkap yang aman untuk semua kebutuhan Anda, dan kemudian beberapa.

Juga, Yesod terintegrasi dengan antarmuka WAI dan bekerja dengan sempurna dengan Warp Haskell-server murni.

Lanbo
sumber