Планируется поддержка высокопроизводительных вычислений, сценариев и нового языка
Конференция JavaOne осталась позади, и Sun Microsystems начинает вынашивать планы расширения платформы Java. Речь идет о поддержке высокопроизводительных вычислений, современных средств сценарного программирования, а может быть, и о совершенно новом языке.
"Одна из наших групп всерьез занялась разработкой языка, - рассказал нам в интервью Джеймс Гослинг, директор по технологиям отделения программных продуктов Sun и создатель Java. - Это делается в рамках проекта, который нацелен на системы для высокопроизводительных вычислений (High Performance Computing, HPC)".
Гослинг собирается поднять Java на новые высоты
Работа проводится по заказу Управления перспективных исследований министерства обороны США (DARPA). Проект призван заполнить брешь между предложенной в конце 80-х годов прошлого века технологией, которая до сих пор широко используется во многих HPC-средах, и потребностями сегодняшнего дня. Кроме правительства в его финансировании участвуют также корпорации IBM и Cray.
"Sun взялась за создание высокопроизводительных аппаратных и программных средств, - пояснил Гослинг. - Пока трудно сказать, к чему это приведет, но мы подумываем о новом языке программирования, пригодном для решения научных задач". Такой язык может базироваться на виртуальной Java-машине, однако сегодня нет никакого реального продукта; не намечены ни дата его выпуска, ни даже сроки представления альфа-версии".
Однако, по мнению руководителя отдела национальной лаборатории Lawrence Berkeley, занимающегося исследованиями в области высокопроизводительных вычислений, Дэвида Бейли, язык Java еще не готов для подобных задач. "Я не слышал о примерах использования его для решения серьезных вычислительных задач, - говорит он. - Дело в том, что производительность Java не идет ни в какое сравнение ни с C/C++, ни с Фортран 90".
А вот профессор Калифорнийского университета (Беркли) Катрин Елик придерживается несколько иного мнения: "По производительности Java отличается от других языков далеко не так сильно, как это может показаться". Сейчас она является одним из лидеров университетского проекта Titanium, предусматривающего по существу разработку параллельного диалекта Java для высокопроизводительных вычислений. На виртуальную машину Java, впрочем, этот проект не замахивается.
А вот какое мнение по данному вопросу высказал Хорст Саймон, помощник директора лаборатории BerKley Lab: "Sun стоило бы создать версию Java, которая бы не только позволяла эффективно разрабатывать ПО, но и обеспечивала высокую производительность параллельных вычислений".
Как заявил ведущий специалист Sun Грэхем Гамильтон, стоявший у истоков Java 5.0, компания подумывает и о новом языке. "Нам не хочется повторять путь С++ и продолжать совершенствовать язык до тех пор, пока он не станет невообразимо сложным, - отмечает он. - Вместо этого стоит попытаться реализовать самые передовые идеи в совершенно новом языке. Фирма вложила колоссальные средства в платформу Java, поэтому нужно, чтобы та смогла работать и с новыми языками".
По словам Гамильтона, Sun смотрит далеко за рамки Java 5.0 и стремится обеспечить еще лучшую интеграцию данных. Следующая версия под номером 6.0 уже получила название Mustang, а версия 7.0 носит имя Dolphin. В них, как рассказали Гамильтон и Гослинг, будет усовершенствована поддержка сценариев, совместимых с Perl, PHP, JavaScript и Groovy.
"Хотелось бы охватить побольше сценарных языков наподобие РНР, - добавляет Гамильтон. - Groovy - это открытый язык, специально разработанный для платформы Java. Неплохо было бы иметь и еще несколько ему подобных. Нам, конечно, нравится мощь языка Java, однако для нас это скорее платформа, чем язык. Поэтому мы присматриваемся и к другим дружественным языкам, которые помогут привлечь на нашу сторону более широкий круг разработчиков".