Tôi chỉ có thể nói thay mặt cho Yesod, vì tôi mới chỉ thử Snap và Yesod cho đến nay nhưng nhanh chóng bị mắc kẹt với Yesod.
Lý do chính cho Yesod có lẽ là nó cung cấp một khung hoàn chỉnh với số lượng tính năng ngày càng tăng, như
- Ngôn ngữ mẫu an toàn cho HTML, CSS và JavaScript
- Định tuyến an toàn
- Chia thành các trang con
- Tích hợp cơ sở dữ liệu với Persistent
- Các trang con được tạo trước cho các sự cố xảy ra lại: Ủy quyền, Tĩnh, CRUD ...
Trong mắt tôi, sức mạnh lớn của Yesod là việc biên soạn nội dung động của nó, ví dụ như các trang web HTML. Trang web mẫu được phân tích cú pháp thông qua Mẫu Haskell và được chuyển đổi thành cấu trúc dữ liệu Haskell. Vì vậy, mẫu không được phân tích cú pháp mỗi khi người dùng gọi nó. Theo tôi, đây là một lợi thế lớn về tốc độ, so với PHP và Snap cũng sử dụng các mẫu không được biên dịch và nó cũng giúp ích rất nhiều cho khả năng mở rộng.
Yesod sắp tiếp cận phiên bản 1.0, theo người tạo ra nó, và có một số trang web đã chạy trên nó. Tôi nghĩ mục tiêu chính của Yesod là cung cấp một khung ứng dụng web hoàn chỉnh, an toàn, cung cấp tất cả các nhu cầu của bạn, sau đó là một số.
Ngoài ra, Yesod tích hợp với giao diện WAI và hoạt động hoàn hảo với Warp máy chủ Haskell thuần túy.