[BTW] C++ Status at the end of 2014
От: flаt  
Дата: 12.01.15 12:04
Оценка: 23 (6)
Детальнее в статье: http://www.bfilipek.com/2014/12/c-status-at-end-of-2014.html

Re: [BTW] C++ Status at the end of 2014
От: inkooboo  
Дата: 13.01.15 14:02
Оценка:
Здравствуйте, flаt, Вы писали:

F>Image: cpp14conf.png


Компиляторы — это хорошо, но, к сожалению, соответствующие стандартные библиотеки С++ от новых стандартов отстают ...
Re: [BTW] C++ Status at the end of 2014
От: _Butch_  
Дата: 13.01.15 16:57
Оценка: :)
Здравствуйте, flаt, Вы писали:

F>Детальнее в статье: http://www.bfilipek.com/2014/12/c-status-at-end-of-2014.html


F>Image: cpp14conf.png


Как получается, что GCC, который пишут безработные студенты, поддерживает стандарт лучше, чем MSVC, который пишут хорошо оплачиваемые профессионалы?
Re[2]: [BTW] C++ Status at the end of 2014
От: Шахтер Интернет  
Дата: 13.01.15 19:26
Оценка: 12 (1) -4 :))
Здравствуйте, _Butch_, Вы писали:

_B_>Здравствуйте, flаt, Вы писали:


F>>Детальнее в статье: http://www.bfilipek.com/2014/12/c-status-at-end-of-2014.html


F>>Image: cpp14conf.png


_B_>Как получается, что GCC, который пишут безработные студенты, поддерживает стандарт лучше, чем MSVC, который пишут хорошо оплачиваемые профессионалы?


Наверно, потому что GCC пишут всё-таки профессионалы, а вот VC -- таки да, безграмотные и нищие индусы за еду.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[3]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 13.01.15 19:30
Оценка:
Здравствуйте, Шахтер, Вы писали:

Ш>Наверно, потому что GCC пишут всё-таки профессионалы, а вот VC -- таки да, безграмотные и нищие индусы за еду.

не думал, что есть люди, которые думают иначе... жизнь такая непредсказуемая
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[2]: [BTW] C++ Status at the end of 2014
От: Vain Россия google.ru
Дата: 14.01.15 00:03
Оценка:
Здравствуйте, _Butch_, Вы писали:

F>>Детальнее в статье: http://www.bfilipek.com/2014/12/c-status-at-end-of-2014.html

F>>Image: cpp14conf.png
_B_>Как получается, что GCC, который пишут безработные студенты, поддерживает стандарт лучше, чем MSVC, который пишут хорошо оплачиваемые профессионалы?
у этих двух продуктов разные цели. гцц только инструментарий без хорошой иде, но зато кроссплатформенный. мсвс не кроссплатформенный (можно пристроить гцц), но зато есть хорошая иде, неплохой интеллисенс изкаропки и куча няшек в придачу.
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]
Re[3]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 14.01.15 00:38
Оценка:
Здравствуйте, Vain, Вы писали:

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

бестолковая IDE без толкового компилятора — как безрукому балалайка.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[2]: [BTW] C++ Status at the end of 2014
От: fdn721  
Дата: 14.01.15 03:12
Оценка: +3
Здравствуйте, _Butch_, Вы писали:

_B_>Как получается, что GCC, который пишут безработные студенты, поддерживает стандарт лучше, чем MSVC, который пишут хорошо оплачиваемые профессионалы?


Писать можно по разному. Вот например тот же std::async в gcc просто тупо каждый раз заводит новый поток со всеми накладными расходами, а msvc использует пул потоков.

100% поддержка стандарта любой ценой это как раз цель для студентов. А сделать нормальную годную реализацию, чтоб она не тормозила и не принесла в будущем кучу проблем требует времени и денег.
Re[3]: [BTW] C++ Status at the end of 2014
От: Шахтер Интернет  
Дата: 14.01.15 15:56
Оценка: -7 :)
Здравствуйте, Vain, Вы писали:

V>Здравствуйте, _Butch_, Вы писали:


F>>>Детальнее в статье: http://www.bfilipek.com/2014/12/c-status-at-end-of-2014.html

F>>>Image: cpp14conf.png
_B_>>Как получается, что GCC, который пишут безработные студенты, поддерживает стандарт лучше, чем MSVC, который пишут хорошо оплачиваемые профессионалы?
V>у этих двух продуктов разные цели. гцц только инструментарий без хорошой иде, но зато кроссплатформенный. мсвс не кроссплатформенный (можно пристроить гцц), но зато есть хорошая иде, неплохой интеллисенс изкаропки и куча няшек в придачу.

Eclipse прекрасно работает с gcc. Как IDE он явно лучше VC. VC имеет смысл использовать только тем, что увяз в Майкрософтовских говнотехнологиях. Всем остальным горячо рекомендую слезть с него, чем раньше -- тем лучше.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[4]: [BTW] C++ Status at the end of 2014
От: Mr.Delphist  
Дата: 14.01.15 16:30
Оценка: +2 -1
Здравствуйте, Шахтер, Вы писали:

Ш>Eclipse прекрасно работает с gcc. Как IDE он явно лучше VC. VC имеет смысл использовать только тем, что увяз в Майкрософтовских говнотехнологиях. Всем остальным горячо рекомендую слезть с него, чем раньше -- тем лучше.


В принципе, обе IDE могут вести кросс-платформенную сборку при должной величине напильника (Студию можно переучить на другой тулчейн, но эклипсовый CDT тоже местами не сахар). Так что, при сборке под Win зависимость тут будет лишь чей рантайм брать: майкрософтовский или MinGW.

Но если Eclipse для Вас как IDE явно совершенней, чем VC, то я не знаю даже, к чему апеллировать. Видимо, это всё вкусовщина, или разные цели преследуем Кто-то ведь и в vim кодит...
Re[4]: [BTW] C++ Status at the end of 2014
От: Mr.Delphist  
Дата: 14.01.15 16:38
Оценка: :)
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, Шахтер, Вы писали:


Ш>>Наверно, потому что GCC пишут всё-таки профессионалы, а вот VC -- таки да, безграмотные и нищие индусы за еду.

X>не думал, что есть люди, которые думают иначе... жизнь такая непредсказуемая

Какая разница кто GCC пишет — собирать-то всё равно Никсману
Re[2]: [BTW] C++ Status at the end of 2014
От: Mr.Delphist  
Дата: 14.01.15 16:41
Оценка:
Здравствуйте, _Butch_, Вы писали:

_B_>Как получается, что GCC, который пишут безработные студенты, поддерживает стандарт лучше, чем MSVC, который пишут хорошо оплачиваемые профессионалы?


А Вы представьте другой график: сколько фич новых стандартов реально востребованы в ежедневном девелопменте? Народ в массе ещё к вариадик-темплейтам толком не привык, а гики уже морщатся при виде "partial C++14 compliance".
Re[5]: [BTW] C++ Status at the end of 2014
От: Шахтер Интернет  
Дата: 14.01.15 22:25
Оценка: -3
Здравствуйте, Mr.Delphist, Вы писали:

MD>Здравствуйте, Шахтер, Вы писали:


Ш>>Eclipse прекрасно работает с gcc. Как IDE он явно лучше VC. VC имеет смысл использовать только тем, что увяз в Майкрософтовских говнотехнологиях. Всем остальным горячо рекомендую слезть с него, чем раньше -- тем лучше.


MD>В принципе, обе IDE могут вести кросс-платформенную сборку при должной величине напильника (Студию можно переучить на другой тулчейн, но эклипсовый CDT тоже местами не сахар). Так что, при сборке под Win зависимость тут будет лишь чей рантайм брать: майкрософтовский или MinGW.


MD>Но если Eclipse для Вас как IDE явно совершенней, чем VC, то я не знаю даже, к чему апеллировать. Видимо, это всё вкусовщина, или разные цели преследуем Кто-то ведь и в vim кодит...


Начнем с того, что Eclipse нормально разбирает современный С++, чего студия делать не умеет. Уже одного этого достаточно, что бы студию даже не рассматривать в качестве серьёзного соперника.

А насчет вкусовщины, ну извините, если мне редактор Eclipse кажется лучше сделан с точки зрения дизайна и удобства работы, то да, вкусовщина. Работаю я на нем. Каждый день.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[2]: [BTW] C++ Status at the end of 2014
От: tlp  
Дата: 14.01.15 23:40
Оценка: +4
Здравствуйте, _Butch_, Вы писали:

_B_>Здравствуйте, flаt, Вы писали:


F>>Детальнее в статье: http://www.bfilipek.com/2014/12/c-status-at-end-of-2014.html


F>>Image: cpp14conf.png


_B_>Как получается, что GCC, который пишут безработные студенты, поддерживает стандарт лучше, чем MSVC, который пишут хорошо оплачиваемые профессионалы?


Помимо процентиков поддержки стандарта есть еще
— Качество реализации (качество генерируемого кода, количество багов в компиляторе)
— Время компиляции (скорость работы компилятора)
— Память, потребляемая компилятором в процессе работы

Если сравнить gcc и MSVC по всем критериям, все будет совсем не так плохо. Сразу выяснится, что gcc дико медленный и часто генерирует код, хуже, чем MSVC.
Пользователям гораздо важнее это, а не 100% на поддержке фич С++
Отредактировано 14.01.2015 23:41 tlp . Предыдущая версия .
Re[3]: [BTW] C++ Status at the end of 2014
От: jazzer Россия Skype: enerjazzer
Дата: 15.01.15 06:20
Оценка: +2 -1
Здравствуйте, tlp, Вы писали:

tlp>Если сравнить gcc и MSVC по всем критериям, все будет совсем не так плохо. Сразу выяснится, что gcc дико медленный и часто генерирует код, хуже, чем MSVC.


После таких громких слов неплохо бы и ссылочку привести, в подтверждение
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[6]: [BTW] C++ Status at the end of 2014
От: Mr.Delphist  
Дата: 15.01.15 13:56
Оценка: +1
Здравствуйте, Шахтер, Вы писали:

Ш>Начнем с того, что Eclipse нормально разбирает современный С++, чего студия делать не умеет. Уже одного этого достаточно, что бы студию даже не рассматривать в качестве серьёзного соперника.


Сниппет дайте тогда, пожалуйста. Чтобы Студия его "не разбирала", и Эклипс (точнее, CDT) — "разбирал". Заметьте, я не говорю про "компилировать" — это решается вкручиванием нужного тулчейна в обоих IDE.
Re[4]: [BTW] C++ Status at the end of 2014
От: c-smile Канада http://terrainformatica.com
Дата: 15.01.15 17:45
Оценка: 5 (2)
Здравствуйте, jazzer, Вы писали:

J>Здравствуйте, tlp, Вы писали:


tlp>>Если сравнить gcc и MSVC по всем критериям, все будет совсем не так плохо. Сразу выяснится, что gcc дико медленный и часто генерирует код, хуже, чем MSVC.


J>После таких громких слов неплохо бы и ссылочку привести, в подтверждение


Вот компилирую sciter release: sciter64.dll / sciter-osx-64.dylib / sciter-gtk-64.so
на соизмеримых машинах (CPU/SSD) и соизмеримыми настройками.

Platform/comp Compilation time, minutes target size
Windows VS2010 3 4,6 Mb
OSX XCode/Clang 4.5 7,9 Mb
Linux/Ubuntu GCC 4.8 19 8.6 Mb
Re[5]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 17:52
Оценка: -6 :)
Здравствуйте, c-smile, Вы писали:

ты, по всей видимости, пишешь код для того чтоб его компилировать, в то время, как большинство изветных мне кодеров, пишут код чтоб юзать результирующий бинарь.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[6]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 17:56
Оценка: -10
еще, наверное, ты бинари таскаешь на флопах?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[4]: [BTW] C++ Status at the end of 2014
От: tlp  
Дата: 15.01.15 19:31
Оценка: 1 (1)
Здравствуйте, jazzer, Вы писали:

J>Здравствуйте, tlp, Вы писали:


tlp>>Если сравнить gcc и MSVC по всем критериям, все будет совсем не так плохо. Сразу выяснится, что gcc дико медленный и часто генерирует код, хуже, чем MSVC.


J>После таких громких слов неплохо бы и ссылочку привести, в подтверждение


http://forum.ixbt.com/post.cgi?id=print:26:41766
код:

Phenom II X6 1100T FX-8150 Core 2 Quad Q9650 Core i7 880 Core i7 2600 Core i7 990X Core i7 3960X
compile-gcc 0:09:03 0:08:55 0:13:51 0:09:33 0:08:24 0:06:12 0:05:44
compile-icc 0:12:33 0:10:54 0:19:16 0:11:12 0:09:55 0:07:46 0:06:59
compile-msvc 0:06:12 0:06:25 0:09:15 0:05:42 0:05:10 0:03:53 0:03:34
Re[5]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 19:34
Оценка: -7
Здравствуйте, tlp, Вы писали:

думается мне, что кроме тебя и c-smile, время компиляции больше никого не интересует, и, я почти уверен, что jazzer просил ссылочку на подтверждение плохой кодогенерации
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[6]: [BTW] C++ Status at the end of 2014
От: tlp  
Дата: 15.01.15 19:36
Оценка:
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, tlp, Вы писали:


X>думается мне, что кроме тебя и c-smile, время компиляции больше никого не интересует,

Думайте дальше.

>и, я почти уверен, что jazzer просил ссылочку на подтверждение плохой кодогенерации

Телепаты на форуме!
Re[6]: [BTW] C++ Status at the end of 2014
От: Erop Россия  
Дата: 15.01.15 19:47
Оценка: +4
Здравствуйте, niXman, Вы писали:

X>думается мне, что кроме тебя и c-smile, время компиляции больше никого не интересует,

Меня интересует...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[7]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 21:34
Оценка:
Здравствуйте, tlp, Вы писали:

tlp>Думайте дальше.

спасибо что позволили.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[5]: [BTW] C++ Status at the end of 2014
От: Vain Россия google.ru
Дата: 15.01.15 21:35
Оценка: -1
Здравствуйте, c-smile, Вы писали:

CS>Вот компилирую sciter release: sciter64.dll / sciter-osx-64.dylib / sciter-gtk-64.so

CS>на соизмеримых машинах (CPU/SSD) и соизмеримыми настройками.
честно говоря, студия "химичит" при компиляции. и уже достаточно давно (как минимум с 2008й). дело в том, что порождение процесса под виндой — дорогая операция и студия использует свой интерфейс, чтобы не порождать cl.exe на каждый *.cpp. отсюда и выигрыш. поэтому как-то неправильно будет сравнивать гцц и мсвц. сравнивай тогда уж гцц и мсвц без их "переходника".
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]
Re[7]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 21:40
Оценка:
Здравствуйте, Erop, Вы писали:

E>Меня интересует...

почему так получается? ты работаешь в отделе тестирования? или дистры какие-то собираешь? откуда надобность постоянно компилить код?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[6]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 21:41
Оценка:
Здравствуйте, Vain, Вы писали:

V>честно говоря, студия "химичит" при компиляции. и уже достаточно давно (как минимум с 2008й). дело в том, что порождение процесса под виндой — дорогая операция и студия использует свой интерфейс, чтобы не порождать cl.exe на каждый *.cpp. отсюда и выигрыш. поэтому как-то неправильно будет сравнивать гцц и мсвц. сравнивай тогда уж гцц и мсвц без их "переходника".


там неправильно гораздо больше, а точнее — все.
во-первых — разные ОСи.
во-вторых — разные компиляторы.
в-третьих — разные системные библиотеки+ГУИ.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[8]: [BTW] C++ Status at the end of 2014
От: Erop Россия  
Дата: 15.01.15 22:02
Оценка:
Здравствуйте, niXman, Вы писали:

X>почему так получается? ты работаешь в отделе тестирования? или дистры какие-то собираешь? откуда надобность постоянно компилить код?

Ну кодишь, копилишь, запускаешь, пока работает, кодишь компилишь дальше....
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[9]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 22:19
Оценка:
Здравствуйте, Erop, Вы писали:

E>Ну кодишь, копилишь, запускаешь, пока работает, кодишь компилишь дальше....

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

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

по поводу же времени компиляции — зачем же перекомпилировать весь проект? если речь идет о частой компиляции, то, могу предположить, что ты находишься в стадии фиксинга, и, таким образом, врядли фикс затрагивает бОльшую часть проекта. обычно, в компиляции нуждается несколько единиц трансляции. допустим, на компиляцию единици трансляции требуется ~10 сек(должна быть большая единица ), а у нас есть минимум четыре ядра. по своему опыту скажу, что если проект написан не в стиле "main.cpp + все в хидерах", то тут довольно высока вероятность того, что фикс не затронет больше четырех единици трансляции.

но это я сужу по себе, ибо стараюсь по возможности все выносить в '.cpp'.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[7]: [BTW] C++ Status at the end of 2014
От: Vain Россия google.ru
Дата: 15.01.15 22:21
Оценка:
Здравствуйте, niXman, Вы писали:

V>>честно говоря, студия "химичит" при компиляции. и уже достаточно давно (как минимум с 2008й). дело в том, что порождение процесса под виндой — дорогая операция и студия использует свой интерфейс, чтобы не порождать cl.exe на каждый *.cpp. отсюда и выигрыш. поэтому как-то неправильно будет сравнивать гцц и мсвц. сравнивай тогда уж гцц и мсвц без их "переходника".

X>там неправильно гораздо больше, а точнее — все.
X>во-первых — разные ОСи.
X>во-вторых — разные компиляторы.
X>в-третьих — разные системные библиотеки+ГУИ.
но если и так, непонятно почему ты считаешь меньшее время компиляции не достоинством мсвц/недостатком остальных.
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]
Отредактировано 15.01.2015 22:23 Vain . Предыдущая версия .
Re[8]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 15.01.15 22:29
Оценка:
Здравствуйте, Vain, Вы писали:

V>но если и так, непонятно почему ты считаешь меньшее время компиляции не достоинством мсвц/недостатком остальных.

я не говорил что это не достоинство. я не считаю это хоть сколь-нибудь значимым, и, тем более, я не считаю что кто-нибудь станет выбирать компилятор по наименьшему времени компиляции.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[9]: [BTW] C++ Status at the end of 2014
От: DarkEld3r  
Дата: 15.01.15 23:10
Оценка:
Здравствуйте, niXman, Вы писали:

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

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

Да, переключение на отладку и компиляцию часто "выбивает из контекста", но имхо, как раз из-за времени компиляции. Было бы это мгновенно (в идеале), не было бы проблем. Опять же, рефакторить (а при этим и интерфейс в хедерах может затрагиваться) удобнее периодически пересобирая и прогоняя тесты.
Re[10]: [BTW] C++ Status at the end of 2014
От: c-smile Канада http://terrainformatica.com
Дата: 16.01.15 01:35
Оценка: +4
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, Erop, Вы писали:


E>>Ну кодишь, копилишь, запускаешь, пока работает, кодишь компилишь дальше....

X>а отвлекаться на "компилишь — не компилится — фиксишь, запускаешь — бажет — фиксишь — компилишь" — времени не жалко? наверное приличный процент времени уходит на это?
X>я вот "компилю — не компилится — фикшу — снова компилю, запускаю — тестирую — бажет — фикщу — снова компилю" — по определенным стадиям, если проект в разработке. если проект в стадии этапного тестирования — стратегия немного другая.

"Есть разное, Горацио, на свете..."

Скажем бага в event driven code — "если пойти туда, сделать так, подождать, и пойти вот сюда, то будет всё плохо".
Приходится городить цепочки тригерров по ходу чтобы поймать момент. Хорошо если в *.cpp только, а если в *.h — туши свет.

На самом деле линуксоидам надо скинуться и поставить памятник Visual Studio. Много приличных проектов делаются в VS, а потом уже портируются в GCC.
Ибо среды разработки в Linux на "отвяжись". Про debugging я вообще промолчу.

На самом деле если кто-то всерьез захочет сделать из linux платформу то должен озаботится нормальной IDE. MS и Apple это давно поняли.
Особенно MS. Сколько кода было на Visual Basic 4-6 написано... горы. Просто потому что IDE (редактор, менеджер проектов и отладчик) удобная была.
Re[7]: [BTW] C++ Status at the end of 2014
От: jazzer Россия Skype: enerjazzer
Дата: 16.01.15 02:23
Оценка:
Здравствуйте, tlp, Вы писали:

>>и, я почти уверен, что jazzer просил ссылочку на подтверждение плохой кодогенерации

tlp>Телепаты на форуме!

Ну он отчасти прав: твое исходное заявление содержало два утверждения — про скорость (ссылку ты привел) и про кодогенерацию.

ЗЫ У меня тут интерес чисто теоретический, так как я разрабатываю исключительно на линуксе и последний раз с MSVC имел дело в прошлом веке (не считая пары поделок для почившей WinCE|PocketPC).
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[6]: [BTW] C++ Status at the end of 2014
От: DiZSl  
Дата: 16.01.15 07:46
Оценка:
Здравствуйте, niXman, Вы писали:

X>думается мне, что кроме тебя и c-smile, время компиляции больше никого не интересует, и, я почти уверен, что jazzer просил ссылочку на подтверждение плохой кодогенерации


Мне кажется все в точности наоборот. Скорость компиляции = удобство и скорость разработки. Впрочем, я встречал людей, которым пофиг на скорость было — они в это время могли чаек попить и помедитировать
Re[10]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 16.01.15 08:23
Оценка:
Здравствуйте, DarkEld3r, Вы писали:

DE>Разрабатывать-то можно используя один компилятор, а собирать результат "для продакшена" (ну и тестирования) другим. При прочих равных, разумеется.

а смысл?

DE>Да, переключение на отладку и компиляцию часто "выбивает из контекста", но имхо, как раз из-за времени компиляции.

не из-за отладки, не?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[11]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 16.01.15 08:27
Оценка: -1
Здравствуйте, c-smile, Вы писали:

CS>На самом деле линуксоидам надо скинуться и поставить памятник Visual Studio.

ты знаешь, я вообще слабо представляю для чего нужна вендус. последний раз я для нее кодил лет 8-9 назад.
а так, использую исключительно для сборок MinGW, ну и в игрушку погамать, иногда... еще, знаю, что некоторые используют MS Office. на этом все...
хз, за что памятник, и за что Visual Studio..
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[7]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 16.01.15 08:30
Оценка:
Здравствуйте, DiZSl, Вы писали:

DZS>Мне кажется все в точности наоборот. Скорость компиляции = удобство и скорость разработки.

а вы постоянно компилируете код, после реализации пары-тройки выражений?

DZS>Впрочем, я встречал людей, которым пофиг на скорость было — они в это время могли чаек попить и помедитировать

а мне приходилось работать с людьми, которые по несколько раз в день пересобирали проект находясь в стадии разработки...
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[11]: [BTW] C++ Status at the end of 2014
От: DarkEld3r  
Дата: 16.01.15 09:50
Оценка:
Здравствуйте, niXman, Вы писали:

X>а смысл?

Скорость, опять же.

X>не из-за отладки, не?

Могу говорить только о личном опыте. Если от написания кода до старта отладки проходит немного времени (и сама проблема не оказывается запутанной), то контекст особо не теряется. Опять же, часто хочется просто прогнать некоторые тесты, чтобы убедиться, что ничего не отломал.

По моему, стиль разработки, в немалой степени, диктуют условия (ну и привычки). Скажем, если у тебя есть РЕПЛ, то проверять отдельные кусочки кода вполне удобно и естественно.
Отредактировано 16.01.2015 9:54 DarkEld3r . Предыдущая версия .
Re[12]: [BTW] C++ Status at the end of 2014
От: DarkEld3r  
Дата: 16.01.15 09:55
Оценка:
Здравствуйте, niXman, Вы писали:

X>ты знаешь, я вообще слабо представляю для чего нужна вендус. последний раз я для нее кодил лет 8-9 назад.

Не замечаешь подвоха? Понятное дело, что если не попробовать толком, то сложно оценить преимущества. Сейчас использую Qt Creator под маком, если что. Тем не менее "студия" кажется удобнее.
Re[13]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 16.01.15 11:40
Оценка: -1
Здравствуйте, DarkEld3r, Вы писали:

DE>Не замечаешь подвоха?

подвоха? — нет. но замечаю объяснение того, что некоторым людям вообще не понятен смысл существования венды.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[8]: [BTW] C++ Status at the end of 2014
От: DiZSl  
Дата: 16.01.15 11:57
Оценка:
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, DiZSl, Вы писали:


DZS>>Мне кажется все в точности наоборот. Скорость компиляции = удобство и скорость разработки.

X>а вы постоянно компилируете код, после реализации пары-тройки выражений?
Когда как, но при интенсивной разработке, такой режим работы — норма

DZS>>Впрочем, я встречал людей, которым пофиг на скорость было — они в это время могли чаек попить и помедитировать

X>а мне приходилось работать с людьми, которые по несколько раз в день пересобирали проект находясь в стадии разработки...
Это лишь говорит о том, что вы судите по себе
Re[9]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 16.01.15 11:58
Оценка:
Здравствуйте, DiZSl, Вы писали:

DZS>Это лишь говорит о том, что вы судите по себе

а это не говорит?:
DZS>Когда как, но при интенсивной разработке, такой режим работы — норма
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[10]: [BTW] C++ Status at the end of 2014
От: DiZSl  
Дата: 16.01.15 12:10
Оценка:
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, DiZSl, Вы писали:


DZS>>Это лишь говорит о том, что вы судите по себе

X>а это не говорит?:
DZS>>Когда как, но при интенсивной разработке, такой режим работы — норма

Я сразу же оговорился, что допускаю, что кому-то важно кому-то нет. Вы же писали:
>>думается мне, что кроме тебя и c-smile, время компиляции больше никого не интересует

Кроме того, могу сказать, что 15 лет назад, когда я учился в универе абсолютно все работали в таком же режиме —
минута кодинга (как правило этого хватало — компиляция, параллельно обдумывание, далее кодинг — компиляция...
П.С. хотя нашему преподу это очень не нравилось, — "надо сначала спроектировать, написать, потом компилировать" — на практике такой метод в разы более медленный по разработке
Re[11]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 16.01.15 12:34
Оценка:
Здравствуйте, DiZSl, Вы писали:

DZS>Кроме того, могу сказать, что 15 лет назад, когда я учился в универе абсолютно все работали в таком же режиме —

DZS>минута кодинга (как правило этого хватало — компиляция, параллельно обдумывание, далее кодинг — компиляция...
разве это нормально?
есть хоть одна рациональная причина делать это? (ну, кроме, помаяться дурью)

DZS>... на практике такой метод в разы более медленный по разработке

ну вот, снова только слова.
есть хоть какое-то обоснование постоянно компилировать код?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[12]: [BTW] C++ Status at the end of 2014
От: enji  
Дата: 16.01.15 13:41
Оценка: +1
Здравствуйте, niXman, Вы писали:

DZS>>Кроме того, могу сказать, что 15 лет назад, когда я учился в универе абсолютно все работали в таком же режиме —

DZS>>минута кодинга (как правило этого хватало — компиляция, параллельно обдумывание, далее кодинг — компиляция...
X>разве это нормально?
X>есть хоть одна рациональная причина делать это? (ну, кроме, помаяться дурью)
ну смотри — к примеру есть проект и тесты. Если компиляция и прогон тестов занимает пару секунд — то внес изменения — прогнал, внес — прогнал. Это быстрее, чем поменять 10 мест, а потом выяснять, на каком из них стрельнул тест...

Если компиляция и прогон занимает несколько (десятков) минут — то тут уже надо смотреть
Re[10]: [BTW] C++ Status at the end of 2014
От: chaotic-good  
Дата: 16.01.15 13:55
Оценка:
E>>Ну кодишь, копилишь, запускаешь, пока работает, кодишь компилишь дальше....
X>а отвлекаться на "компилишь — не компилится — фиксишь, запускаешь — бажет — фиксишь — компилишь" — времени не жалко? наверное приличный процент времени уходит на это?
X>я вот "компилю — не компилится — фикшу — снова компилю, запускаю — тестирую — бажет — фикщу — снова компилю" — по определенным стадиям, если проект в разработке. если проект в стадии этапного тестирования — стратегия немного другая.

X>дело в том, что, как я заметил по себе(но есть и еще люди, которые работают по такому же принципу), если стадия разработки — то компиляция и тестирование на этой стадии только отвлекает, и суммарно получаются большие затраты времени, плюс "вылет и головы" контекста мыслей необходимых для реализации конкретной задачи. просто подумай, и, возможно захочешь попробовать


X>по поводу же времени компиляции — зачем же перекомпилировать весь проект? если речь идет о частой компиляции, то, могу предположить, что ты находишься в стадии фиксинга, и, таким образом, врядли фикс затрагивает бОльшую часть проекта. обычно, в компиляции нуждается несколько единиц трансляции. допустим, на компиляцию единици трансляции требуется ~10 сек(должна быть большая единица ), а у нас есть минимум четыре ядра. по своему опыту скажу, что если проект написан не в стиле "main.cpp + все в хидерах", то тут довольно высока вероятность того, что фикс не затронет больше четырех единици трансляции.


Важно не то, как часто ты отвлекаешься на компиляцию и тесты, а то, сколько времени проходит между созданием баги в коде и ее обнаружением. Если ты поправил где-то код и внес ошибку, но при этом сразу это обнаружил — контекст все еще у тебя в голове и ты можешь быстро и не напрягаясь ее поправить. Если после внесения ошибки ты успел переключиться на другую задачу и, например, отредактировать код в другом файле, а уже потом обнаружил ошибку — исправление ошибки потребует больше времени и больших ментальных усилий. Лично я наиболее продуктивно пишу код на питоне с использованием autonose. Это такая тулза, которая запускает тесты тогда, когда ты сохраняешь исходник. Я открывал редактор на одном мониторе а консоль с autonose на другом и сразу видел что что-то сломалось и мог это быстро исправить. Правда чтобы это работало нужен хороший coverage. С плюсами не остается ничего другого, кроме как часто компилировать и запускать тесты.
Re[4]: [BTW] C++ Status at the end of 2014
От: jahr  
Дата: 17.01.15 18:23
Оценка: +1
Здравствуйте, jazzer, Вы писали:

J>Здравствуйте, tlp, Вы писали:


tlp>>Если сравнить gcc и MSVC по всем критериям, все будет совсем не так плохо. Сразу выяснится, что gcc дико медленный и часто генерирует код, хуже, чем MSVC.


J>После таких громких слов неплохо бы и ссылочку привести, в подтверждение


Вот здесь — http://rsdn.ru/forum/cpp.applied/5904666.1
Автор: niXman
Дата: 25.12.14
nixman сравнивает скорость выполнения разных кусков кода, у него на гсс скорость куска jahr в 3 раза меньше, чем nixman. Я попробовал запустить этот код в vc2013 — скорость jahr получилась почти такая же, как и nixman,в полтора раза больше, а не в три, как в гсс.) Мне кажется, это что-то говорит о качестве оптимизации и написания std у микрософта — он отлично соптимизировал явно не оптимальный код.

Скорость компиляции имеет значения когда компилишь что-то большое типа qt, boost, etc. Есть разница, компилишь ты что-то сутки или 6 часов.)
Re[5]: [BTW] C++ Status at the end of 2014
От: niXman Ниоткуда https://github.com/niXman
Дата: 17.01.15 20:10
Оценка:
Здравствуйте, jahr, Вы писали:

J>Вот здесь — http://rsdn.ru/forum/cpp.applied/5904666.1
Автор: niXman
Дата: 25.12.14
nixman сравнивает скорость выполнения разных кусков кода, у него на гсс скорость куска jahr в 3 раза меньше, чем nixman. Я попробовал запустить этот код в vc2013 — скорость jahr получилась почти такая же, как и nixman,в полтора раза больше, а не в три, как в гсс.)

какая версия MSVC, какая архитектура?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[6]: [BTW] C++ Status at the end of 2014
От: jahr  
Дата: 17.01.15 21:37
Оценка:
Здравствуйте, niXman, Вы писали:

X>Здравствуйте, jahr, Вы писали:


J>>Вот здесь — http://rsdn.ru/forum/cpp.applied/5904666.1
Автор: niXman
Дата: 25.12.14
nixman сравнивает скорость выполнения разных кусков кода, у него на гсс скорость куска jahr в 3 раза меньше, чем nixman. Я попробовал запустить этот код в vc2013 — скорость jahr получилась почти такая же, как и nixman,в полтора раза больше, а не в три, как в гсс.)

X>какая версия MSVC, какая архитектура?

x64, msvc2013, командная строка /GS /GL /W3 /Gy /Zc:wchar_t /I"C:\myprojects\libs\boost_1_56_0" /Zi /Gm- /O2 /Fd"x64\Release\vc120.pdb" /fp:precise /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_LIB" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope /Gd /Oi /MD /Fa"x64\Release\" /EHsc /nologo /Fo"x64\Release\" /Fp"x64\Release\test.pch"

Мне кажется, Вы слишком эмоционално реагируете на сравнение разных компиляторов, у всех есть свои плюсы и минусы, компилятор без плюсов перестал бы существовать очень быстро, несмотря на любую поддержку любой корпорации.) Оптимизация, насколько я знаю, традиционно считалась сильной стороной микрософтовского компилятора, именно за это ему прощают ограниченную поддержку стандарта.
Re[5]: [BTW] C++ Status at the end of 2014
От: watchmaker  
Дата: 18.01.15 00:33
Оценка:
Здравствуйте, jahr, Вы писали:

J>Вот здесь — http://rsdn.ru/forum/cpp.applied/5904666.1
Автор: niXman
Дата: 25.12.14
nixman сравнивает скорость выполнения разных кусков кода, у него на гсс скорость куска jahr в 3 раза меньше, чем nixman. Я попробовал запустить этот код в vc2013 — скорость jahr получилась почти такая же, как и nixman,в полтора раза больше, а не в три, как в гсс.) Мне кажется, это что-то говорит о качестве оптимизации и написания std у микрософта — он отлично соптимизировал явно не оптимальный код.

Стоп-стоп. А вариант скомпилированный gcc ты на своём компьютере запускал? Иначе мне не понятно, почему из двух версий, что оптимизатор msvc хороший или плохой, так однозначно выбирается первая. Может выравнивание времени работы функций говорит как раз об обратном — оптимизатор msvc настолько плох, что сумел испортить даже уже оптимизированную функцию А похожесть времён просто объясняется, что процессор у nixman медленнее, а у тебя быстрее.
Ну то есть я допускаю, что на этом коде один из компилятором может выдавать результат лучше другого, но нельзя решить какой из них лучше, если запустить на одной машине gcc, а на другой непохожей машине msvc, и потом сравнивать времена работы.

А также не могу не заметить, что приведённый тест неоднозначен (а соответственно плох в разрешении споров) ещё и по следующей причине: в нём замеряется время обработки строки из трёх (!) символов в цикле из десяти миллионов итераций. Что это означает? А то, что (если STL не использует SSO) огромное число времени код занимается не столько обработкой строк, сколько прыжками в crt и обратно для выделения и разрушения буфера под эту крошечную строку. То есть в этом тесте не только приведённый код меряется, но ещё и скорость работы crt на машине. А crt, например, вообще может быть всё равно каким компилятором собрана программа — сам crt собран давно и на него не влияют ни настройки оптимизации, ни выбор компилятора. Это такой же случайный фактор как и частота работы процессора.

В общем, если хотите сравнивать скорость работы программ, то сравнивайте правильно: на одной машине, в одном окружении, с одной версией crt, либо тестируйте код, который от crt зависит минимально (а не вызывает malloc на обработку каждых трёх символов). А сейчас — это не сравнение компиляторов.
Re[6]: [BTW] C++ Status at the end of 2014
От: jahr  
Дата: 18.01.15 09:27
Оценка:
Здравствуйте, watchmaker,

У Вас нет ощущения, что Вы до столба докапываетесь?) Если посмотреть на код, то кажется довольно вероятным, что компилятор именно мой код соптимизировал, а не ухудшил код nixman'а, рантайм — это часть компилятора, и я не хотел сравнивать компиляторы, я просто поделился недавно случившимся со мной случаем, желающие могут провести полноценное исследование и поделиться результатами с нами.)
Re[5]: [BTW] C++ Status at the end of 2014
От: jazzer Россия Skype: enerjazzer
Дата: 19.01.15 04:34
Оценка:
Здравствуйте, jahr, Вы писали:

J>Вот здесь — http://rsdn.ru/forum/cpp.applied/5904666.1
Автор: niXman
Дата: 25.12.14
nixman сравнивает скорость выполнения разных кусков кода, у него на гсс скорость куска jahr в 3 раза меньше, чем nixman. Я попробовал запустить этот код в vc2013 — скорость jahr получилась почти такая же, как и nixman,в полтора раза больше, а не в три, как в гсс.) Мне кажется, это что-то говорит о качестве оптимизации и написания std у микрософта — он отлично соптимизировал явно не оптимальный код.


или nixman стал вдвое медленнее в vc2013
(они прознали, что он собирает gcc, и добавили его в черный список )

Имхо, в этом тесте гораздо большее значение имеет качество std, чем оптимизатора.
Я вот никак не могу добиться от gcc std той же скорости, которую я имел с stlport.

J>Скорость компиляции имеет значения когда компилишь что-то большое типа qt, boost, etc. Есть разница, компилишь ты что-то сутки или 6 часов.)

Это ты не мне писал, наверное
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[3]: [BTW] C++ Status at the end of 2014
От: OlegMax  
Дата: 22.01.15 04:20
Оценка:
Здравствуйте, fdn721, Вы писали:

F>Писать можно по разному. Вот например тот же std::async в gcc просто тупо каждый раз заводит новый поток со всеми накладными расходами, а msvc использует пул потоков.

F>100% поддержка стандарта любой ценой это как раз цель для студентов. А сделать нормальную годную реализацию, чтоб она не тормозила и не принесла в будущем кучу проблем требует времени и денег.

Интересно, в VS 2015 исправили эпичный std::call_once, который использовал единственный глобальный мьютекс на все приложение? В 2013 еще так.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.