Ur / Web ngôn ngữ hoàn toàn chức năng mới để lập trình web? [đóng cửa]


17

Tôi đã xem qua dự án Ur / Web trong quá trình tìm kiếm các khung web cho các ngôn ngữ giống như Haskell. Có vẻ như một dự án rất thú vị được thực hiện bởi một người.

Về cơ bản, nó là một ngôn ngữ chức năng hoàn toàn dành riêng cho miền để lập trình web, tận dụng tối đa ML và Haskell. Cú pháp là ML, nhưng có các loại lớp và đơn nguyên từ Haskell, và nó được đánh giá nghiêm ngặt. Phía máy chủ được biên dịch thành mã gốc, máy khách thành Javascript. Xem trang trình bày và Câu hỏi thường gặp để biết các lợi thế được quảng cáo khác.

Nhìn vào các bản demo và mã nguồn của họ , tôi nghĩ dự án rất hứa hẹn. Phiên bản mới nhất là một cái gì đó 20110123, vì vậy nó dường như đang được phát triển tích cực tại thời điểm này.

Có ai ở đây đã có thêm kinh nghiệm với nó? Có vấn đề / phiền toái nào so với Haskell, ngoài cú pháp dài dòng hơn một chút của ML không?


Nitpick: Ur / Web không phải là ngôn ngữ lập trình cho lập trình web. Ur là ngôn ngữ lập trình có mục đích chung, Ur / Web là một khung web được viết bằng Ur, sử dụng hệ thống loại của Ur để đảm bảo tĩnh về tính an toàn và tính phù hợp của ứng dụng web. (Công bằng mà nói, mặc dù: Ur được thiết kế đặc biệt để hỗ trợ Ur / Web.)
Jörg W Mittag

Câu trả lời:


24

Tôi là tác giả của Ur / Web. Tôi mới tạo tài khoản này và vì vậy không có đủ mojo để trả lời các phản hồi khác trong quá khứ.

Ur / Web cho phép các plugin thực hiện các giao thức web khác nhau, vì vậy, nếu bạn muốn xem một số giao thức khác ngoài CGI, FastCGI hoặc HTTP, bạn có thể thực hiện nó hoặc yêu cầu tôi thực hiện nó. :) Tôi thực sự đã không nhận thức được đến thời điểm này của bất kỳ người thay thế nào đang tìm kiếm.

Điều đó có nghĩa gì khi lập trình SQL cảm thấy "chụm lại"?

Re: phàn nàn về giao diện "Web 1.0", tôi nghĩ đó là một tính năng được thiết kế để tiết kiệm thời gian cho những người không thực sự muốn sử dụng ngôn ngữ này. ;) Không có tính năng bị thiếu nào mà tôi biết, điều đó ngăn việc viết các ứng dụng trông giống như bạn thích và tôi tin rằng điều này là rõ ràng một khi bạn tìm hiểu cách thiết lập cơ bản của ngôn ngữ và thư viện.

Cuối cùng, ScantRoger, tôi rất muốn nghe về trải nghiệm của bạn khi áp dụng Ur / Web với khách hàng! Tôi không biết liệu có phải là hình thức xấu khi cung cấp thông tin liên hệ của tôi ở đây không, nhưng có một liên kết đến trang web cá nhân của tôi ở cuối trang trước của Ur.


11

Chúng tôi đã sử dụng nó cho một khách hàng có ý thức bảo mật và lưu ý những điều sau:

  • Là một ngôn ngữ, đó là một niềm vui để làm việc với. Chúng tôi không cảm thấy cú pháp dựa trên ML đặc biệt dài dòng so với Haskell.
  • Có một số cách làm quý giá bên ngoài các bản demo và tài liệu được cung cấp trên http://www.impredicative.com/ur/ .
  • Chúng tôi đã bị làm hỏng rằng nhiều ngôn ngữ khác hiện có giao diện nhanh hơn với máy chủ web. Sử dụng FastCGI cảm thấy như một bước lùi.
  • Lập trình SQL cảm thấy một chút bó lại.
  • Nhấn vào toán học của bạn để hiểu đầy đủ những gì ngôn ngữ / khung làm cho bạn.

Bất kỳ tiêu cực có thể được quy cho thực tế đó là thương hiệu mới. Cho nó một chút tình yêu. Nó xứng đáng Có lẽ bạn có thể trở thành một người ủng hộ giọng hát và làm cho việc tìm kiếm tài nguyên Ur / Web trở nên ít hơn.


Có lẽ bạn có thể nhận xét về câu trả lời của Adam và giải thích "bó lại" nghĩa là gì? Cảm ơn trước.
Janus Troelsen

Ngoài ra, "giao diện nhanh hơn cho máy chủ web" là gì? Theo tôi biết, FastCGI là một trong những giao thức nhanh nhất (được tối ưu hóa hơn) để trao đổi dữ liệu yêu cầu / phản hồi HTTP. Sự hỗ trợ của Nginx cho FastCGI không thua kém gì, và trên thực tế, hầu hết các thiết lập PHP hiện đại (ví dụ) là Nginx + PHP-FPM so với FastCGI. (Hoặc có thể câu trả lời này có ý nghĩa trở lại trong '11
Đá

3

Một điều tôi sẽ lo lắng là nó vẫn còn khá mới. Haskell và Erlang đều đã có từ lâu. Điều này có nghĩa là rất nhiều lỗi dễ dàng trong cả hai ngôn ngữ đã được xử lý từ lâu. Tôi sẽ rất hoài nghi rằng mã của họ nhanh và an toàn như bạn có thể làm trong haskell vì lý do đó.

Ngoài ra các bản demo trông rất web 1.0.


Vâng, tôi đồng ý các bản demo trông hơi nguyên thủy. Nhưng nếu nó có cùng mức độ sức mạnh như Haskell, tôi tin rằng sẽ sớm có nhiều tính năng hơn. Tôi cũng đã hoài nghi ở phần "hiệu quả hơn phần C điển hình". Nhưng công việc này khá ấn tượng nếu mọi thứ thực sự được thực hiện chỉ bởi 1 người: D
Phil

Tôi sẽ xem xét lâu hơn ở một số điểm, tôi hy vọng họ làm tốt! Nhiều khung và mọi người thử công cụ mới luôn tốt
Zachary K
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.