Новости IT, хостинга
  Android, Apple, Facebook, Google, Linux, Microsoft, Samsung, Twitter, Интернет, Россия, браузеры, обновление ПО, онлайн-сервисы, операционные системы, планшеты, рынок ИТ, сделки, смартфоны, социальные сети, уязвимости  
  новостей: 10378
  комментариев: 2684

Обсуждение возможных планов развития GCC 5.0


Среди разработчиков набора компиляторов GCC развернулась обширная дискуссия о планах и задачах для будущей ветки GCC 5.0. При этом основной темой размышлений о возможных путях развития GCC, стало его обсуждение в контексте стремительно набирающего популярность проекта LLVM (Low Level Virtual Machine).

Так, активный разработчик GCC Дэвид Малкольм (David Malcolm) из компании Red Hat подробно изложил своё видение будущего проекта, которое сводится к предложению переписать GCC с Си на Си++, разработать полноценный API для подключения плагинов, а также в движении GCC в сторону более модульной структуры – реализации базовой части в виде набора самодостаточных библиотек.

Идея заключается в том, что подобные библиотеки, из которых будет состоять GCC 5, смогут очень легко внедряться в приложения, так же легко, как это делается в LLVM. Дэвид, в частности, заявляет: "Я очень надеюсь, что GCC будет двигаться в сторону коллекции библиотек, которые могут быть свободно внедрены в любые лицензионно-совместимые приложения. LLVM завоевала популярность для случаев, где нужна JIT-компиляция. Я понимаю, что JIT-компиляция сильно отличается от классического предварительного компилирования, которого придерживается проект GCC. В идеале, GCC превратится в набор разделяемых библиотек, которые могут быть слинкованы как статически, так и динамически. Запускаемые файлы превращаются в тонкую обертку, которая лишь вызывает нужные библиотеки".

Приведение GCC к модульной структуре - это очень сложная задача. Поэтому Дэвид добавляет: "Подобная переработка архитектуры сегодняшнего GCC очень сложна (быть может, даже и невозможна), хотя бы потому, что мы не можем однозначно решить, какому отдельному модулю какой код компилятора должен принадлежать. Важно в первую очередь принять некую карту развития - при этом, вероятно, придётся смириться с тем, что модульный GCC 5 будет обладать меньшей функциональностью, чем текущий GCC, будет менее оптимизированным и менее мощным. Я не знаю, возможно ли это осуществить вообще (поэтому я иногда очень пессимистичен к этому проекту), в том числе потому, что многие оплачиваемые разработчики GCC работают на компании, которые не допустят столь масштабных изменений".

Кроме того, препятствием для потенциального сближения GCC и LLVM является то, что компиляторы LLVM поставляются под более либеральной лицензией BSD, которая более любима компаниями и более совместима со сторонним программным обеспечением, тогда как GCC распространяется под лицензией GPLv3, вносящей ряд ограничений при связывании библиотек. Даже если разработчики и согласятся в будущем сфокусироваться на модульности будущего GCC, это потребует немало времени.


Источник: opennet.ru

  21 марта 2012 464
Версия для печати

← предыдущая новость следующая новость →

Мой комментарий
Ваше имя*:
Email:
Комментарий*:
Зарегистрироваться автоматически: Вы будете зарегистрированы на сайте автоматически при добавлении комментария. Обязательно заполните поле Email для этого.
Сумма чисел 7 и 12*:            


Хостеры (2465)
HostDB (35)
Софт (2640)
Железо (993)
Интернет (1435)
Статистика и аналитика (3324)




Отправить сообщение администратору

Сумма чисел 38 и 0*:


Яндекс цитирования
сообщить о неточности