Профессор Сеп Камвар (Sep Kamvar) из медиа-лаборатории Массачусетского технологического института при участии нескольких аспирантов создал новый язык программирования, специально ориентированный на создание социальных приложений. В частности, как заверяют авторы, на языке Dog легко писать системы вопросов и ответов, сайты знакомств и другие онлайн-приложения с социальным подтекстом. Кроме того, за счет использования естественных выражений английского языка начинающим программистам будет довольно легко осваивать принципы написания кода.
Профессор Камвар, как главный разработчик языка Dog, объясняет свое решение создать новый язык программирования недостатками современных языков. В частности, Камвар считает такие популярные языки, как Java, неоправданно сложными, когда дело касается управления социальными взаимодействиями. Вещи, которые легко описать на естественном языке, вроде команды уведомить определенного пользователя о некоем событии, нужно интерпретировать в терминах хранения данных и коммуникационных протоколов.
В рамках языка Dog создана простая система записи кода, построенная на самых простых командах: спросить (ask), слушать (listen), уведомить (notify) и вычислить (compute). Пример строки кода для ленты новостей в социальной сети может выглядеть так: «LISTEN TO PEOPLE FROM mit VIA http FOR posts» (СЛУШАТЬ записи ЛЮДЕЙ ИЗ мти ЧЕРЕЗ http). Этот набор команд коротко описывает отслеживание новых записей, сделанных пользователями из МТИ, по протоколу HTTP.
Конечно, подобные задачи можно выполнить практически на любом языке программирования, однако эту будет совсем не так просто, как в языке Dog. Кроме того, поддерживается импорт функций из других языков программирования, поскольку сам язык Dog предназначен сугубо для описания социальных взаимодействий. За последние 12 месяцев Камвар со своими аспирантами написали Dog-компилятор, который уже позволяет писать несложные приложения и собирать из них полноценные исполняемые файлы вроде ленты микроблогов или системы взаимного обучения. Появление общедоступных версий Dog ожидается к лету следующего года. В нынешнем виде язык Dog предназначен для исполнения на сервере, но авторы уже ведут работу над реализацией аналогичных механизмов на стороне клиента.
Конечно, язык Dog не выглядит серьезной и нужной разработки с точки зрения теории программирования. С другой стороны, добавление естественного языка в описании взаимодействий действительно может пригодиться людям, не связанным напрямую с программированием. В частности, концепция языка Dog может пригодиться конструкторам интерфейсов или менеджерам по разработке ПО – им часто приходиться ждать, пока их идеи обретут форму в руках инженеров–программистов.
В более общем смысле язык Dog может сильно упростить программирование, или, по крайней мере, понимание кода тех же web-страниц. Несмотря на все внимание к сервисам для онлайн-обучения программированию вроде описанного нами сайта Codecademy, авторы языка Dog считают, что создатели таких сайтов недооценивают сложность освоения программирования для большинства людей. Подробнее узнать о концепции нового, более дружественного языка программирования Dog можно узнать на сайте проекта по адресу http://dog-lang.org/.
Отправить комментарий