The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

В компиляторе PCC обеспечена возможность сборки FreeBSD, opennews (??), 31-Янв-11, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


18. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +2 +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 03:45 
>> Мне кажется не очень жизнеспособна эта вещь, в реале мало кто будет
>> пользоваться, так что будем ждать яблокомпилер вот это будет достойная замена
>> gcc, а пока gcc наше всё
> кстати. а зачем, собственно, нужна "замена gcc"?

Соображений несколько:

1. Архитектура GCC довольно сложна и запутана. По сообщениям агентства ОБС, в давние времена доходило до специального запутывания кода, дабы злобные пропиетарщики не утащили к себе (GPL появилась позже GCC).

2. Регулярные попытки изменить оную архитектуру нередко приводят к необходимости убирать поддержку тех или иных архитектур, поддерживать которые не хватает сил. (см. release notes) С другой стороны, при разработке GCC так или иначе приходится принимать те или иные архитектурные решения, которые связаны чисто с приоритетами для конкретных задач - а ведь эти приоритеты отнюдь не разделяются всеми людьми на свете.

3. GCC распространяется под некошерной для многих проектов лицензией (вопрос о том, хорошо это или плохо, предлагаю оставить за кадром, здесь просто перечисление причин).

4. Развитие GCC довольно жёстко контролируется GNU, как следствие, инновациям там пробиваться сложнее. (см., например, историю создания egcs)

Ответить | Правка | Наверх | Cообщить модератору

19. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 31-Янв-11, 04:03 
собственно, никто же не мешает сделать форк GCC и пилить куда угодно (egcs, ага).

то, что код в GCC весьма сложный — это факт; однако же другой компилятор с сопоставимыми ТТХ вряд ли будет сильно проще. а если ТТХ не сопоставимы — то это уже не «замена», а так, очередной компилятор просто.

опять же: с чего бы у «замены» хватало сил на 100500 архитектур? выкидывают-то архитектуры в основном не потому, что оно больше никак не лезет в код, а потому, что некому ними заниматься (сиречь, они нафиг не нужны никому, кроме, может быть, трёх с половиной инвалидов). точно такая же ситуация будет и у «замены».

то есть, по сути, любая попытка сделать «замену GCC» превратится в попытку «написать ту же самую GCC, но с нуля, с Такой-То-Лицензией и печеньками». бессмысленная трата сил, по-моему.

и касательно темы: pcc вообще с GCC соревноваться не собирается, это игроки совершенно разного масштаба. и ничего против pcc я не имею — наоборот, только рад, что его допиливают.

(я надеюсь, мы тут друг друга верно поняли, и под GCC подразумевали GNU Compiler Collection?)

Ответить | Правка | Наверх | Cообщить модератору

21. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +1 +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 04:56 
> собственно, никто же не мешает сделать форк GCC и пилить куда угодно
> (egcs, ага).

Можно. Но, опять же, сложно. Если архитектура изначально слишком запутанная, проще сделать своё, чем форкать. Freeswitch, например, таким образом появился.

> то, что код в GCC весьма сложный — это факт; однако же
> другой компилятор с сопоставимыми ТТХ вряд ли будет сильно проще. а
> если ТТХ не сопоставимы — то это уже не «замена», а
> так, очередной компилятор просто.

Ну вот тот же LLVM играет в той же лиге (насколько убедительно на на данный момент - другой вопрос). Сравните хотя бы объём строк кода на ключевых участках. Строго говоря, по фичам LLVM даже богаче GCC. Последний берёт скорее текущим уровнем портированности, а также, косвенно, наличием привязки к GNU toolchain во многих проектах, для которых GCC - не просто набор компиляторов.

> опять же: с чего бы у «замены» хватало сил на 100500 архитектур?

Вполне возможно, что за счёт более грамотной внутренней организации проекта поддерживать дополнительные архитектуры будет проще. Что мы, собственно, и имеем в некоторых случаях.

> выкидывают-то архитектуры в основном не потому, что оно больше никак не
> лезет в код, а потому, что некому ними заниматься (сиречь, они
> нафиг не нужны никому, кроме, может быть, трёх с половиной инвалидов).
> точно такая же ситуация будет и у «замены».

Может, и нужны, только вот пилить ещё и GCC помимо своего проекта зачастую накладно. Почему? - см. выше про сложность.

> то есть, по сути, любая попытка сделать «замену GCC» превратится в попытку
> «написать ту же самую GCC, но с нуля, с Такой-То-Лицензией и
> печеньками». бессмысленная трата сил, по-моему.

Не "ту же самую". LLVM тот же изначально позиционировался иначе (ключевой момент в буковках VM). Это уже как следствие он начал конкурировать с GCC.

Что же касается PCC - тут мне сложнее сказать, близко в нём я не ковырялся. То, что видел, выглядело достаточно читаемым, и задел у него есть — но за рамки Си и Фортрана (и то под вопросом) он, вроде, лезть не собирается.

Ну а насчёт бессмысленности траты сил из-за лицензионного вопроса - фор хум хау. Предлагаю на эту тему не спорить, а просто остаться каждый при своём мнении. :)

> и касательно темы: pcc вообще с GCC соревноваться не собирается, это игроки
> совершенно разного масштаба. и ничего против pcc я не имею —
> наоборот, только рад, что его допиливают.

Полностью согласен. Это примерно как универсальная отвёртка со сменными насадками, и простая отвёртка под конкретный размер. Если основная работа проходит с определённым типом винтов, второе предпочтительнее как минимум за счёт сочетания эргономики и.надёжности...

> (я надеюсь, мы тут друг друга верно поняли, и под GCC подразумевали
> GNU Compiler Collection?)

Верно.

Ответить | Правка | Наверх | Cообщить модератору

35. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  –1 +/
Сообщение от anonymous (??), 31-Янв-11, 08:10 
добавлю: мне ещё нравятся расширения компилятора C в GCC. поэтому мои проекты, например, к GCC хорошо привязаны.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру