В MIT создали язык программирования Ur/Web, объединяющий возможности HTML, CSS и JavaScript

   Создание относительно сложной веб-страницы требует понимания целого ряда языков, включая HTML, CSS и JavaScript. Исследователи из Массачусетского технологического института утверждают, что интегрировали все эти технологии в новый единый язык программирования, позволяющий упростить и ускорить разработку веб-сайтов и сделать их надежнее и безопаснее.

   Язык под названием Ur/Web позволит разработчикам создавать веб-страницы как самостоятельные замкнутые программы. А, так как он включает большинство самых популярных из современных веб-технологий, разработчик будет освобожден от работы с каждым из языков по отдельности.
 
   «Я думаю, что этот язык может найти очень широкое применение, так как он способен сократить издержки на веб-разработку во многих случаях», — заявил создатель Ur/Web Адам Члипала (Adam Chlipala), помощник профессора из Массачусетского технологического института.
 
   Ur/Web включает в себя функции и возможности всех отдельных языков, на которых пишутся веб-сайты, и компилирует их в исполняемый машинный код. Так как код Ur/Web скомпилирован заранее, производительность получается гораздо более высокой по сравнению с традиционными методами разработки веб-сайтов, утверждает Члипала. В одном из тестов Ur/Web показал в два раза более высокую скорость по сравнению с PHP.
 
   «В Ur/Web все базируется на транзакциях, когда каждый клиентский запрос обрабатывается поочередно своего рода центральной функцией, — объяснил автор. — Язык при этом оптимизирован с той целью, чтобы он мог обрабатывать одновременно множество параллельных запросов на физических серверах».
 
   Помимо облегчения для части разработчиков, новый язык привносит некоторые новые механизмы, помогающие повысить надежность и безопасность сайтов. Так, он позволяет исключить возможность взаимодействия между различными элементами на одной странице — например, кодом рекламного объявления и виджетом календаря.
 
   Кроме того, как и традиционные языки программирования, такие как C, Pascal и Java, и в отличие от веб-языков, таких как JavaScript, Ur/Web имеет жесткую типизацию. То есть все переменные связываются с определенным типом данных в самом начале, и затем этот тип уже нельзя изменить. Это затрудняет взлом сайта посредством отправки специальным образом сформированных команд с помощью форм на веб-страницах. Ur/Web также поддерживает задание областей видимости переменных, то есть позволяет ограничить те места, из которых переменная в программе может быть вызвана.
 
   Но есть у нового языка и недостаток. Он требует освоения функционального программирования. Эта задача будет сложной для тех, кто привык иметь дело с процедурными и объектно-ориентированными языками (С, Pascal). Члипала сравнил Ur/Web с функциональным языком программирования Haskell. Многие программисты считают его чем-то потусторонним, но небольшая группа разработчиков любит и почитает этот язык за его вычислительные возможности.

Комментировать

Оставлять комментарии могут только авторизованные пользователи ... Авторизуйтесь, через вашу любимую социальную сеть!

{%Last10%}