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

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


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

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

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

«Я думаю, что этот язык может найти очень широкое применение, так как он способен сократить издержки на веб-разработку во многих случаях», — заявил создатель Ur/Web Адам Члипала (Adam Chlipala), помощник профессора из Массачусетского технологического института.

Он добавил, что язык обладает большей степенью универсальности по сравнению с современными веб-стандартами. Сейчас разработчику для создания сайта нужно знать несколько языков программирования и веб-технологий:

HTML — позволяет сформировать макет страницы;

CSS — определяет свойства элементов страницы;

JavaScript — позволяет внедрить расширенные функции и интерактивность;

PHP — язык, используемый для создания популярных систем управления контентом;

SQL — язык структурированных запросов для работы с базами данных.

Ur/Web включает в себя функции и возможности всех отдельных языков, на которых пишутся веб-сайты, и компилирует их в исполняемый машинный код. Так как код Ur/Web скомпилирован заранее, производительность получается более высокой по сравнению с традиционными методами разработки веб-сайтов, утверждает Члипала. В одном из тестов Ur/Web показал в два раза более высокую скорость по сравнению с PHP.

«В Ur/Web все базируется на транзакциях, когда каждый клиентский запрос обрабатывается поочередно своего рода центральной функцией, — объяснил автор. — Язык при этом оптимизирован с той целью, чтобы он мог обрабатывать одновременно множество параллельных запросов на физических серверах».

Помимо облегчения для части разработчиков, новый язык привносит некоторые новые механизмы, помогающие повысить надежность и безопасность сайтов. Так, он позволяет исключить возможность взаимодействия между различными элементами на одной странице — например, кодом рекламного объявления и виджетом календаря.

Кроме того, как и традиционные языки программирования, такие как C, Pascal и Java, и в отличие от веб-языков, таких как JavaScript, Ur/Web имеет жесткую типизацию. То есть все переменные связываются с определенным типом данных в самом начале, и затем этот тип уже нельзя изменить. Это затрудняет взлом сайта посредством отправки специальным образом сформированных команд с помощью форм на веб-страницах. Ur/Web также поддерживает задание областей видимости переменных, то есть позволяет ограничить те места, из которых переменная в программе может быть вызвана.

Но есть у нового языка и недостаток. Он требует освоения функционального программирования. Эта задача будет сложной для тех, кто привык иметь дело с процедурными и объектно-ориентированными языками (С, Pascal). Члипала сравнил Ur/Web с функциональным языком программирования Haskell. Многие программисты считают его чем-то потусторонним, но небольшая группа разработчиков любит и почитает этот язык за его вычислительные возможности.

Источник: Сnews


Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: