The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Набор компиляторов GCC планируют переписать на языке C++

18.06.2008 23:42

Ян Ланс Тейлор (Ian Lance Taylor) объявил в списке рассылки разработчиков GCC о создании новой ветки gcc-in-cxx, в которой будет реализована идея перевода кодовой базы GCC с языка Си на Си++.

Аргументы в пользу перехода на С++ изложены в специально подготовленной презентации. По мнению Тейлора, переход на С++ может помочь упростить код и сделать интерфейсы более надежными.

  1. Главная ссылка к новости (http://gcc.gnu.org/ml/gcc/2008...)
Лицензия: CC BY 3.0
Источник: lwn.net
Короткая ссылка: https://opennet.ru/16553-gcc
Ключевые слова: gcc, cpp
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (59) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, DimGun (?), 00:13, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Читаем Bjarne Stroustrup
    http://cs.mipt.ru/docs/comp/rus/develop/other/stroustrup_interview/index.html
     
     
  • 2.2, pavlinux (ok), 00:45, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    > К окончанию беседы выяснилось, что интервьюер извлек больше информации, чем предполагал,
    > и, естественно, редакторы решили урезать содержание 'для пользы индустрии', но, как обычно
    > получается в таких случаях, произошла утечка информации.

    К окончанию компиляции, программа содержала больше кода, чем предполагал программист,
    по этому, её урезали для пользы системы, но, как  обычно, произошла утечка памяти....

     
  • 2.7, вжюх (?), 01:17, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Очень противоречивое интервью, особенно если учесть, что взято оно 1 января, а в конце Страуструп попросил копию записи.

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

    1998 год кстати ещё не был "концом" C++, не было даже намёка на то. Наоборот, была куча работы по стандартизации и т.д. Кто знаком с языком и его развитием (хотя бы по "The Design and evolution of C++"), тот должен быть знаком с ходом мыслей Страуструпа и должен понимать несерьёзность этого интервью.

    Исключительно моё собственное мнение.

     
     
  • 3.10, kostbebix (?), 01:30, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Страуструп не гик.
     
     
  • 4.11, mutanabbi (?), 01:31, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Ага. :) И не борода!
     
  • 2.9, mutanabbi (?), 01:23, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Интервью со Страустропом, мне кажется, такая же утка как и целая плеяда боянов про то, что язык Си был неудачной шуткой  Кернигана и Ричи, которую приняли черезчур серьезно, и вообще разрабатывался, чтобы откинуть Советский Союз в развитии информационных технологий на 20 лет назад.
     
     
  • 3.27, бррр (?), 11:24, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Точнее, не утка, а откровенный стеб, который трудно не заметить :)

    Правда, написал его человек, который шарит в языках и программировании.

     
  • 2.12, sergeyvp (??), 01:48, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Утка, а жаль :)
    http://www.research.att.com/~bs/bs_faq.html#IEEE
     
     
  • 3.14, const (??), 02:02, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Дыма без огня не бывает ;)
     
  • 3.23, fresco (??), 10:05, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Интервью, конечно, утка. Но ни с одним утверждением относительно недостатков языка поспорить не получилось. Все акт и есть.
     
  • 2.21, Аноним (21), 09:21, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Это правда?
     
     
  • 3.26, ture (?), 10:55, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Это правда?

    Какая разница? Это не по законам монополии или эволюции, и значит просто идея (мыслишка). Выбор же за нами (вопрос лишь в том, кто мы).

     
  • 2.44, muxas (??), 07:49, 20/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Читаем Bjarne Stroustrup
    >http://cs.mipt.ru/docs/comp/rus/develop/other/stroustrup_interview/index.html

    Так и надо отделять "зерна от плевел". Отличный quiz для кадровиков! Дал прочитать статью, затем спросил что претендент думает по этому поводу. Идиоты будут отсеиваться на раз! Где бы английский вариант надыбать, чтобы по ходу и язык проверять? ;-)

     

  • 1.3, Аноним (-), 00:45, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сходил по ссылке, даже pdf глянул...
    плюсов перехода на плюсы не обнаружил!
    Имхо, идея умрёт.

    Интервью со Страуструпом заинтересовало больше....
    если не утка, то дядька немало удивил...

     
     
  • 2.6, sergeyvp (??), 01:10, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Интервью со Страуструпом заинтересовало больше....
    >если не утка, то дядька немало удивил...

    Главное датировано 1998г.
    Я вообще уже задолбался объяснять почему пишу проект на С, каждый кому не лень пытается мне объяснить что его нужно переписать на С++. Если правда не утка, то теперь у меня есть железный аргумент :)

    P/S Кто-нибудь лично знаком со Страусом, чтобы услышать из первых уст так сказать :)

     
     
  • 3.13, pavlinux (ok), 01:56, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    http://www.research.att.com/~bs/interviews.html
     
  • 3.15, pavlinux (ok), 02:03, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >
    >P/S Кто-нибудь лично знаком со Страусом, чтобы услышать из первых уст так
    >сказать :)

    Факс ему зашли - fax: (979) 458-0718

    http://parasol.tamu.edu/people/bs

    I can be reached by email at bs@cs.tamu.edu or bs@research.att.com,
    and by paper mail at Department of Computer Science, TAMU 3112,
    College Station, TX 77843-3112, USA.

    Так и напиши, - как вы относитесь к идеи переноса кода GCC на С++, и где он был 1 января 1998 года :)
      

     
     
  • 4.17, Sem (??), 03:06, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Он и e-mail отвечает.
     
     
  • 5.19, pavlinux (ok), 04:34, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Скоро узнаем :)
     
     
  • 6.53, anesth (ok), 15:11, 21/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Скоро узнаем :)

    павлинукс, у вас есть сетевой фотоальбом? если есть - можете дать ссылку? а если нет, не могли бы вы где-нибудь выложить своё фото и опять же дать ссылку? очень любопытно на вас поглядеть.

     
     
  • 7.54, pavlinux (ok), 15:35, 21/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>Скоро узнаем :)
    >
    >павлинукс, у вас есть сетевой фотоальбом? если есть - можете дать ссылку?
    >а если нет, не могли бы вы где-нибудь выложить своё фото
    >и опять же дать ссылку? очень любопытно на вас поглядеть.

    Ага, киллерам раздашь!

     
  • 3.22, Andrew Kolchoogin (?), 09:42, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    > Я вообще уже задолбался объяснять почему пишу проект на С, каждый кому не лень пытается
    > мне объяснить что его нужно переписать на С++. Если правда не утка, то теперь у меня есть
    > железный аргумент :)

    Утка, конечно. :)

    Но объектно-ориентированное программирование -- тупик совсем не из-за трупа страуса. Объектно-ориентированное программирование -- тупик потому, что использует парадигму, содержащую концепты, нереализуемые в текущем программно-аппаратном окружении.

    Извините, но позднее связывание, dynamic_cast'ы и прочее _не реализуются_ на кремниевых кристаллах. И в объектный код приходится встраивать интерпретатор всего этого счастья. Махинации с индексацией _vtbl'ей и косвенными вызовами функций (это у нас virtual так работает) чем-то мне напоминают шитый код Форта.

    А Форт у нас, как известно, интерпретатор. :)

     
     
  • 4.24, fresco (??), 10:07, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    полностью согласен
     
  • 4.40, Осторожный (?), 19:34, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >А Форт у нас, как известно, интерпретатор. :)

    Это кому известно ?
    http://en.wikipedia.org/wiki/Forth_%28programming_language%29
    Форт имеет разные варианты реализаций.

    А по ссылке пишут, что современные реализации могут делать оптимизированный машинный код.
    Так что не надо ля-ля.


     
  • 4.42, belkin (ok), 23:30, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Объектно-ориентированное программирование
    >-- тупик потому, что использует парадигму, содержащую концепты, нереализуемые в текущем
    >программно-аппаратном окружении.

    IBM AS/400 ?

     

  • 1.4, Аноним (21), 00:56, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Говорят что суть в templates. Уберется много кривых макросов. Но по мне templates - зло, если в них ошибка - фиг отладишь.
     
     
  • 2.5, mutanabbi (?), 01:10, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Говорят что суть в templates. Уберется много кривых макросов. Но по мне
    >templates - зло, если в них ошибка - фиг отладишь.

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

     

  • 1.8, Аноним (8), 01:17, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    проще это безобразие с самого начала было писать на C++
    а то дествительно пришли как

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

    :))

     
  • 1.16, pavlinux (ok), 02:35, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Все, я отписался Страусу,... будем ждать коннекта!
    Если что напомните, кому интересно, вдруг забуду!


     
     
  • 2.18, alexx (??), 04:10, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    почти в тему

    из недавнего интервью (апрель сего года):

    http://www.informit.com/articles/article.aspx?p=1192024

    # Speaking of the average C++ programmer, what are C++’s major advantages over its newer rivals? In other words, what makes C++ relevant today – and tomorrow?

    → As ever: Performance, flexibility, generality, and access to hardware resources. When you encounter an application with "unusual requirements" you'll appreciate C++'s strengths compared to languages more finely tuned to a specific class of problems.

    Actually, the interest in C++ seems to be increasing again. For example, the C++ track at the SD conference in Santa Clara in early March was by far the largest track and significantly larger than last year (where is again was larger than the year before).


    так что нормально он к плюсам относится

     
  • 2.29, sergeyvp (??), 12:06, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Он уже видимо задолбался отвечать на такие вопросы :)
    Я же выше по теме дал ссылку
    http://www.research.att.com/~bs/bs_faq.html#IEEE
     

  • 1.20, MarCo (?), 07:02, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В 1990 г. когда начал программировать на С++ понял, что объектно-ориентированное программирование для больших компаний и специфических проектов. Поэтому, программировал на С++ в стиле С. Считаю, что на смену объектно-ориентированного программирования должно прийти событийное.
     
     
  • 2.25, set_rus (?), 10:52, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    сам то понял че сказал...
     
  • 2.28, tesseract (?), 11:28, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Это как собфтияная? В Objective-C например как и smalltalk вызов метода класса происходит по сообщениям.

    ЗЫ:Вспоминая адский гемморой с mfc/winApi. Предпочту классы.

     
     
  • 3.30, const (??), 13:35, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >ЗЫ:Вспоминая адский гемморой с mfc/winApi. Предпочту классы.

    Видимо, имелась в виду модель, реализованная в Qt, GLib и Boost. Правда, она не отменяет ООП, а дополняет (причём до того уровня, на котором ООП было изначально).

     

  • 1.31, грязный пасквилянт (?), 14:01, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    я авторитета не имею но все-же скажу.
    такое переписывание дело сложное а выигрыш усилиям хм... несоответствует. заняться им нечем видимо))

    если уж переписывать то на чем-то принципиально лучшем.

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

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

    ...а ооп на самом деле имхо УСЛОЖНЯЕТ поддержку поскольку наследование ПРОТИВОРЕЧИТ модульности...

     
  • 1.32, Aleksey (??), 15:04, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Приятно что тут высказалось столько людей имеющих непосредственное отношение к разработке gcc :)
     
  • 1.33, Аноним (8), 15:25, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    И попрошу паскалянтов и иже сними виртовских товарищей не высказываться...
    Есть поговорка - "не зная брода не суйся в воду"
     
  • 1.34, Аноним (21), 15:29, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Блин, что на лоре, что тут - все Ъ. сходить по ссылке не судьба?

    >> The goal of this branch is to develop a version of gcc which is __compiled__ with C++.

    автору новости - идти учить и русский и английский. с языка на язык никто ничего перевод% нм8 не собирается.

     
     
  • 2.36, Аноним2 (?), 16:00, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>> The goal of this branch is to develop a version of gcc which is __compiled__ with C++.
    >
    >автору новости - идти учить и русский и английский. с языка на
    >язык никто ничего перевод% нм8 не собирается.

    А автору сего поста не судьба PDF почитать, прежде чем про одну компиляцию говорить ?

     
     
  • 3.39, Аноним (21), 16:59, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Судьба

    Ну поменяет он еще 3 макроса на STL и что?

    Переписать на С++ - это все же несколько другое...

     
     
  • 4.48, vitek (??), 11:01, 20/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    STL - входит в стандарт С++ (не С)
    и там не макросы (в основном), а шаблоны.

    осенью на переэкзаменовку.

     
  • 2.37, Аноним (-), 16:02, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >автору новости - идти учить и русский и английский. с языка на
    >язык никто ничего перевод% нм8 не собирается.

    Если они Си код Си++ компилятором собрались собирать, зачем им проект называть "Write  gcc in C++" ? :-)

     

  • 1.35, waf (ok), 15:49, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Так я что, зря книжку по C++ купил??
    Хотя в общем-то уже не важно, http://ru.wikipedia.org/wiki/Большой_адронный_коллайдер скоро всех уровняет.
     
     
  • 2.41, Аноним (-), 22:22, 19/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Да, книжками по C# забиты все полки магазинов, а вот что-нибудь типа K&R нигде нет (разве что купить старое издание за охрененные бабки, ну или на амазоне заказать английскую версию). Так со всем, попса - дёшево и быстро, что-нибудь стоящее - дорого и геморно.
     

  • 1.38, Светочка (?), 16:52, 19/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Идею переписать gcc на C++ полностью поддерживаю. Еще бы от autotools избавиться, было бы совсем хорошо (это даже важнее, чем переписывание на C++). Что касается C++, да, в нем немало недостатков, но, к сожалению, полноценной замены ему нет (мог бы быть D, если бы позволял напрямую вызывать объекты C++, т. к. много библиотек уже написано на С++).
     
     
  • 2.43, vitek (??), 01:25, 20/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >мог бы быть D, если бы позволял напрямую вызывать объекты C++, т. к. много библиотек уже написано на С++

    тогда бы это уже был С++.
    ..
    а по-поводу переписать gcc на C++ - не возражаю точно.
    нет ни каких объективных причин, что бы ограничиваться только С в данном случае.
    ..
    хоть на java. лишь бы делал то что надо (желательно не на много тормознее), без ошибок и динамично развивался.
    ...
    это не X-ы, где скорость и прожерливость критичны.

     
     
  • 3.45, ixrw (?), 08:03, 20/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Скорость компиляции ещё как критична, если gcc будет медленнее - у многих разработчиков встанет вопрос о смене компилятора. Уже были разговоры чтобы ядро чем нить другим компилить, если из-за смены языка на C++ будет потеряно процентов 30 или больше скорости, скорость и так низкая, то вопрос встанет снова, а если решение о смене компилятора будет принято, то это обязательно вызовет лавинообразный эффект. Сюда можно также добавить, что смена компиляции - это изменение все "заточек" в проекте с одного компилятора, под другой. А это может означать, что проект не сможет откомпилиться больше тем же gcc, или просто будет ещё медленее компилироваться. Вообще такой интерес к C++ подтверждает мнение о том, что gcc перестал развиваться по части языка C и должен быть заменён на что-то более подходящее, только вот боюсь вряд ли от этого станет кому-то легче:(
     
     
  • 4.46, Partizan (??), 10:19, 20/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    RTFM! С++ не медленнее чем С в подавляющем большинстве случаев. Он специально разрабатывался чтобы overhead был только в исключительных случаях. \

    В большинстве случаев замедление может быть только при обработке исключений (но врядли сильно больше чем обычная обработка ошибок) и при работе с виртуальными функциями.

    Шаблоны часто разворачиваются и встраиваются в место вызова.

     
  • 4.47, Аноним (21), 10:57, 20/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    а что? текущий gcc может похвастать скоростью?
    ..
    gcc не интерактивное приложение, тем более не реального времени.
    а разговоры останутся только разговорами.
    да и что-то мне подсказывает, что сейчас он тормозит потому, что этому вопросу не уделяли достаточного внимания
    >Вообще такой интерес к C++ подтверждает мнение о том, что gcc перестал развиваться по части языка C и должен быть заменён на что-то более подходящее, только вот боюсь вряд ли от этого станет кому-то легче:(

    полная глупость.
    тот, кто программировал на С и С++ что-нибудь сложнее хело волда и знает, что такое стандарты языка, подтвердит.

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

     
     
  • 5.49, pavlinux (ok), 19:34, 20/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >я даже думаю, что скорость может возрасти, т.к. в С++ занятся оптимизацией
    >работы gcc было бы намного легче, а специально этим заниматься в
    >С желающих нет.

    Будем делать Reverse including, оптимизируют пущай на С++, а вставлять изменения на С.

      


     
     
  • 6.50, vitek (??), 00:51, 21/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    :-DDDD

    p.s.:
    просто нет слов.
    а на java так смогёшь?

     
     
  • 7.51, pavlinux (ok), 01:00, 21/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >:-DDDD
    >
    >p.s.:
    >просто нет слов.
    >а на java так смогёшь?

    Ага, Eclipse называется!

     
     
  • 8.52, vitek (??), 01:53, 21/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    кстати, юзаю года два назад не знал как к этому затмению относиться ща ни... текст свёрнут, показать
     

  • 1.55, andr.mobi (??), 12:20, 23/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Давно пора. Непонятно, зачем аргументировать. Если кому-то вопрос кажется сомнительным - он просто осёл и на него незачем тратить время.
     
  • 1.56, 0xdeadc0de (?), 10:04, 26/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    GCC конечно штука сложная, активно юзает много фич, например сборщик мусора.
    И темплейтная техника конечно жизнь облегчит.

    Только вот не понизить скорость компиляции будет не так просто.
    Ладно, от искцепшинов отказываемся сразу. Это будет С++ без иксцепшинов и это нормально - полмира так пишет. Мы же все равно называем С++ тех обрезанных ублюдков, которые прописаны в coding style'ах :-)
    От активного использования виртуальных функций - тоже.
    Ох, инклюды, которые в С легко сегментируются в С++ надо развязывать с помощью бубнов типа PIMPL. Иначе - откинься в кресле и получай удовольствие от суточной компиляции.
    Кстати, gcc всегда был самокомпилируемым. А как теперь будет?
    Ждем gcc с привязанным к нему Qt, единственной функцией которого будет - показ прогрессбара со слайд шоу в духе M$.

    Интересно, что по этому поводу скажет Кальтенбруннер:
    http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918
    Впрочем кто его спросит - курс на превращения линукса в винду взят и цель почти достигнута.

    PS для быдлокодеров, пишущих комменты в стиле "кто не понимает - тот идиот" сообщаю - в С++ 15 лет в т.ч. на должностях PM и SA.

     
  • 1.57, Дмитрий Т (?), 16:06, 27/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Прочитал интервью:
    http://cs.mipt.ru/docs/comp/rus/develop/other/stroustrup_interview/index.html

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

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

     
     
  • 2.58, MiG (?), 19:13, 27/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Нормально он читабельный. Нет ничего лишнего - большое преимущество перед другими языками. Ну зачем этот var если в подавляющем большинстве программ переменных больше чем констант?! Вот их, константы, отдельно и отмечают специальным ключевым словом. Кстати подобные предложения надо направлять Кернигану и Ричи - авторам С, т.к. С++ - это развитие С.
    С/С++ тем хорош и понятен, что программы не перегружены бессмысленными var, then, begin, end...

    А если любителям Паскаля, Фортрана и т.п. сложно перейти на С/С++, то это их проблемы.

     
     
  • 3.59, Дмитртий Т (?), 16:29, 30/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Если вы писали более менее большие программы, то читая чужой код, помните, как глядя на:
    DeviceManager::Driver::List::Active curDriver.....
    читаешь намного больше чтоб просто понять, что это банальное объявление переменной! А с шаблонами ещё менее читабельно получается. Маленькое слово var в начале строки сразу бы обозначило её назначение. Некоторые программисты конечно только пишут :) как в анекдоте "чукча не читатель, чукча писатель...", но факт остаётся фактом - С++ плохочитаемый язык, не perl конечно, но всё же ;) и автор языка говорит, что упрощать жизнь он умышленно не хотел, чтоб дать возможность блеснуть талантом.

    Про then, begin и end, я с вами полностью согласен, это лишняя писанина, скобок вполне достаточно. В идеале на хорошем языке должно и писаться и читаться легко, а для поддержки проектов читабельность становится даже важнее. Лично я для повышения читабельности использую некоторые правила из http://geosoft.no/development/cppstyle.html но сам C++ поощряет писать в свободном стиле и потом как говорится чёрт ногу сломит.

     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру