Проект Eclipse развивает новый язык программирования Xtend

Проект Eclipse ввёл в строй сайт для нового языка программирования Xtend, базирующегося на виртуальной машине Java и построенного с использованием фреймворка Eclipse Xtext, предоставляющего набор средств для создания предметно-ориентированных языков. Вместо прямой генерации байткода для JVM, исходные тексты на языке Xtend компилируются в представление на языке Java, примерно также как CoffeeScript компилируется в JavaScript. При этом на выходе получается вполне читаемый Java-код, который в дальнейшем можно использовать для Android и GWT (Google Web Toolkit).

Xtend не ставит перед собой цель заменить Java, а пытается модернизировать Java и предоставить удобную альтернативу для некоторых слабых мест, сохраняя общее сходство синтаксиса. Наиболее заметное отличие от Java связано со значительным упрощением синтаксиса за счет избавления от лишнего «шума», что в конечном итоге приводит к улучшению читаемости кода. Xtend остаётся языком со статической типизацией, но при объявлении переменных позволяет явно не указывать типы, если их можно определить из явного контекста. Упрощён доступ к свойствам (person.name вместо person.getName() или person.name = «Foo» вместо person.setName(«Foo»)), переведено в разряд опций указание скобок и точки с запятой вместо obj.compute() можно указать obj.compute).

Xtend полностью поддерживает всю базовую функциональность Java, включая поддержку библиотек классов и возможность непосредственного взаимодействия из Xtend-программ с кодом на языке Java и наоборот, поддержку прозрачного вызова написанных на языке Xtend функций из Java-программ. Из дополнительных возможностей, дополняющих средства Java, можно отметить замыкания, шаблоны выражений (что-то похожее на макросы C/C++), мультиметоды (полиморфный вызов методов), методы расширения, перегрузка операторов, мощная альтернативная реализация выражения «switch».

Отдельно отмечены полноценные средства по интеграции с платформой Eclipse. Для упрощения разработки подготовлен плагин для интегрированной среды Eclipse, который поддерживает, большинство возможностей доступных при разработке на языке Java.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.