kika: (Default)
[personal profile] kika
Граждане погроммисты, а есть ли какая-либо адекватная причина тому, что маленький и мягкий компилятор языка С до сих пор поддерживает только C89? Я собственно могу представить себе только одну причину - человек, который написал анализатор, уволился примерно 20 лет назад и с тех пор в этой компании никто не может асилить синтаксический разбор языка Ц.

Date: 2011-10-19 06:50 am (UTC)
From: [identity profile] dvonk.livejournal.com
Новые компиляторы пишет тот, у кого старые плохие

Date: 2011-10-19 07:08 am (UTC)
From: [identity profile] bowhill.livejournal.com
Говорят, что два хороших стандарта хуже одного плохого. Тем более что c99 весьма на любителя.

Date: 2011-10-19 07:08 am (UTC)
From: [identity profile] cp-poster.livejournal.com
The vast majority of customers that we speak to keep asking us for C++0x features and hence in VS2010 this is where the majority of efforts have gone. That said, we do occasionally get requests for C99, you can find various comments on some of our blogs/forums: for example see Arjun’s comments here, Arjun is our C Committee representative, (https://blogs.msdn.c...in-vs-2010.aspx):
“The simple reason is that we haven't seen that much demand as compared to the massive requests we receive for TR1, C++0x, etc. I don't foresee us implementing C99 in its entirety, but we will take a close look at requests for specific C99 features (especially ones that integrate well with C++.)”
And Jonathan’s comments here, Jonathan is our C++ Committee representative, (http://social.msdn.m...9a-b799c379cebb)
“We have added support for C-99 features (variadic macros, long long) and we really do listen to our customers (both big and small) and the overwhelming feedback we get is to focus on C++. Even one of our largest and most focal group of C customers - developers of device drivers - are now asking us to make C++ more friendly to the device driver space.”
VS2010 is now essentially “Feature Complete” for Visual C, so you will not be seeing any more new features (either C or C++) for this upcoming release. When we start planning for our next release we will look at all options, however it is likely that C++ features could again be our top priority.
Thanks
Damien
http://connect.microsoft.com/VisualStudio/feedback/details/512131/why-not-support-c99

Date: 2011-10-19 07:30 am (UTC)
From: [identity profile] kika.livejournal.com
ну не знаю, инициализация структур системы "бомба под кроватью" в "обычном" С меня бесила все ~25 лет, которые я его более-менее знаю. В кои-то веки 10 лет назад это поправили, и работы там - чисто синтаксический сахар.

Date: 2011-10-19 07:33 am (UTC)
From: [identity profile] kika.livejournal.com
Ну надо сказать что старые компиляторы у МС были не плохие. А просто полное говно :-) (я помню 6.00 что-ли, в котором я лично то ли 3 то ли 4 ошибки в кодогенераторе нашел). Но они давно уже хорошие и МСу это не мешает в них добавлять всякий треш типа CLR и прочего дотнета.

Date: 2011-10-19 07:36 am (UTC)
From: [identity profile] kika.livejournal.com
Ну это буллшит конечно же. Достаточно немножко почитать интернеты чтобы понять что основная масса желающих С99 в виндовом компиляторе - это либо портирующие опенсорс, либо разработчики опенсорса, которые хотят поддержать винду (что в сущности одно и то же). И я слышал про проекты, которые в результате дропнули поддержку винды.

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

Date: 2011-10-19 07:46 am (UTC)
From: [identity profile] dmzlj.livejournal.com
а зачем он вообще нужен?

Date: 2011-10-19 07:48 am (UTC)
From: [identity profile] kika.livejournal.com
Компилятор или язык Ц?

Date: 2011-10-19 08:01 am (UTC)
From: [identity profile] dmzlj.livejournal.com
Ну я достаточно радикален, но в данном случае про компилятор. Есть же Intel и clang. Даже TI CCE поддерживает C99, а тут мейнстримный компилер для PC --- может нафик его с пляжа?

Date: 2011-10-19 08:05 am (UTC)
From: [identity profile] kika.livejournal.com
MSVC хорош именно для разработки, за счет того что быстрый, хороший (по качеству кода) и хорошо интегрирован во все вокруг (вокруг винды). Конечно, если надо просто пересобрать под винду какой-нибудь коммандлайновый опенсорс, то надо взять msys, но если надо использовать опенсорсную библиотеку в развесистом проекте под винду, где всякий сопливый COM, пара драйверов и прочая ботва, то msys придется долго бить молотком. А жизнь слишком коротка чтобы.

Date: 2011-10-19 08:05 am (UTC)
From: [identity profile] ircicq.livejournal.com
Может быть причина стратегическая?:
нет поддержки C99 - меньше портируют конкурирующего OpenSource софта.

Очень похоже на то что в Win32 отсутсвовала функция fork(), хотя ее реализация в NT Native API возможна. Вроде и мелочь, а затрудняет портирование в разы.

Date: 2011-10-19 08:06 am (UTC)
From: [identity profile] kika.livejournal.com
Интель, кстати, на винде насколько я помню не поддерживает С99 тоже. Имхо, они просто по бартеру взяли у МС компилятор и починили ему кодогенератор.

Date: 2011-10-19 08:07 am (UTC)
From: [identity profile] dmzlj.livejournal.com
facepalm

Date: 2011-10-19 08:08 am (UTC)
From: [identity profile] kika.livejournal.com
fork() в WinAPI и до сих пор нету, а CreateProcess никуда не девался. Никто и не обещал что винапи будет позиксом/бздей/xopen/etc.

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

Date: 2011-10-19 08:10 am (UTC)
From: [identity profile] kika.livejournal.com
Ну я давно с ним имел дело, но тогда это было прикольно - код написанный под такой-то интель на венде не собирался им же под линуксом и наоборот. Потому что это были два, совершенно не связанных между собой, компилятора :-) Может они уже и выровняли их с тех пор.

Date: 2011-10-19 09:18 am (UTC)
From: [identity profile] cp-poster.livejournal.com
Не знаю, не знаю. Может того опенсорса кот наплакал или ребята просто не терроризируют МС с просьбами о С99 поддержке?
Понятно, что в интернете опенсорс-гайз буду негодовать по поводу, но крупный копроративный пользователь будет писать приватные письма, потому и не видно этих просьб о лучшей поддержке С++.
Да и смысл им врать?

Date: 2011-10-19 09:19 am (UTC)
From: [identity profile] ircicq.livejournal.com
fork() в WinAPI и до сих пор нету, а CreateProcess никуда не девался

В Windows есть подсистема POSIX, и fork в ней реализован(). То есть технически это решаемо. И в Win32 при желании могли это включить, потому что нужно многим.
Вопрос: почему не включили? реализовать fork() поверх CreateProcess() очень нетривиально, вон Cygwin огромную надстройку нагорожил чтобы обойти эти несовместимости.

Это прослеживается и в других вещах. MS вносит мелкие изменения в чужие общепринятые технологии, затрудняя тем самым перенос и давая своим разработчикам пару лет форы.


Меньше портируют софта - меньше используют эту ОС, имхо.
Так тенденция к тому, что OS становятся бесплатны и основной доход пойдет от приложений.
А всякие MS SQL, Exchange имеют бесплатные альтернативы, и MS желательно не пущать их под винду.

Date: 2011-10-19 10:29 am (UTC)
From: [identity profile] bowhill.livejournal.com
Ага, объявления переменных в коде и циклах, массивы переменной длинны, инлайн, прописные и т.д. Я бы положительно относился к нормальному упорядочиванию языка, а тут просто повидло смешали, imho.

Date: 2011-10-19 10:37 am (UTC)
From: [identity profile] bowhill.livejournal.com
Ну не надо крошить на 6.0, :) хороший был компилятор. По ошибкам с отрывом лидировал трубо-c, хотя это мало кого напрягало. В ваткоме тоже попадались, практически соизмеримо с MS.

Date: 2011-10-19 11:37 am (UTC)
From: [identity profile] itman.livejournal.com
Даже некоторые интерпретаторы Си поддерживают C99: http://bellard.org/tcc/

Date: 2011-10-19 05:03 pm (UTC)
From: [identity profile] kika.livejournal.com
Я не про VC6, который на самом деле (очень) долгое время был лучшим компилятором МС, а про 6.00, который PWB.

Date: 2011-10-19 09:14 pm (UTC)
From: [identity profile] altmind.livejournal.com
бляди, сэр

Date: 2011-10-21 11:19 am (UTC)
From: [identity profile] bowhill.livejournal.com
Так и я про него же. Во времена vc6 трубо-си уже вреде и не было :)

Profile

kika: (Default)
kika

January 2017

S M T W T F S
1234567
89 1011121314
151617181920 21
22232425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 16th, 2026 12:47 pm
Powered by Dreamwidth Studios