The OpenNET Project / Index page

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



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

Оглавление

Сборка Chrome для Windows переведена на использование Clang, opennews (ok), 06-Мрт-18, (0) [смотреть все]

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


62. "Сборка Chrome для Windows переведена на использование Clang"  +1 +/
Сообщение от Orduemail (ok), 07-Мрт-18, 10:36 
> Все думают, что этот шланг просто так ради интереса стартанули. Типа, чтобы
> gcc в одиночестве нескучно было.

Нет. Не все так думают. Я думаю иначе. Шланг стартанули потому, что с gcc'шным кодом может компоноваться только GPL-код. Если тебе приспичит сделать какой-нибудь препроцессор к C или статический анализатор, или движок подсветки синтаксиса и автодополнения к текстовому редактору, которые будут работать не на регекспах, но полностью парсить сорец, и тебе захочется найти библиотеку, которая займётся парсингом, чтобы получать сразу синтаксическое дерево разбора, то мало того, что с gcc ты замучаешься это делать (он не предназначен для работы в виде библиотеки), так ещё и код свой тебе придётся публиковать под GPL.

В этом собственно и заключался план Столлмана, но он не сработал. Может быть если бы gcc больше бы заботился о документации себя на всех уровнях, и о том, чтобы предоставлять готовую библиотеку для встраивания gcc в приложение, может быть в этом случае что-нибудь и вышло бы. Но gcc развивался сам в себя. Поэтому когда появился шланг, вокруг шланга моментально собралось множество разработчиков. Штольман прощёлкал клювом это изменение мира, и не успел переориентировать развитие gcc. Не поспел за хипстерами. Теперь ему остаётся только догонять, а вот здесь GPL ему уже конкретно мешает.

Ситуация не безнадёжна -- документация к шлангу тоже неидеальна. Можно сделать лучше, гораздо лучше. Но с другой стороны есть stackoverflow, а gcc, насколько я вижу, продолжает демонстрировать неспособность к гибкому реагированию на изменения трендов. Он продолжает заниматься повышением качества поддержки стандартов и глубины оптимизации, а вот создать инфраструктуру для GPL кода, который хочет использовать gcc в виде библиотеки -- это им как-то не очень интересно. Штольман постарел и закоснел, а у остальных революционного запала нет и идеологическая подкованность заканчивается на умении вербально воспроизводить лозунги Столлмана. Это, может быть, удел любой революции. А может это удел любой революции, которая строится вокруг одной личности-идеолога.

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

64. "Сборка Chrome для Windows переведена на использование Clang"  +1 +/
Сообщение от Andrey Mitrofanov (?), 07-Мрт-18, 10:44 
>так ещё и код свой тебе придётся публиковать
> под GPL.
> В этом собственно и заключался план Столлмана, но он не сработал.

План был, чтоб не было проприертарных расширений.

Он "сработал".

> быть если бы gcc больше бы заботился о документации себя на
> всех уровнях, и о том, чтобы предоставлять готовую библиотеку для встраивания
> gcc в приложение,

Выделил для ограниченных возможностями:

"" libgccjit

This document describes libgccjit, an API [U] for embedding GCC inside programs [/U] and libraries. "" --https://gcc.gnu.org/onlinedocs/gcc-7.3.0/jit/

> я вижу, продолжает демонстрировать неспособность к гибкому реагированию на изменения трендов.

Да. Но Вы можете продолжать изгибвться, нагибаться, прогибаться... Гибко!

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

66. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Аноним (-), 07-Мрт-18, 11:04 
jit все-же не совсем то.
Ответить | Правка | Наверх | Cообщить модератору

68. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Andrey Mitrofanov (?), 07-Мрт-18, 12:31 
> jit все-же не совсем то.

Как и "продовать gcc без исходников" нисавсем "предоставлять готовую библиотеку для встраивания gcc в приложение".

И?

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

70. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Orduemail (ok), 07-Мрт-18, 12:42 
>>так ещё и код свой тебе придётся публиковать
>> под GPL.
>> В этом собственно и заключался план Столлмана, но он не сработал.
> План был, чтоб не было проприертарных расширений.
> Он "сработал".

В смысле, что в gcc нет пропиетарных расширений, он сработал бесспорно. Но план Столлмана был шире -- он хотел зохватить мир своей GPL. В частности gcc был ключевым проектом, потому что как завещал Маркс, инструменты производства должны принадлежать пролеториату, то есть тому, кто пользуется этими инструментами, иначе дело кончится эксплуатацией. И вот на этом gcc сфейлился. И видимо уже непоправимо, llvm тихой сапой вытеснит gcc отовсюду, потому что программисту llvm зело удобнее. Одна штука на все кейсы, когда нужен парсер, работа с ast, или генерация машинного кода.

llvm позволяет строить более сложные системы. Так же как systemd проводя унификацию позволяет строить более сложные системы. Рост сложности систем неизбежен, поэтому всему тому, что не может подстроиться под этот тренд, уже заготовлено местечко в музее компьютерной истории.

>> быть если бы gcc больше бы заботился о документации себя на
>> всех уровнях, и о том, чтобы предоставлять готовую библиотеку для встраивания
>> gcc в приложение,
> Выделил для ограниченных возможностями:
> "" libgccjit
> This document describes libgccjit, an API [U] for embedding GCC inside programs
> [/U] and libraries. "" --https://gcc.gnu.org/onlinedocs/gcc-7.3.0/jit/
>> я вижу, продолжает демонстрировать неспособность к гибкому реагированию на изменения трендов.
> Да. Но Вы можете продолжать изгибвться, нагибаться, прогибаться... Гибко!

О, точно. Я ведь слышал про эту штуку. То есть, таки Столлман тоже демонстрирует способность прогибаться под изменчивый мир? Но, всё же, недостаточно. Initial release этого gccjit в 2013 году, то есть тогда, когда llvm и clang уже вовсю были доступны. И, кроме того, я, полистав документацию, так и не понял, пригоден ли этот gccjit для чего-нибудь, кроме jit. Подсветку синтаксиса на нём можно запилить? Статический анализатор кода? Вон, Торвальдс, когда ему понадобился статический анализатор кода, писал свой собственный парсер C, но это было задолго до появления gccjit и тогда ещё clang не взлетел. А сейчас есть ли шансы у Торвальдса пересесть на gcc'шные библиотеки? Можно ли через gccjit организовать рефакторинг кода? Мне тут когда понадобилось, я пользовался llvm, и что-то мне подсказывает, что gccjit мне бы был совершенно бесполезен для этих целей, даже несмотря на то, что мне совершенно фиолетова была лицензия: я писал одноразовый код для внутреннего использования.

Но документация реально приятнее, чем у clang/llvm. Если бы ещё функциональность была бы на схожем уровне, тогда может чего-нибудь и вышло бы. Но тоже вряд ли: время упущено, и убедить теперь кого-нибудь, что надо ради хорошей документации выбирать GPL лицензию, вряд ли удастся. И уж точно не удастся перевести mesa на GPL, чтобы линковать её с этим libgccjit.

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

72. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Andrey Mitrofanov (?), 07-Мрт-18, 13:05 
>>> В этом собственно и заключался план Столлмана, но он не сработал.
>> План был, чтоб не было проприертарных расширений.
>> Он "сработал".
> В смысле, что в gcc нет пропиетарных расширений, он сработал бесспорно. Но
> план Столлмана был шире -- он хотел зохватить мир своей GPL.

Так свобода же -- Вы можете не приходить.

> В частности gcc был ключевым проектом, потому что как завещал Маркс,

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

80. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Orduemail (ok), 07-Мрт-18, 18:16 
>>>> В этом собственно и заключался план Столлмана, но он не сработал.
>>> План был, чтоб не было проприертарных расширений.
>>> Он "сработал".
>> В смысле, что в gcc нет пропиетарных расширений, он сработал бесспорно. Но
>> план Столлмана был шире -- он хотел зохватить мир своей GPL.
> Так свобода же -- Вы можете не приходить.

Проблема в том, что не только я могу не приходить. Может не придти никто.

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

77. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Аноним (-), 07-Мрт-18, 15:49 
> документация к шлангу тоже неидеальна

Почему "тоже"? Документация — едва ли не единственное, и уж точно основное, в чём шланг сливает gcc по полной. У gcc есть полноценный мануал, у шланга — только разрозненный набор веб-страничек разной степени неактуальности и крайне неполные маны.

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

79. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Orduemail (ok), 07-Мрт-18, 18:15 
>> документация к шлангу тоже неидеальна
> Почему "тоже"? Документация — едва ли не единственное, и уж точно основное,
> в чём шланг сливает gcc по полной. У gcc есть полноценный
> мануал, у шланга — только разрозненный набор веб-страничек разной степени неактуальности
> и крайне неполные маны.

Ты сейчас ведь говоришь про документацию на компилятор, как command-line утилиту? Я немного о другом: попробуй написать фронтенд к gcc, и ты увидишь, что значит "качество" документации. Сейчас ситуация может и изменилась, но лет пять назад это был форменный кошмар.

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

81. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от Аноним (-), 07-Мрт-18, 20:20 
Да ладно? У GCC есть не только подробная документация по интерфейсам различных частей, но даже туториалы по созданию фронт/бэкендов (да, в рамках официальной документации!). Во времена четвертой ветки, когда мне пришлось ковырять GCC на предмет добавления туда одной фичи, которая требовала модификации всего стека - от лексера до генератора кода - мне хватило пары вечеров вдумчивого чтения документации, чтобы еще за день взять и запилить. У шланга до сих пор "суши весла". Все-таки GCC - это не clang. И это хорошо, ибо многие технические решения шланга - и в том числе его попытка быть в каждой бочке затычкой в ущерб общему качеству - весьма спорны.
Ответить | Правка | Наверх | Cообщить модератору

85. "Сборка Chrome для Windows переведена на использование Clang"  –1 +/
Сообщение от Orduemail (ok), 07-Мрт-18, 21:21 
> Да ладно? У GCC есть не только подробная документация по интерфейсам различных
> частей, но даже туториалы по созданию фронт/бэкендов (да, в рамках официальной
> документации!). Во времена четвертой ветки, ...

Хм. Видимо я каким-то образом прошёл мимо всего этого.

> И это хорошо, ибо многие технические решения шланга - и в
> том числе его попытка быть в каждой бочке затычкой в ущерб
> общему качеству - весьма спорны.

Спорны они или нет, но проектов на базе gcc раз-два и обчёлся, а на llvm каждый второй хипстер пилит.

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

93. "Сборка Chrome для Windows переведена на использование Clang"  +/
Сообщение от vitalif (ok), 11-Мрт-18, 11:54 
Да не поэтому. Шланг и LLVM создали потому, что у него архитектура более интересная, чем у других компиляторов.

Просто при этом не выбрали GPL. Но создавали его не для того, чтобы урон открытому софту нанести.

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

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

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




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

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