LINUX.ORG.RU

cl-капец? :)

 ,


0

3

http://blogs.msdn.com/b/vcblog/archive/2015/12/04/introducing-clang-with-micr...

To make it easier to develop cross-platform code that works well for both Windows and other platforms, we’ve released an additional compiler toolset for Visual Studio called Clang with Microsoft CodeGen. This compiler uses the open-source Clang parser for C and C++, along with the code generator and optimizer from the Visual C++ compiler. This lets you compile your cross-platform code for Windows using the same Clang parser that you use for other targets, while still taking advantage of the advanced optimizations from the Visual C++ optimizer when you build for Windows. Because the new toolset uses the same Clang parser used for non-Windows targets, you won't need to have annoying #ifdefs throughout the code just to account for differences between the compilers. Also, your code can take advantage of language features that are not currently available in the Visual C++ compiler, including C99 complex types and C++14 extended constexpr support. And because the Clang-based compiler generates the same debug information format as the Visual C++ compiler, you'll still be able to debug your code with the same great Visual Studio debugger experience.

Для неосиливших английский: МС добавили в visual studio 2015 update 1 возможность использовать шланг в качестве парсера, а в качестве бэкэнда микрософтовский коде-генератор, тем самым облегчив возможность писать кросс-платформенные приложения.

На мой взгляд это выглядит как признание того факта, что они не могут в полной мере реализовать c++11/c++14 (мы же знаем, как у них поддержка сильно хромала). Ну и решили не тратить ресурсы, когда шланг и так есть.

★★★★★

А кто-то использует шланг в продакшне? Я, например, нигде не видел, везде gcc.

DELIRIUM ★★★★★ ()

Молодцы. clang от этого станет еще лучше и может быть скоро обгонит gcc.

gh0stwizard ★★★★★ ()
Ответ на: комментарий от invy

А, ну я с маком не работал никогда, я в основном по server-side и embedded.

DELIRIUM ★★★★★ ()
Ответ на: комментарий от theNamelessOne

Я так и знал, что кто-то про него вспомнит. :) Процитирую кого-то с ЛОРа: «C++ - это такой лисп с 5-ю разновидностями скобочек.»

invy ★★★★★ ()
Последнее исправление: invy (всего исправлений: 1)
Ответ на: комментарий от gh0stwizard

Хорошая для MS лицензия у clang, позволяет не конкурировать со свободным софтом. Не то, что у gcc - так просто не встроишь в MSVS...

anonymous_incognito ★★★★★ ()
Ответ на: комментарий от anonymous_incognito

Дело не в лицензии а в упоротости Штольмана. Они же специально в gcc не дают доступ к AST. Сами gcc закапывают.

invy ★★★★★ ()

Ну и хорошо. MS наконец-то стали поддерживать в своих продуктах какую-то часть инфраструктуры OpenSource, а вы сразу «они не могут».

Sadler ★★★ ()
Последнее исправление: Sadler (всего исправлений: 1)
Ответ на: комментарий от invy

Они же специально в gcc не дают доступ к AST. Сами gcc закапывают.

GCC уже 30 лет, так что Столлман всё правильно делал. Насколько правильно ведет себя GCC SC (не Столлман!) в условиях сегодняшнего дня - время покажет. LLVM не первый BSD-licensed компилятор на свете - GCC пережил их всех.

tailgunner ★★★★★ ()
Ответ на: комментарий от Sadler

MS наконец-то стали поддерживать в своих продуктах какую-то часть инфраструктуры OpenSource,

до этого мс поддерживал нокию и sco. напомнить что с ними стало?

upcFrost ★★★★★ ()
Ответ на: комментарий от Midael

Ага, вот только C++11 ещё не реализовали до конца.

Begemoth ★★★★★ ()
Ответ на: комментарий от Sadler

а вы сразу «они не могут».

Ну потому что до сих пор c++11 их компилятор не умеет полностью.

invy ★★★★★ ()
Ответ на: комментарий от DELIRIUM

А кто-то использует шланг в продакшне? Я, например, нигде не видел, везде gcc.

OSX, iOS, tvOS.

andreyu ★★★★★ ()
Ответ на: комментарий от andreyu

OSX, iOS, tvOS

Нашёл, что такое tvOS. Всё понятно, заднеприводной продакшн. Оке, пусть используют.

DELIRIUM ★★★★★ ()
Ответ на: комментарий от XVilka

Интересно, может они его и используют, чтобы прибить шланг к студии? :)

invy ★★★★★ ()
Ответ на: комментарий от DELIRIUM

Нашёл, что такое tvOS. Всё понятно, заднеприводной продакшн.

Хз, что это значит.

Оке, пусть используют.

Хорошо, что вы им это позволили.

andreyu ★★★★★ ()
Ответ на: комментарий от invy

в gcc не дают доступ к AST

Чо бы вдруг? API плагинов к GCC вполне открыт, пиши-конпеляй, AST изменяй.

one_more_hokum ★★★ ()

cl-капец? :)

И? «Мобайл девелопмент» на скрине не разглядел? Оно появилось вместе с разработкой под андроед и яблофон. Шланг ты можешь использовать, конечно... Под андроед :) Притащив еще java, SDK и NDK (и заигнорив уже имеющиеся в системе :)) Когда для этого использовалcя cl? Никогда. Итого: cl как использовался для того, для чего использовался, так и будет.

slackwarrior ★★★★★ ()
Ответ на: комментарий от invy

Ты на скрин посмотри из оппоста http://blogs.msdn.com/resized-image.ashx/__size/300x0/__key/communityserver-b... и скажи еще чего-нибудь :)

Алсо тебе даже иконки проектов намекают, для чего там «кросс-платформ». http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-b...

slackwarrior ★★★★★ ()
Последнее исправление: slackwarrior (всего исправлений: 2)
Ответ на: комментарий от slackwarrior

Кого волнуют эти скрины? Ты понимаешь в чем суть? Современный компилятор - модульный, ему совершенно без разницы, что у него в фронтэнде и что в бэкэнде. Win32 hello-world скомпилировался отлично.

invy ★★★★★ ()
Ответ на: комментарий от invy

И MFC-приложение собралось после включения ms-compatibility.

invy ★★★★★ ()
Последнее исправление: invy (всего исправлений: 1)
Ответ на: комментарий от invy

Кого волнуют эти скрины?

Того, что ты говоришь 4.2 (и даже в заголовке темы), а потом лепишь левые отмазки про суть :)

slackwarrior ★★★★★ ()
Ответ на: комментарий от invy

Win32 hello-world скомпилировался отлично.

Кого волнует твой хелуворлд? Это и раньше происходило отлично, и без MSVS 2015 :)

slackwarrior ★★★★★ ()
Ответ на: комментарий от invy

И MFC-приложение собралось

Кроссплатформа и MFC... Крестик или трусы :)

slackwarrior ★★★★★ ()
Ответ на: комментарий от slackwarrior

Суть в том, что по сути cl не нужен, т.к. mfc приложение со всеми прибамбасами собирается clang'ом. Это ты себе где-то выдумал «кроссплатформу», «мобильные приложения» и ndk.

Кого волнует твой хелуворлд? Это и раньше происходило отлично

Ага, с кривым mingw, да? А вот чтоб год назад и mfc приложение собрать - я такого не помню.

invy ★★★★★ ()
Ответ на: комментарий от invy

Суть в том, что по сути cl не нужен, т.к. mfc приложение со всеми прибамбасами собирается clang'ом

Нененене девид блейн. Это твой MFC не нужен. Тем более собранный шлангом :)

Это ты себе где-то выдумал «кроссплатформу», «мобильные приложения» и ndk.

Не. Опять 4.2 и «мантейнеры вижуалстудии» почему-то поместили эти тулы в «мобильную разработку». А никакой кроссплатформы, если не чекнуть эти галки на заигноренном тобой скрине, искаропки не будет :)

Ага, с кривым mingw, да? А вот чтоб год назад и mfc приложение собрать - я такого не помню.

Собирать «прямым шлангом» (ТМ) кривой по определению MFC? :) Мсье знает толк в поедании кактусов.

я такого не помню

Кому нужен твой MFC не только на этом форуме, а вообще, кроме идейных «пожырателей субстанций» :) А так-то поди и жил ты мало, раз не помнишь.

slackwarrior ★★★★★ ()
Последнее исправление: slackwarrior (всего исправлений: 3)
Ответ на: комментарий от slackwarrior

MFC - как бенчмарк компилятора и технлогии. Собралось, запустилось. Что еще надо?

Специально для тебя: http://www.theregister.co.uk/2015/12/01/massive_microsoft_dev_tools_update_in...

Visual C++ in this update supports building Windows static or dynamic libraries using the Clang open source compiler, as reported here. Clang was previously included only for Android development.

А на самом деле не толлько libraries, как показал эксперимент.

Так что вылазь из криокамеры.

invy ★★★★★ ()
Последнее исправление: invy (всего исправлений: 2)
Ответ на: комментарий от invy

MFC - как бенчмарк компилятора и технлогии.

Т.е. для хеллуворлдов? Вопиющее ненужно :)

Так что вылазь из криокамеры.

Не. Это ты енжой свой кактус :) Особенно cl-капец пока несколько откладывается, именно потому что «Clang was previously(?) included only for Android development.» Даже находится в «мобильной разработке» до сих пор. Дело в том, что шланга в 2013 аж до Upd 4 не было — кокое уж тут previously? (для ондроеда было только нинужное поделие Мигельки и Cordova), и появился шланг только в MSVS2015 Upd1, но ты верь-верь маркетингу :) Или подожди MSVS 2015 Upd4, когда им реально станет можно пользоваться, а не собирать хеллуворлды.

slackwarrior ★★★★★ ()
Ответ на: комментарий от slackwarrior

«Clang was previously(?) included only for Android development.»

Подытожим:
- Ты совершенно проигнорировал два слова «was» и «previously» указывающие на то, что это было в прошедшем времени.
- Ты игнорируешь тот факт, что типичные c++ приложения для венды (не для андроида) собираются шлангом (win32, mfc, console).
- Ты игнорируешь мои пояснения про устройство современных компиляторов (а на самом деле это в дремучей классике про компиляторы еще написано): source code => (cl | clang) parser => AST => ms code generator => win32 binary? Где любая часть тулчейна (а данном случае парсер) может быть заменена.
- Все твои контр. аргументы базируются на скринах (непонятно какой -давности) установщика, передергиваниях вида «Кому нужен твой MFC», «подожди MSVS 2015 Upd4», когда им реально станет можно пользоваться", попытках перехода на личности.

По-моему тут всё ясно :D

invy ★★★★★ ()
Последнее исправление: invy (всего исправлений: 4)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.