Ur / Web нова суто функціональна мова для веб-програмування? [зачинено]


17

Я натрапив на проект Ur / Web під час пошуку веб-рамок для мов, схожих на Haskell. Це виглядає як дуже цікавий проект, зроблений однією людиною.

В основному, це доменна суто функціональна мова для веб-програмування, яка бере найкращі ML та Haskell. Синтаксис - це ML, але є класи типів і монада від Haskell, і це суворо оцінюється. На стороні сервера компілюється до рідного коду, клієнт - до Javascript. Дивіться слайди та сторінку поширених запитань про інші рекламовані переваги.

Дивлячись на демонстрації та їх вихідний код , я думаю, що проект є дуже перспективним. Остання версія - це щось 20110123, тому, здається, наразі перебуває в активному розвитку.

Хтось тут мав додатковий досвід з цим? Чи є проблеми / роздратування у порівнянні з Haskell, за винятком дещо більш багатослівного синтаксису ML?


Nitpick: Ur / Web не є мовою програмування для веб-програмування. Ur - це мова програмування загального призначення, Ur / Web - це веб-рамка, написана на Ur, яка використовує перевагу системи типу Ur для надання статичних гарантій щодо безпеки та функціональності веб-програми. (Щоправда, справедливо: Ур був розроблений спеціально для підтримки Ур / Веб.)
Jörg W Mittag

Відповіді:


24

Я автор Ur / Web. Я щойно створив цей обліковий запис, тому не вистачає моджо, щоб відповісти на інші минулі відповіді.

Ur / Web дозволяє плагінам реалізовувати різні веб-протоколи, тому, якщо ви хочете побачити якийсь інший протокол, окрім CGI, FastCGI або HTTP, ви, можливо, зможете його реалізувати або попросити мене його реалізувати. :) Я справді не знав про це з жодної альтернативи, яку шукали люди.

Що означає програмуванню SQL відчувати себе "згорнутим"?

Re: скарги на "Web 1.0" виглядають, я вважаю це функцією, призначеною для економії часу для людей, які не хочуть користуватися цією мовою. ;) Немає відсутніх мені функцій, які заважають писати програми, які виглядають, як вам подобається, і я вважаю, що це очевидно, коли ви переробляєте основні налаштування мови та бібліотек.

Нарешті, ScantRoger, я хотів би почути ваші враження щодо застосування Ur / Web з клієнтом! Я не знаю, чи було б поганою формою надати тут свою контактну інформацію, але внизу головної сторінки Уру є посилання на мою особисту веб-сторінку.


11

Ми використовували його для клієнта, який не сприймає безпеку, і зазначили наступне:

  • Як мова, із цим приємно працювати. Ми не відчували, що синтаксис на основі ML є особливо багатослівним порівняно з Haskell.
  • За межами демонстрацій та документації, наданих на веб-сайті http://www.impredicative.com/ur/, є безліч цінних порад .
  • Ми були зіпсовані, що багато інших мов тепер мають швидший інтерфейс для веб-сервера. Використання FastCGI відчуло себе як крок назад.
  • Програмування SQL трохи збільшилося.
  • Намагайтеся на математику, щоб повністю зрозуміти, що мова / рамки робить для вас.

Будь-які негативи можна віднести до того, що він абсолютно новий. Подаруй це трохи любові. Це заслуговує. Можливо, ви можете стати голосовим захисником і зробити пошук ресурсів ур / веб-ресурсом менше.


Можливо, ви можете прокоментувати відповідь Адама і пояснити, що означає "згустоване"? Заздалегідь спасибі.
Янус Троельсен

Крім того, якими були б "швидші інтерфейси до веб-сервера"? Наскільки мені відомо, FastCGI - це один з найшвидших (оптимізованіших) протоколів для обміну даними HTTP запиту / відповіді. Підтримка Nginx для FastCGI нічим не поступається, і насправді більшість сучасних налаштувань PHP (наприклад) - це Nginx + PHP-FPM над FastCGI. (А може, ця відповідь мала сенс ще у 11 році…)
Тобія

3

Я б хвилювався про те, що це все ще досить нове. Хаскелл і Ерланг обидва вже давно. Це означає, що багато легких помилок в обох мовах уже давно відпрацьовано. Я був би дуже скептичний, що їх код настільки ж швидкий і безпечний, як ви можете це зробити в haskell з цієї причини.

Також демонстрація виглядала дуже веб-1,0.


Так, я погоджуюся, що демонстрація виглядає дещо примітивно. Але якщо він має той самий рівень потужності, що і Haskell, я вірю, що незабаром буде більше функцій. Я також скептично ставився до "ефективнішої, ніж типова С" частини. Але ця робота є досить вражаючою, якщо все справді робила лише одна людина: D
Phil

Я ще довше погляну на якийсь момент, пекло, я сподіваюся, що вони справляться добре! Більше фреймворків та людей, які пробують нові речі, завжди добре
Zachary K
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.