MrSmith
На вкус и цвет. Я был бы рад жить в пещере и охотиться на мамонтов, но человек решил эволюционировать. Вам нравится ifdef, другим людям он не нравится и они хотят его эволюционировать.
Да я не спорю, ifdef не идеален, но аргументы против него какие-то хипстерско детские. Просто эволюция должна быть оправданной, а то как мы знаем черви тоже результат эволюции, можно конечно идти по пути упращения и деградации но зачем?
Surreal
Ну, auto добавили, std::array добавили, хотя потребности в них не было.
Surreal
Добавили даже 1'000'000
MrSmith
auto очень полезен когда тип заведомо известен программисту и читающему код, и приходиться катать колбасы, тот же итератор, array тоже крайне полезен
MrSmith
Дык улучшает жи чтение кода и посути только человеко зависимая фитча, да к примеру такое есть даже в свитере. Проблемы почему внести всякие хотелки сразу в том, что коммитет думает и решает как не сломать уже сделанное и грамотно реализовать нужное, что бы в будующем не было проблем
Александр
1. Это ваше имхо, на мой взгляд как раз хорошая читаемость, которая подчеркивает опасность деяния. 2 Ну таки сложные да, а что там реализовать то не получилось? 3 Почему? 4 А зачем? И всегда можно const bool flag = true И компилятор все вырежет
Нельзя в условной компиляции методов/полей класса использовать условия, зависящие от констант времени компиляции - трейтов, constexpr, типов и прочего. Это основная проблема
MrSmith
Ну вот, scoped global constexpr if тоже теоретически чтение кода улучшит. И поддержку.
У яндекса есть сайт с хотелками для внесения с тандарт создайте кейс там да и делов то
Александр
Я не против ifdef. Он хорош для своих целей. Но добавить условную компиляцию в meta-часть нужно.
MrSmith
Аргументы в продакшене возникают, а не на кухне, когда приходится это легаси поддерживать
Рефактор тулз вам в помощь, я не понимаю че все ноут, но сбегайте на сайт яндекса с ++ хотелками, создайте тред. Набахаем чатом кармы и делов то
Surreal
У яндекса есть сайт с хотелками для внесения с тандарт создайте кейс там да и делов то
Я сначала хотел выяснить, адекватно ли такое вообще предлагать. И, как оказалось, мнения разделились.
MrSmith
Я сначала хотел выяснить, адекватно ли такое вообще предлагать. И, как оказалось, мнения разделились.
Предлагать всегда адекватно. Там еще люди ближе к теории посмотрят и закоментируют в академическом сите все лучше телеграммовых теоретиков
Александр
Вот синтаксис и обратную совместимость надо обдумывать
MrSmith
Нате за вас загуглил https://stdcpp.ru/
MrSmith
Потом киньте линк я яростно плюсану
Surreal
Вот синтаксис и обратную совместимость надо обдумывать
Концепты же еще добавлять хотят, надо будет посмотреть, можно ли их тоже в scope завернуть.
🦥Alex Fails
Нате за вас загуглил https://stdcpp.ru/
я тут эту сслку устал постить. и в канале @ProCxxNews )))))
MrSmith
я тут эту сслку устал постить. и в канале @ProCxxNews )))))
Ну дак кого он ждет? Возникла знаковая идея пусть бежит постит. От того шо он в телеге поохает его хотелка в япе не появиться, а это рили вей. Если всем понравиться, они уж допрут до реализации не ломающей совместимость, ключевое слово в крайности добавят, не помрем
🦥Alex Fails
надо идею обсудить еще. а тут это бстрее делать. к тому же я с авторами договорился, что тут тож можно обсудить, чтоб на сайт улучшенные версии идей класть
Nikita
Но выглядит неплохим сахаром
MrSmith
Скоро C++ будет знать -1 человек
Danil
Скоро C++ будет знать -1 человек
std::numeric_limits<size_t>::max?
MrSmith
std::numeric_limits<size_t>::max?
Нет, просто его уже теоретически знает только один человек и то не знает, но так как он стар и не вечен...
MrSmith
Я понять не могу только одного, почему все движеться в сторону усложнения а не упрощения и развития тулов. Сколько жду и все нет чертовых пакетов
Danil
А В СТАНДАРТЕ НЕТ
MrSmith
Но разная реализация и комитет упоролся какие добавлять
MrSmith
Я на GCC
Danil
и я на gcc,причем на 4.6 :С
Danil
я не прошу
MrSmith
Вот тока не начинай а
Danil
я и без них прекрасно себя чувствую)
Danil
если сильно повезет и мы взлетим на gcc по новее, то хотя бы 14е плюсы появятся
MrSmith
Да gcc топ компилятор. Ядро линя и почти весь открытый на нем вертят
Danil
топ, только при переезде он говорит что мы одно большое деприкейтед ;D
Danil
ну шлангом по-моему ядро все еще не соберешь
🦥Alex Fails
виндовса
MrSmith
Слева стул с модным и навороченным а справа с проверенным и проектным, на какой стул сам седяшь, на какой комрада посадишь
Roman
Поддержка архитектур
MrSmith
Evgenii
ну шлангом по-моему ядро все еще не соберешь
ну потому что ядро и гцц сильно друг под друга заточены
MrSmith
Это все слова, ты нечего не сможешь написать кроме них. Ну и Java не язык. А так, всегда защитники одной вещи могут найти 10 серьезных аргументов в пользу за или против, то же справедливо и наоборот.
Surreal
GCC только Java 1.* полностью поддерживал. В 7.1 версии выпилили и эту поддержку.
Danil
1.2 вроде, лол
MrSmith
И правильно, не нужна богомерзкая жаба
MrSmith
Ну таки да, GCC есть врожденные болячки. Но вот лечить их вряд ли будут, кодовая база слишком большая.
MrSmith
Это нормально пока инструмент выполняет положенную на него задачу.
Evgenii
Это нормально пока инструмент выполняет положенную на него задачу.
ну с++98 тоже выполнял положенную на него задачу
MrSmith
А что за болячки?
Ну главная и основная монолитный сложный код и большой порог вхождения. Я уж молчу что есть не совместимости с pure c
Evgenii
И на нем до сих пор пишут
ну то есть 11-14 стандарты не нужны?)
MrSmith
Вы так говорите, буд-то разрабатываете GCC
Нужны и важны, но у некоторых по ряду причин нет возможности насладиться всеми прелестями. С другой стороны, можно глянуть на языки которые не тянут лямку совместимости типа бидона и свитера. Ничего хорошего и плохого в этом нет, я уж молчу, что на сегодняшний день и на ansi си люди лопатят. Ну и странно, еще выходит, чеж люди выбирают для своих проектов си, который в больше степени как 40 лет застыл да и у страуса есть по этому поводу в эволюции. Наверное не потому, что не осилили питон или go.
MrSmith
Вы так говорите, буд-то разрабатываете GCC
Ну вроде код в открытом доступе, да и сами разрабы говорят о проблемах
🐙 Antony
Ну вроде код в открытом доступе, да и сами разрабы говорят о проблемах
Количество нововведений в GCC7 говорит об обратном. Код выглядит лучше, чем очень многие закрытые проекты
MrSmith
Ознакомьтесь с историей третьего питона и его популярностью.
Ну то есть вы хотите мне намекнуть на то, что даже не смотря на распад на две ветки поддерживается обе или что?
🐙 Antony
именно
MrSmith
именно
Ну тут есть но, что автор не гарантирует добавление фич и поддержка второй версии рано или поздно будет свернута
🦥Alex Fails
http://lemon.cs.elte.hu/trac/lemon - оцените либку, мне тут скинули
Roman
Здравствуйте, товарищи! А в C массивы не хранят свой размер?
Vladislav
нет
Vladislav
3 варианта: 1. хранить размер отдельно 2. sizeof(array)/sizeof(array[0]) 3. динамические массивы с NULL/0 в качестве завершения
Boris
3 варианта: 1. хранить размер отдельно 2. sizeof(array)/sizeof(array[0]) 3. динамические массивы с NULL/0 в качестве завершения
с вариантом под номером три никогда не сталкивался и в книгах не видел, такое действительно используется?
Vladislav
ага. *argv[] - как пример
Anatoly
с вариантом под номером три никогда не сталкивался и в книгах не видел, такое действительно используется?
в winapi в некоторых местах, например, из недавнего: PCTSTR acceptTypes[] = { TEXT("*/*"), nullptr }; auto hRequestHolder = InternetHandlerHolder( HttpOpenRequest(hConnect, TEXT("GET"), resource, NULL, NULL, acceptTypes, flags, 0), [](HINTERNET h) { InternetCloseHandle(h); });
Anatoly
acceptTypes - null-terminated
Boris
да си-строка просто
ну про строку я сразу подумал, смутило что автор спрашивал про массивы именно
Evgenii
подавляющее большинство софта с базой пользователей больше 5 человек поддерживает py3
Evgenii
но переход бы медленный и болезненный
Anatoly
массив из указателей на строки