URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 130011
[ Назад ]

Исходное сообщение
"Релиз набора компиляторов LLVM 16.0"

Отправлено opennews , 19-Мрт-23 09:07 
После шести месяцев разработки представлен релиз проекта LLVM 16.0 - GCC-совместимого инструментария (компиляторы, оптимизаторы и генераторы кода), компилирующего программы в промежуточный биткод RISC-подобных виртуальных инструкций (низкоуровневая виртуальная машина с многоуровневой системой оптимизаций). Сгенерированный псевдокод может быть преобразован при помощи JIT-компилятора в машинные инструкции непосредственно в момент выполнения программы...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=58817


Содержание

Сообщения в этом обсуждении
"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 09:07 
Спасибо! Классный проект, и используется как бэкэнд еще более классного проекта Rust.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 09:50 
>В бэкенде для архитектуры ARM прекращена поддержка целевых платформ Armv2, Armv2A, Armv3 и Armv3M.

И сюда гномеры пробрались!


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 10:11 
Ну заброcили устаревшие платформы. А гномеры то тут при чём?

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 10:26 
У них там офигеть архитектура - вся кодогенерация в одной огроменной суперлибе. Без разбивки на компоненты. Ну либа и стала под сто метров весом. Нормальная такая либа. Только вот вот сдохнет под своим весом. Вот и приходится хоть немного жир выпускать.

Зато, вот, "Не надо держать 100500 сборгк gcc." (c) предыдущий оратор. Задача просто станет нерешаемой вообще :)))


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 11:10 
Мне самому не нравится, что для добавления бэкенда нужно пересобирать clang, а нельзя сделать динамическую библиотеку. Можно предположить, что если растащить всё по динамическим библиотекам, то это будет намного труднее сопровождать, ибо каждую экспортируемую функцию надо проанотировать соответствующими макросами, в результате работа сведётся к поиску непроанотированных функций, их анотации и устранению циклических зависимостей (винда их не терпит). И так после каждого изменения внутренней структуры, которая происходит довольно часто.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 21-Мрт-23 22:56 
Меня просто размер этой либы начинает пугать. Особенно если посмотреть на то сколько архитектур GCC тулчейны поддерживают и их еще нету в ЭТОМ. "Кадавр жрал" (c).

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 10:48 
Похоже, что они никогда и не поддерхивались, а то, что компилятор принимал их как аргумент - это ошибка: он всё равнотгенерил код для поздних версий. https://github.com/llvm/llvm-project/issues/57486

Так что если кому нужно v2 и v3, то пусть пилят поддержку, скорее всего её с радостью примут.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Анонн , 19-Мрт-23 10:58 
Это не гномеры. Это новостедел так написал.
Вот что в оригинале:
"-march values for targeting armv2, armv2A, armv3 and armv3M have been removed. Their presence gave the impression that Clang can correctly generate code for them, which it cannot."

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


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 12:29 
Читайте дальше в списке изменений:
Support for targeting Armv2, Armv2A, Armv3 and Armv3M has been removed. LLVM did not, and was not ever likely to generate correct code for those architecture versions so their presence was misleading.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 12:31 
Вы процитировали изменения из clang, а теперь посмотрите изменения из списка для llvm.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 09:52 
Капец, как же всё сложно стало в этом мире. Слишком много переменных, сущностей...

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 10:14 
Вообще да, бесит конечно, что всё так сложно. Но сабж как раз делает создание кроссплатформенного софта проще

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 10:28 
"Компьютеры позволили делать ошибки намного быстрее и массовее!"

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 16:15 
Вот в неолите помню офигенно было!

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 16:19 
То ли дело 1000 лет назад - полжизни монотонный труд, полжизни в армии. А потом в 40 лет помер от инфекции для пущей лёгкости.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Serg , 29-Мрт-23 16:29 
Вот то ли дело в 1960х: более двадцати разных архитектур с полузакрытой документацией...

"Релиз набора компиляторов LLVM 16.0"
Отправлено Шарп , 19-Мрт-23 11:14 
>Разрешено применение некоторых математических символов в идентификаторах, таких как "₊" (, например "double xₖ₊₁")

Зачем? Всё равно человек написавший так в коде будет уволен с позором, а изменения откачены назад.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 12:39 
Вот вы и ищете программистов, а на самом деле вы уже всех нормальных программистов выгнали и они к вам больше не идут.  

"Релиз набора компиляторов LLVM 16.0"
Отправлено n00by , 21-Мрт-23 08:18 
Не можете найти соответствующее место в стандарте? Поэтому кого-то надо уволить? Ну так то да.

"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 11:51 
Жуткий монстр из ада.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 12:14 
Зато получше устаревшего жопаэльного gcc будет.

"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 12:24 
Гцц тоже тот ещё монстр, но всё же не такой чудовищный, как этот.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Анонимусс , 19-Мрт-23 12:40 
А в чем собственно чудовищность llvm?
Новые архитектуры и языки добавлять легко*, что фронт, что бек.
Поэтому всякие экспериментальные языки создаются как раз на его базе.

*Легко по сравнению с гцц при наличии достаточной компетентности.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 13:15 
Вам не ответят - то был типичный "эксперт opennet"

"Релиз набора компиляторов LLVM 16.0"
Отправлено anonymous , 19-Мрт-23 13:19 
вот злодей, что то там гонит на студенческую поделку залитую баблом аппле лишь бы не как в гцц

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 13:22 
И как бы аппле перевела весь свой софт на M1 без это студенческой поделки?

"Релиз набора компиляторов LLVM 16.0"
Отправлено Анонимусс , 19-Мрт-23 13:23 
При чем тут гонит-не гонит? Гнать можно по разным причинам: лицензия не та, гнутые огороженные экстеншены в ядре хуже оптимизирует, не поддерживает давно умершие маргинальные платформы, и т.д.
Но это все можно сформулировать и как-то обосновать.
А тут получается "огонь плохой!!11"

"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 13:48 
После перехода FreeBSD на clang пересборка мира и ядра стала занимать процентов на 30 больше времени. Наблюдается снижение производительности системы. И самое гадкое это то, что слишком часто стали проскакивать сегфолты, чего ранее на фряхе было встретить крайне сложно. Если собирать GCC, то таких проблем не наблюдается. Вот вам и хвалёный llvm.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 19-Мрт-23 14:15 
Нет.

1. Во времена 3.4 шланга всё собиралось как раз быстрее, он тогда был совсем маленький.

2. С прогретым ccache на 8 ядерном райзене полная пересборка и переустановка системы занимает примерно 5 минут. Те собирается и устанавливается мир, потом собирается и устанавливается ядро (с drm - amdgpu и доп дровами сетевух и прошивками для amdgpu), потом обновляются загрузчики.
С не прогретым - не более получаса.

3. Снижение производительности - ходили какие то слухи во времена 3.4, но с тех пор прошло много лет, и шланг отрастил оптимизации.
В общем ждём пруфов на бенчах со сежей фрёй собраной свежим шлангом из базы и свежим гцц из портов.

4. У меня фря на десктопе и на серверах, никаких сегфолтов я не замечал.
Все падения что я видел, при разборе коредампов указывали на проблемы конкретных приложений.
Попробуйте перейти на память с ECC и вообще проверьте железо.


"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 14:50 
Это повсеместная проблема, я её не с потолка взял.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Самый умный из вас , 19-Мрт-23 15:04 
Но ссылки на них я тебе конечно же не покажу

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 15:58 
Зачем их показывать когда каждому человеку на Земле доступен поиск по интернету?

"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 19-Мрт-23 17:20 
Те правоту высказывания анонима, с которым я не согласен я должен сам искать и подтверждать?

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 17:59 
В интеллект не способен? Твои не согласия твои личные проблемы. Или ты себя пупом мира возомнил что тебе все должны?

"Релиз набора компиляторов LLVM 16.0"
Отправлено InuYasha , 19-Мрт-23 16:31 
И кому же из вас верить, интересно?

"Релиз набора компиляторов LLVM 16.0"
Отправлено Майор , 19-Мрт-23 16:43 
Никому нельзя верить! Даже себе!
А вот мне - можно

"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 18:48 
https://www.phoronix.com/review/freebsd11-clang-gcc

И это только малая часть проблем.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Самый умный из вас , 19-Мрт-23 19:15 
Статья свежак, буквально на днях вышла

"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 19:54 
Неужели ты думаешь, что за несколько лет он вдруг воспарил к звёздам и научился обращать воду в вино?

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 19:53 
Бедняга... Как там в крио-камере?
Хотя, все относительно, 2016й был не таким уж плохим годом.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 19-Мрт-23 21:16 
А зачем вам 11 фря в 2023 году!?
Летом уже 14 будет, 11 давно не поддерживается.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 19-Мрт-23 17:18 
Маки (собранные llvm) повсеместно тормозят и сегфолтятся?

Вы вообще о проблемах llvm представления не имеете, только слышали и собственный опыт+неверные выводы.
Я вот могу вам привести свои тикеты с проблемами llvm, оно уже всё решено.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 17:52 
У шланга проблемы с кодогенерацией. Но местами получше msvc, тем и живёт. Зачем корпам завязка на шланг я вижу, но зачем свободным людям отказываться от более качественного и эффективного гцц я не понимаю. Я, если что, лично профилировал получаемый код, и gcc+pgo победитель по всем параметрам.

"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 18:21 
Да, тормозят и сегфолтятятся. Куча багов в UI, файловой системе и драйверах. Оверпрайснутый шлак, который покупают по привычке, ведь раньше это были действительно неплохие компьютеры.

"Релиз набора компиляторов LLVM 16.0"
Отправлено iZEN , 19-Мрт-23 16:22 
Каким образом тебе удалось собрать современную FreeBSD с помощью GCC? Расскажи, а.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 19-Мрт-23 17:25 
Вроде поддержку не дропнули, хотя я не пробовал.
Раньше в /etc/make.conf надо было задать CC, CCX и вроде оно собирало любым указанным компилятором.
Обычно этим пользовались чтобы использовать шланг по свежее из портов, но думаю некоторые, как войд, могли туда гцц прописать.

"Релиз набора компиляторов LLVM 16.0"
Отправлено iZEN , 19-Мрт-23 17:52 
Пробовал указывать в /etc/nake.conf:

CC=/usr/local/bin/gcc12
CXX=/usr/local/bin/c++12
CPP=/usr/local/bin/cpp12

Сборка базовой системы FreeBSD 13-STABLE обрывается по ошибке в исходнике:

% cd /usr/src/ && make cleandir buildworld
...
/usr/local/bin/gcc12 -c -O2 -pipe -frename-registers -fno-strict-aliasing -nostdinc -I. -I/usr/src/sys -I/usr/src/sys/contrib/ck/include -I/usr/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -MD -MF.depend.genoffset.o -MTgenoffset.o -fdebug-prefix-map=./machine=/usr/src/sys/amd64/include -fdebug-prefix-map=./x86=/usr/src/sys/x86/include -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fwrapv -fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas -Wno-error=address -Wno-error=aggressive-loop-optimizations -Wno-error=array-bounds -Wno-error=attributes -Wno-error=cast-qual -Wno-error=enum-compare -Wno-error=maybe-uninitialized -Wno-error=misleading-indentation -Wno-error=nonnull-compare -Wno-error=overflow -Wno-error=sequence-point -Wno-error=shift-overflow -Wno-error=tautological-compare -Wno-unused-but-set-variable -Wno-error=stringop-overflow -Wno-error=memset-elt-size -Wno-error=packed-not-aligned -Wno-address-of-packed-member -Wno-error=alloca-larger-than= -Wno-return-type -Wno-format-zero-length -fms-extensions -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fms-extensions -std=iso9899:1999 -fcommon /usr/src/sys/kern/genoffset.c
gcc12: error: unrecognized command-line option '-fformat-extensions'; did you mean '-fno-ms-extensions'?
*** Error code 1

Stop.


А сборка ядра вообще невозможна:

% cd /usr/src/ && make cleandir buildkernel
...
/usr/local/bin/gcc12 -c -O2 -pipe -frename-registers -fno-strict-aliasing -nostdinc -I. -I/usr/src/sys -I/usr/src/sys/contrib/ck/include -I/usr/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -MD -MF.depend.genoffset.o -MTgenoffset.o -fdebug-prefix-map=./machine=/usr/src/sys/amd64/include -fdebug-prefix-map=./x86=/usr/src/sys/x86/include -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fwrapv -fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas -Wno-error=address -Wno-error=aggressive-loop-optimizations -Wno-error=array-bounds -Wno-error=attributes -Wno-error=cast-qual -Wno-error=enum-compare -Wno-error=maybe-uninitialized -Wno-error=misleading-indentation -Wno-error=nonnull-compare -Wno-error=overflow -Wno-error=sequence-point -Wno-error=shift-overflow -Wno-error=tautological-compare -Wno-unused-but-set-variable -Wno-error=stringop-overflow -Wno-error=memset-elt-size -Wno-error=packed-not-aligned -Wno-address-of-packed-member -Wno-error=alloca-larger-than= -Wno-return-type -Wno-format-zero-length -fms-extensions -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fms-extensions -std=iso9899:1999 -fcommon /usr/src/sys/kern/genoffset.c
gcc12: error: unrecognized command-line option '-fformat-extensions'; did you mean '-fno-ms-extensions'?
*** Error code 1

Stop.


"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 18:31 
Кто тебе сказал, что я собирал последнюю версию. То была 10 или 11, точно не помню.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 19:56 
А давайте сразу 6.2 собирать! Заодно в 2007 вернемся!

"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 20:19 
Не с тобой разговариваю, чернь.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Anonymoustus , 19-Мрт-23 13:43 
Мне бы для Windows XP. Такая сборка будет или мне дальше страдать, используя GCC^W MS Visual Studio?


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 15:54 
Собери сам. clang поддерживает таргеттинг XP, нужно только флаги нужные задать. MonGW-w64 прекрасно работает на  XP. Только есть проблема. XP был дропнут разрабами pthreads. Им, видите-ли не хочется runtime dispatch делать, а новое API - 1 (ОДНУ, Карл) функцию от Висты - использовать хочется. В любом случае можно попробовать поставить One Core API, которое эту функцию реализует.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 15:55 
При больом желании можно задействовать старую версию pthreads.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 20:15 
> При больом желании

Можно и как "больНом" интерпретировать


"Релиз набора компиляторов LLVM 16.0"
Отправлено Фёдор , 20-Мрт-23 09:06 
Можно не ставить весь One Core API (поскольку это так-себе удовольствие, очень уж в нём пока косяков много). Достаточно выдрать оттуда нужную DLL и подсунуть её тому бинарнику, который её хочет (если нужно, то поменять таблицу импорта). А ещё можно написать тупенький враппер, который пробрасывает все вызовы в оригинальную DLL, кроме одной функции, код которой дёрнуть из Wine.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Официальный представитель LLVM , 19-Мрт-23 15:55 
Официально заявляю, никаких сборок для Windows XP мы больше никогда не будем делать. Спасибо за проявленный интерес.  

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 16:02 
,- раздался пронзительный с известной стороны.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 19-Мрт-23 17:22 
Может пора подумать о будущем?
Как вы через 10 лет видите свою жизнь?)

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 18:56 
>Как вы через 10 лет видите свою жизнь?

Выкатывают open window — клон хп/семерки и все взявшись за руки переходят на него.

Замечу что ос это монолитное АПИ с гарантиями совместимости и безопасности. По такому критерю многие дистрибутивы линуха не являются полноценными ОС — у них нет своего апи поверх которого можно писать пригладные приложения. Есть интерфейс ядра, интерфейсы конкретных системных приложний работающих в нем(вроде тех же иксов), а прикладному софту приходится играть в угадайку с чем он может взаимоестовать и через какие костыли. Именно поэтому конпеляция не останавливается никогда, а в нормальных ОС приложения скомпилированые один раз просто работают годами.

Выйди реально что-то на уровня open win линухи потеряют и те 2% десктопа что имеют.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 19-Мрт-23 22:22 
Смотря что считать стабильным API.
На уровне ядря и стандартных либ - у меня на фре всё стабильно.
Но ABI меняется, и я не вижу в этом проблемы, пока у меня опенсорсный софт который я сам собираю.

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

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


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 19-Мрт-23 23:15 
>я сам собираю

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

В мире линухов не считается добродетелью экономить чужие мозговые ресурсы. Это не злой умысел, а простое отсутвие стабильного АПИ ОС помноженное на культуру полного контроля компьютера(казалось бы причем тут @на-льники?). Итог закономерен - 2% пользователей или 3-сигма в матстате, ибо очень необычным кадрам такое нравится.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 20-Мрт-23 03:18 
Чем дольше гнилые бинарники совместимы - тем больше не решённых проблем под капотом и тем дороже это поддерживать.

Вы возможно не застали переход с 9х венды на 2к/хр, а я застал, и помню как приходилось некоторые бинарники патчить для совместимости.
А уж какие эпичные легенты про Ченга ходят и то как он костылял bug-to-bug совместимость под каждое отдельное приложение вы наверняка тоже не знаете.
Ну и там всякие утилиты которые в реестр позволяет записать для каждого приложения какие и как баги эмулировать - это дальнейшее развитие темы.

И отдельно, отладка приложений без исходников - это возня с file/reg/procmon и дебагером, что требует на порядки больше и времени квалификации чем читать и компелять из исходников.

Всё вместе это приводит к:
- бинарник ты наверное можешь перетащить, но рано или поздно он перестаёт работать на свежей ОС
- куча костылей которые нужно поддерживать ради совместимости
- отладка дебагером или всякими низкоуровневыми штуками, за долго и дорого, с патчингом на асме (тут я рекомендую почитать историю про нид фор спид 3 и как его энтузиаст патчил, и то это было возможно потому что в 98 году компилятор был без оптимизаций и асмовый код читается как сишный почти что)


Что до % - мне как то всё равно.
Отмечу только что лет 20 назад в инете были в основном обеспеченные, образованные и целеустремлённые люди, это потом туда пришли остальные 99,9% баласта.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 20-Мрт-23 03:24 
Ещё маенький нюанс: то WinAPI которое вам так нравится, оно принадлежит МС и с этим ничего не поделать. Они в любой момент могут начать регулировать его реализации на законных основаниях.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Neon , 20-Мрт-23 04:14 
Как принадлежит, так и распренадлежит))). Делов то.)))

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 20-Мрт-23 09:35 
Зачем им распренадлежать? Майки могут просто сделать правильный линукс как ОС. CBL-Mariner уже неплохой заход, только какбэ чуть с другой стороны, но направление верное.  

"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 20-Мрт-23 17:54 
Не могут.
Нормальный - это принадлежащий коммунити, что противоречит их традиционным моделям заработка.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 21-Мрт-23 23:03 
Вообще, вон на абажуре они забили на идею впаривать его как рантайм для дотнет-онли. А потом забили и на идею продавать там только винду. И теперь более 70% виртуалок на нем - линух. Видимо ну вот не нравится народу винду ремотно менеджить и гонять в автопилоте. Боль это пониже спины, как ни крути.

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

Вообще даже GPL сам по себе не особо мешает деньги зарабатывать. А идея продавать вот именно копии, вот именно байтиков - очень уж неестественно смотрится сейчас.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Ivan_83 , 20-Мрт-23 17:52 
Попытатся что то отнять у богатой корпорации из америки - нуну.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Мда , 24-Мрт-23 00:41 
Сказочник. МС обратную совместимость уже 30+ лет тянут.
С трудом им удается выкинуть лохматый код, чтобы юзвери не ныли.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноньимъ , 19-Мрт-23 16:36 
В этих хтонических стандартах только ИИ разберётся теперь.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Neon , 20-Мрт-23 04:15 
Да, навыдумывали всякой нечеловеческой х.е.р.н.и. Для себя, для разработчиков языка и стандартной либы. А на прикладных программистов поклали большой болт.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 20-Мрт-23 09:30 
Ну конечно надо без стандарта положить болт как в расте.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Мда , 24-Мрт-23 00:40 
Раст - дрянь, но C++ стандарт - дырявая дрянь с кучей undefined behaviour.

"Релиз набора компиляторов LLVM 16.0"
Отправлено Карлос Сношайтилис , 19-Мрт-23 19:48 
Растохейтеры: синтаксис раста сложный, то ли дело С++!

В это время С++:
X(X const&) requires C<T> = default;
constexpr auto __sb = std::tuple<int>(1);
auto g() -> S<T*>::Ptr;
using P = bool(*)(int, int);
int x = a\N{abc});


"Релиз набора компиляторов LLVM 16.0"
Отправлено VoiD , 19-Мрт-23 20:06 
Да они оба монстры.



"Релиз набора компиляторов LLVM 16.0"
Отправлено DontTreadOnMe , 19-Мрт-23 22:02 
Ну во-первых у тебя приведены не полные примеры, некоторые из них синтаксически не корректны.
Во-вторых, тут вполне нормальный синтаксис.

Вот какое-нибудь ([](){})();, что является абсолютно корректным кодом на C++, это да. А у тебя всё вполне понятно.


"Релиз набора компиляторов LLVM 16.0"
Отправлено Карлос Сношайтилис , 20-Мрт-23 13:00 
> тут вполне нормальный синтаксис

Для разработчика на С++ - да.
Но и раст, так-то, читается как с листа для тех, кто на него хотя бы две недели потратил )


"Релиз набора компиляторов LLVM 16.0"
Отправлено Аноним , 20-Мрт-23 17:16 
Теорема Эскобара.
Зачем менять шило на мыло?

"Релиз набора компиляторов LLVM 16.0"
Отправлено Мда , 24-Мрт-23 00:39 
Раст хейтят как раз за то, что они очередное C++, но своё изобрели.