Подтвердить что ты не робот

Веб-сайт ISO/IEC и зарядка для стандартов C и С++

Стандарт ISO C (ISO/IEC 9899) и стандарт ISO С++ (ISO/IEC 14882) не публикуются в Интернете; вместо этого необходимо приобрести PDF файл для каждого из этих стандартов. Мне интересно, что за этим стоит... не вредно ли для языков программирования C и С++, что авторитетная спецификация для этих языков не предоставляется свободно и доступна для поиска в Интернете? Разве это не поощряет использование, возможно, неточных, не авторитетных источников информации об этих языках?

Хотя я понимаю, что много времени и усилий заняло разработка стандартов C и С++, я все еще несколько озадачен выбором для взимания платы за спецификацию. базовая спецификация OpenGroup, например, доступна бесплатно в Интернете; они зарабатывают деньги, взимая плату за сертификацию. Кто-нибудь знает, почему комитеты стандартов ISO не получают свой доход при сертификации стандартов, а не взимают плату за эти документы? Кроме того, кто-нибудь знает, намерен ли выглядеть так, если комитет по стандартам ISO ужасно выглядящий веб-сайт? Это как будто они не хотят, чтобы люди посещали и покупали спецификацию.

Последнее: стандарты C и С++ обычно описываются как "открытые стандарты"... в то время как я понимаю, что это означает, что кому-либо разрешено внедрять стандарт, следует ли пересмотреть определение "open"? Зарядка по стандарту, а не его открытость, кажется противоречащей духу открытости.

P.S. У меня есть копия ISO/IEC 9899: 1999 и ISO/IEC 14882: 2003, поэтому, пожалуйста, никаких замечаний о том, чтобы быть дешевым или что-то еще... хотя, если у вас возникает соблазн сказать такие вещи, вы можете подумать о высоком школе, студентам и аспирантам, у которых может быть не так много дополнительных денег. Кроме того, вы можете подумать о том, что веб-сайт ISO действительно отрывочный, и они даже не говорят вам о стоимости, пока вы не приступите к оформлению заказа... на самом деле не поощряют его к отправке и получают копию. это?

Изменить/Комментировать
Мне приходит в голову, что если комитеты стандартов ИСО должны будут получать свои доходы от сертификации, это будет стимулировать небольшие, но более частые изменения к стандарту, а не к очень крупным пересмотрам очень редко. Это также стимулировало бы создание стандартизируемого стандарта (я сомневаюсь, что комитет ИСО С++ внес бы "экспорт" в первую очередь, если бы они получили свои доходы от сертификации).

Я нашел решение одной из неприятностей отсутствия PDF файла в Интернете... Я загрузил свою копию стандартов в свои Документы Google, чтобы я мог получить доступ к ней с любого компьютера, не переносив ее.

4b9b3361

Ответ 1

Для чего это стоит, Херб Саттер написал статью, затрагивающую эту проблему, и в комментариях есть честная дискуссия:

Как он упоминает, "открытый" не обязательно означает "без затрат". Что касается студентов или других лиц с ограниченными финансовыми возможностями, которые могут захотеть получить бесплатные версии ваших документов, обратите внимание, что:

  • многие ссылки, которые студенты могут захотеть (или даже требуют доступа), не являются бесплатными
  • для большинства работ стандарты просто не являются обязательным требованием - имеется достаточно свободно доступная документация, которая более чем достаточна для большей части работы, которую почти любой может пожелать делать с C или С++
  • проекты документов свободно скачиваются во многих случаях; в то время как они не являются стандартными, окончательные версии проекта очень близки и могут быть достаточно хорошими для многих применений.

Если вы серьезно относитесь к программированию на C или С++, я бы предположил, что у вас должна быть копия стандартов (хотя я бы не сказал, что это требование). Я также предлагаю, чтобы не было ожиданий, что они будут свободными, так же как и для любого занятия или авизования "инструменты торговли", как правило, не являются бесплатными - являются ли эти инструменты физическими объектами, такими как молотки или информация таких как руководства или технические характеристики.

На самом деле, я бы сказал, что хороший набор ссылок предпочтительнее набора стандартов, если бы у вас был только тот или другой или вы начинаете (вам, вероятно, понадобится пара разных для С++, в то время как Harbison и Steele - все, что необходимо для C).

Не поймите меня неправильно - я не против того, чтобы они были свободно доступны (и я рад, что они в настоящее время довольно недороги), но я не думаю, что есть основания ожидать от них бесплатного.

Ответы на вопрос SO, "Где найти текущие стандартные документы C или С++?" , имеют указатели на дешевые версии и бесплатные черновики. Также обратите внимание, что текущий C99-стандарт (с включенными TC1 и TC2) доступен для бесплатной загрузки:

Там отмечается, что N1124 "является рабочим документом WG14, но отражает консолидированный стандарт на момент выпуска".

Ответ 2

Это печально, но я понимаю, почему так оно и есть.

Органы по стандартизации должны быть самофинансируемыми - идея взимания платы за стандарты заключается в том, что те, кто пользуется стандартом, платят за его производство. Поскольку эти органы по стандартизации являются межправительственными организациями (не такими компаниями, как The Open Group), у них нет устава, который должен заниматься сертификацией, поэтому они не могут финансировать его таким образом.

Ответ 3

Кто-нибудь знает, почему комитеты стандартов ISO не получают свой доход при сертификации стандартов, а не взимают плату за эти документы?

Я могу ответить: денег там нет. За исключением EDG, никогда не было стандартного компилятора С++. И даже если они взимают плату за продавцов, пытающихся (а поставщики достаточно глупы, чтобы оценить их явно несоответствующие компиляторы), помимо GCC (кто бы заплатил за это?), Очень мало поставщиков, чтобы делать деньги.

Что касается платы: по крайней мере, в какой-то момент лучше всего было купить стандартную С++ 03 как книгу.

Ответ 4

Хотя я понимаю, что много времени и усилий заняло разработка стандартов C и С++, я все еще несколько озадачен выбором для взимания платы за спецификацию. Базовая спецификация OpenGroup, например, доступна бесплатно в Интернете; они зарабатывают деньги, взимая плату за сертификацию. Кто-нибудь знает, почему комитеты стандартов ISO не получают свой доход при сертификации стандартов, а не взимают плату за эти документы?

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

Я бы предположил, что есть несколько причин, по которым они берут за документ:

  • он финансирует часть работы организации, а
  • они не считают это проблемой. ИСО в целом не имеет особого отношения к стандартам, которые будут использоваться отдельными лицами. Большинство их стандартов предназначены для крупных компаний для работы с другими крупными компаниями. Для тех, кто платит несколько долларов, ничего не значит и может даже рассматриваться как доказательство качества.
  • организация довольно старая. Они не всегда могли просто распространять PDF-документ. Скорее всего, правило взимать плату за документы возникло в те дни, когда они должны были быть напечатаны и отправлены вам.
  • вы не покупаете документ из самой ИСО, а из конкретных национальных органов, таких как ANSI. Это должно дать вам некоторое представление о том, насколько большой ИСО, и о том, насколько большой сети он должен финансировать. Фактически, стоимость стандарта широко варьируется между странами, что позволяет мне полагать, что цена устанавливается отдельными национальными органами, а не централизованно по ИСО.
  • стандарт ISO довольно тяжелый. Это орган стандартов, и если что-то стандартизировано по ИСО, вы, как правило, можете быть уверены, что он проработал, рассмотрен со всех сторон и фактически работает на практике. Немногие организации имеют этот послужной список. Посмотрите на поездку, которая представляет собой каждый стандарт W3C. Посмотрите на огромное количество ужасно недоказанных RFC, которые составляют Интернет.
  • взимание платы за сертификацию компиляторов С++ вряд ли будет очень прибыльным предприятием. Существует не так много совместимых компиляторов, и некоторые из существующих компиляторов написаны бесплатно, как проекты с открытым исходным кодом. Им может быть значительно помешало заплатить тысячи долларов за сертификационные сборы (и это должно было быть тысячи долларов, чтобы компенсировать потерянный доход от тысяч пользователей, загружающих стандарт). Вы хотите вывести новых компиляторов из бизнеса, чтобы вы могли сэкономить 20 долларов или все, что они взимают? Сможет ли g++ когда-либо выйти из-под земли, если бы у них был такой барьер для входа? Будет ли компилятор LLVM Clang? Черт, сможет ли Microsoft платить эту плату год за годом, когда они могут просто сосредоточиться на .NET?

Последнее: стандарты C и С++ обычно описываются как "открытые стандарты"... в то время как я понимаю, что это означает, что кому-либо разрешено внедрять стандарт, следует ли пересмотреть определение "open" ? Зарядка по стандарту, а не его открытость, кажется противоречащей духу открытости.

Нет, они используют правильное определение. Они не взимают плату за стандарт. Вы можете бесплатно реализовать компилятор С++ без каких-либо роялти или лицензионных расходов. Стандартная открыта. Это просто свободно. Но, конечно, открыто. Любой может получить к нему доступ. Вам не обязательно быть связанным с ISO, или работать для конкретной компании (или любой компании вообще). Вам не обязательно быть гражданином определенной страны или работать в правительстве или иметь дядю, который работал в комитете по стандартам. Он открыт для всех, кто хочет сдать несколько долларов, меньше, чем стоит учебник на С++.

Это документ, за который они взимают плату. Не стандарт. Стандарт является бесплатным и открытым. Документ не является бесплатным.

Действительно, в этом не должно быть ничего нового. Почему, по вашему мнению, движение Open Source делает такое большое различие "свободным, как в пиве" и "свободным, как в свободе"? Потому что с открытым исходным кодом не обязательно подразумевается бесплатно. Часто программное обеспечение с открытым исходным кодом является бесплатным, но это не обязательно, и это не всегда.

Вы также считаете, что имя с открытым исходным кодом должно быть изменено?

У нас уже есть слово, которое означает "бесплатно". Это "бесплатно". Стандарт, который распространяется бесплатно, можно назвать "бесплатным". "open" означает что-то другое. Почему вы хотите изменить значение "open" на то, что означает "свободный"?

Ответ 5

Не потворствовать пиратству или удерживать себя в качестве модели для подражания, достаточно легко получить копию.

Просто Googling "iso 14882 pdf" будет надежно создавать ссылку. На данный момент результаты замалчиваются копиями CCD 0x FCD. Но в последние несколько раз мне нужна была копия, я нашел бесплатный сайт, размещенный на google.com.

Что касается студентов колледжа, я помню, как выполнял задания в случайных компьютерных лабораториях, где у меня не было файлов. Хит Google, и у меня есть ссылка в течение минуты.

Я не знаю, какая плата, которая так сильно варьируется от поставщика к поставщику, даже идет. Комитет по стандартам хорошо компенсируется их работодателями. Сумма в долларах слишком случайна, чтобы быть налогом.

Я купил стандарт один раз (ну, мой работодатель купил его): IEEE 1275 Open Firmware. Это было что-то вроде $200 от глобальных инженерных документов после того, как я начал ходить по магазинам. Это была дешевая ксерокопия на обычной бумаге для копира. Я не думаю, что это было даже обернуто термоусадочной пленкой, и это, конечно же, не имело никакого покрытия. Постоянные обрезки бумаги. Я добавил трехкольцовое связующее и поклялся никогда больше не делать этого. (О, и стандарт был снят и вытеснен уступчивым хитом Intel.)

Теперь, глядя на сайт GED, они взимают 30 долларов США за юридический PDF С++ 03 и $373- $567 (!) за несвязанные копии Xeroxed различных якобы одинаковых выпусков.

Ответ 6

Я участвую в ISO с 2004 года, и это то, что я узнал до сих пор. ISO не является коммерческой организацией и поэтому не имеет платных членов. Другие органы по стандартизации, такие как OMG, финансируются за счет сборов, которые организации платят в обмен на то, чтобы быть участником (и прикладывать свои рычаги). ИСО не работает так: в него входят национальные органы, которые являются представителями своих стран. Поэтому взимание платы за стандарты - это единственный способ финансировать свою работу.

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

Наконец, стандарты ИСО не предназначены для покупки отдельными лицами. Они ориентированы на организации и оцениваются соответственно.

Надеюсь, что это поможет.

Ответ 7

"Открыть" имеет несколько значений.

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

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

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

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

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

Ответ 8

Он открыт, как и "без ограничений, кто может участвовать". Любой может присоединиться к комитету С++. Это открытый процесс.