LINUX.ORG.RU

Страуструп о будущем семантических средств разработки с комментариями

 ,


2

0

У Страуструпа имеется книжка о развитии и о будущем средств разработки для языка C++, "Дизайн и эволюция языка C++", в частности о поддержке семантического программирования. Интерес представляют комментарии к книге данные Евгением Зуевым, одним из известных советских программистов и разработчика компилятора C++.

Отредактировано anonymous_incognito

>>> Подробности

anonymous

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

>На голом С++ и STL и совсем без "окружения"? И что вы будете делать - писать свои 48 велосипедов с квадратными колёсами?

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

Sidrian
()
Ответ на: комментарий от JackyTreehorn

>Читаем до конца:

>> Это помимо общих знаний или знаний в области, в которой собираюсь работать.

Т.е. "общие знания" одним волшебным чихом заменят библиотеки и фреймворки? О_о

Или всё-же 48 велосипедов до начала решения самой задачи?

yyk ★★★★★
()

Господа, вот вы тут обругиваете C++, а крупная, успешная и уважаемая компания Google выпустила новый продукт: браузер Chrome Browser. Вы наверное очень удивитесь, но этот продукт написан не на Java и не на .NET, а на старом добром C++.

http://habrahabr.ru/blogs/cpp/39041/

anonymous
()
Ответ на: комментарий от Sidrian

> Ты задай им коронный вопрос: какие они еще языки знают помимо крестов.

Может быть озвучите свой собственный список? А то утверждения о конкурентоспособности OCaml и D вызывают смутные сомнения.

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

>Господа, вот вы тут обругиваете C++, а крупная, успешная и уважаемая компания Google выпустила новый продукт: браузер Chrome Browser. Вы наверное очень удивитесь, но этот продукт написан не на Java и не на .NET, а на старом добром C++.

Неплохо бы еще покурить С++ Coding Conventions для C++ в гугле для общего развития. К примеру они не используют С++ исключения (http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Exceptions), что подозрительно, т.к STL по моей памяти исключения кидает в некоторых местах. Т.е они не используют STL или бодяжат с ключиками?

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

>>Господа, вот вы тут обругиваете C++, а крупная, успешная и уважаемая компания Google выпустила новый продукт: браузер Chrome Browser. Вы наверное очень удивитесь, но этот продукт написан не на Java и не на .NET, а на старом добром C++.

>Неплохо бы еще покурить С++ Coding Conventions для C++ в гугле для общего развития. К примеру они не используют С++ исключения (http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Exceptions), что подозрительно, т.к STL по моей памяти исключения кидает в некоторых местах. Т.е они не используют STL или бодяжат с ключиками?

Этот Guide запрещает кидать исключения, но не запрещает их перехватывать, если использованная библиотека (STL или Boost) исключения кидает.

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

>Неплохо бы еще покурить С++ Coding Conventions для C++ в гугле для общего развития. К примеру они не используют С++ исключения (http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Exceptions), что подозрительно, т.к STL по моей памяти исключения кидает в некоторых местах. Т.е они не используют STL или бодяжат с ключиками?

Там раздел Background безапелляционно описывает недостатки языка C++, вот бы любителям C++ почитать :->

morbo
()
Ответ на: комментарий от eao197

>Может быть озвучите свой собственный список? А то утверждения о конкурентоспособности OCaml и D вызывают смутные сомнения.

Мой юный друк, может Вы озвучите, что имено вызывает у Вас сомнение в быстродействии Д и ОКамла, помимо выкриков Ваиших ровестников из детсада геймдев.ру, что кресты самые быстрые потому что на них написан Кризис?

Sidrian
()

C++ барахло по сравнению с дешевым, бесплатным средством разработки Delphi 2009 http://cc.codegear.com/Free.aspx?id=25876

Достаточно уметь писать циклы по массивам и обработчики событий Button43Click - и вы уже программиздъ

anonymous
()
Ответ на: комментарий от Sidrian

>>Может быть озвучите свой собственный список? А то утверждения о конкурентоспособности OCaml и D вызывают смутные сомнения.

>Мой юный друк,

Я так понимаю, что это и был ваш список языков.

> может Вы озвучите, что имено вызывает у Вас сомнение в быстродействии Д и ОКамла, помимо выкриков Ваиших ровестников из детсада геймдев.ру, что кресты самые быстрые потому что на них написан Кризис?

Я не сомневаюсь в скорости D и OCaml, я сомневаюсь, что они являются конкурентами C++. Так скорость свою D с OCaml могут продемонстрировать только на очень ограниченном числе платформ. Да и с библиотеками для них не все хорошо -- для C/C++ всяких разных библиотек гораздо поболее будет. Не говоря уже про средства разработки, отладчики, профайлеры, большой коммьюнити и пр.

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

>C++ барахло по сравнению с дешевым, бесплатным средством разработки Delphi 2009 http://cc.codegear.com/Free.aspx?id=25876

>Достаточно уметь писать циклы по массивам и обработчики событий Button43Click - и вы уже программиздъ


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

morbo
()
Ответ на: комментарий от anonymous

>Достаточно уметь писать циклы по массивам и обработчики событий Button43Click - и вы уже программиздъ

Типичные плюсовые понты - ходить, надувать щеки и по десять раз срывать сроки чтобы на Ъ-C++ написать тупую гуйню прототип которой два дельфиста написали за три недели.

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

>Я не сомневаюсь в скорости D и OCaml, я сомневаюсь, что они являются конкурентами C++. Так скорость свою D с OCaml могут продемонстрировать только на очень ограниченном числе платформ.

99% програм на крестах всегда имеют только одну целевую платформу - винтел.

>Да и с библиотеками для них не все хорошо -- для C/C++ всяких разных библиотек гораздо поболее будет. Не говоря уже про средства разработки, отладчики, профайлеры, большой коммьюнити и пр.

Про биндинги слышали? И вообще, вы считаете, что все библиотеки и профайлеры С++ были написано лично Страусом с выпущены вместе с первой версией крестов? Если начать активно использовать Д или ОКамл все это быстро появится. Иначе все так бы и писали на асме потому что "у ЯП высокого уровня нету профайлеров и комьюнити".

Sidrian
()
Ответ на: комментарий от morbo

>Я думаю, что из Delphi получилась бы очень неплохая замена Java, если бы столь мощные усилия маркетоидов не были приложены к продвижению Java.

Мне кажется они на совсем разные ниши ориентированы. Да и не прижилась особо Жаба в формошлепстве...

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

>>Я не сомневаюсь в скорости D и OCaml, я сомневаюсь, что они являются конкурентами C++. Так скорость свою D с OCaml могут продемонстрировать только на очень ограниченном числе платформ.

>99% програм на крестах всегда имеют только одну целевую платформу - винтел.

Пруф-линк -- в студию. Список языков, которыми владеете -- в студию.

Иначе слив защитан (как вы говорили: сразу отмазки начинаются).

>>Да и с библиотеками для них не все хорошо -- для C/C++ всяких разных библиотек гораздо поболее будет. Не говоря уже про средства разработки, отладчики, профайлеры, большой коммьюнити и пр.

>Про биндинги слышали?

Биндинги к библиотеками на C/C++? ;)

>Если начать активно использовать Д или ОКамл все это быстро появится.

Ну ждите, ждите. А мы пока очередной проект на C++ сделаем и хлеб маслом намажем.

>Иначе все так бы и писали на асме потому что "у ЯП высокого уровня нету профайлеров и комьюнити".

А С++ говно потому, что вы так сказали.

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

>Мне кажется они на совсем разные ниши ориентированы.

На какие ниши разные? Delphi была нацелена на создание языка общего назначения для всех случаев жизни на основе паскаля. А джава на создание яжыка для кофеварок и инфракрасных пультов управления телевизорами, да? На основе Оберона?

anonymous
()
Ответ на: комментарий от eao197

>Ну ждите, ждите. А мы пока очередной проект на C++ сделаем и хлеб маслом намажем.

Мы пишем на Коболе потому что у нас все написано на Коболе.

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

>>Я думаю, что из Delphi получилась бы очень неплохая замена Java, если бы столь мощные усилия маркетоидов не были приложены к продвижению Java.

>Мне кажется они на совсем разные ниши ориентированы. Да и не прижилась особо Жаба в формошлепстве...


Ну те применения Java что я знаю - это игры на мобильниках, сайты, базы данных (не путать с СУБД) и программы с GUI.

Если бы в своё время Delphi был доработан напильничком до портируемости (оно уже вроде под Linux есть) - и будет почти всё то же самое. Ну только сайты пожалуй на Delphi делать не стали бы, там нишу заняли бы Perl/PHP/Pyton. Ну и игры на флеше может быть были бы...

morbo
()
Ответ на: комментарий от Absurd

>>Ну ждите, ждите. А мы пока очередной проект на C++ сделаем и хлеб маслом намажем.

>Мы пишем на Коболе потому что у нас все написано на Коболе.

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

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

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

>Мы пишем на Коболе потому что у нас все написано на Коболе.

Нет, Кобол это новомодные штучки без либ и профайлера. Мы пишем на быстром и провереном языке Ассемблера!

Sidrian
()
Ответ на: комментарий от eao197

>Пруф-линк -- в студию.

Включите свою венду и посмотрите что там утсановлено. Потом моищите Линукс версии всяких Ваших Алкоголей, Даемонтулзов, МСОфисов, Експлореров, Миранды, Ноутпада++, Кризиха-Халфлайфа, Аутглюка, ПунтоСвичера и прочей сотни фриварно-шароварных прог и мелких утилиток-чистилок реестра. А в каких вы думали еще нишах есть кресты? В вебе их почти не юзают, в области системного программирования и эмбеда все еще большинство пишется на чистом Ц. Протрите свои красные от ночного колупания в сорсах буста глазки.

>Список языков, которыми владеете -- в студию.

Какая милая привычка у апологетов Александреску орать "сам дурак!". Вам был задан вопрос какими ЯП Вы владете, а в ответ выкрики "нет ты первый". Я Вам обещаю, что специально для Вас составлю полный список как только Вы удосужитесь место перевода стрелок дать вменяемый ответ на этот вопрос, если уж моя скромная персона так будоражит Ваше неокрепшее подростковое сознание...

>Иначе слив защитан

Сопливы Вы еще слишком, что-бы здесь кому-то сливы засчитывать.

>Биндинги к библиотеками на C/C++? ;)

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

>Ну ждите, ждите. А мы пока очередной проект на C++ сделаем и хлеб маслом намажем.

Ну да, крестовики нынче дешевые, на икру не хватит...

>А С++ говно потому, что вы так сказали.

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

Sidrian
()
Ответ на: комментарий от anonymous

> Кто хочет поспорить, ставлю ящик пива.

Я спорить не хочу, но за ящик пива готов это сделать.

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

>А в каких вы думали еще нишах есть кресты?

Телеком. Банки. Оборонка. Авиация. Медицина. Транспорт.

Можете хотя бы глянуть, где используется всего лишь одна библиотека ACE: http://www.cs.wustl.edu/~schmidt/ACE-users.html

Еще: http://www.lextrait.com/vincent/implementations.html

И еще: http://www.research.att.com/~bs/applications.html

Так же можно, ради интереса глянуть списки пользователей таких библиотек, как Qt, FOX Toolkit, wxWidgets, FLTK, Boost.

Я думаю, вы в силу своего юношеского максимализма не знаете, что подавляющее большинство софта пишется на заказ, и широкой общественности не предьявляется. А всякие перечисленные вами windows-приблуды -- это всего лишь вершина айсберга.

>в области системного программирования и эмбеда все еще большинство пишется на чистом Ц.

По поводу системного программирования: Linux и BSD пишутся на C таким огромным количеством людей, что и бюджет MS не позволил бы их всех прокормить. При таком количестве ресурсов можно и на C писать.

А что касается embedded, то если для платформы есть нормальный C++ компилятор, то люди его используют. Сам видел.

>>Список языков, которыми владеете -- в студию.

>Какая милая привычка у апологетов Александреску орать "сам дурак!". Вам был задан вопрос какими ЯП Вы владете, а в ответ выкрики "нет ты первый". Я Вам обещаю, что специально для Вас составлю полный список как только Вы удосужитесь место перевода стрелок дать вменяемый ответ на этот вопрос

Я программировал на C++, Java, Ruby. Изучал Erlang, Scala, D, Eiffel, OCaml, Nice. Знаний Ruby и Eiffel хватило на написание двух больших обзоров (http://www.rsdn.ru/article/?898 и http://eao197.narod.ru/better_language/languages/eiffel/0_overview.html).

>>А С++ говно потому, что вы так сказали.

> Вы умеете читать? Даже втреде было произнесено вагон с тележкой этих самых недостатков. Так же можете воспользоватся поиском, если желаете место вагона целый поезд. На ЛОРе это уже не знаю в какой раз обсуждается.

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

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

>Телеком. Банки. Оборонка. Авиация. Медицина. Транспорт. [линки поскипаны]

По такой логике вот Вам линк http://www.lispworks.com/success-stories/index.html который доказывает, что Лисп - самый популярный язык в мире.

>Я думаю, вы в силу своего юношеского максимализма не знаете, что подавляющее большинство софта пишется на заказ, и широкой общественности не предьявляется. А всякие перечисленные вами windows-приблуды -- это всего лишь вершина айсберга.

Знаю, но это все уже давно и безповоротно пишется на Жабе и точкаНЕТе, выходите из анабиоза. (нет, я не фанат ни того, ни другого)

>По поводу системного программирования: Linux и BSD пишутся на C таким огромным количеством людей, что и бюджет MS не позволил бы их всех прокормить. При таком количестве ресурсов можно и на C писать.

Феерический бред, в Редмонде одних 314дарасов почти столько же, как суммарное количество разработчиков Кернела. Предвижу Ваши визги, поэтому сразу предоставляю пруфлинки:

http://www.linuxdevices.com/news/NS6925891609.html

http://www.microsoft.com/about/diversity/programs/dac/gleam.mspx

>А что касается embedded, то если для платформы есть нормальный C++ компилятор, то люди его используют. Сам видел.

Не знаю, что Вы там и где видели, но я единственый, кто использует иногда кресты в моей команде, при том, что крестовый компилер на VxWorks под Арм и Повер есть. А так все пишется на чистом С.

>Я программировал на C++, Java, Ruby. Изучал Erlang, Scala, D, Eiffel, OCaml, Nice. Знаний Ruby и Eiffel хватило на написание двух больших обзоров (http://www.rsdn.ru/article/?898 и http://eao197.narod.ru/better_language/languages/eiffel/0_overview.html).

И Вам до сих пор нравятся кресты? Нет, они Вам имено _нравятся_ а не просто Вам их навязывает работодатель как меньшее из зол(для работодателя естественно)?

Я по работе программировал на С, С++. С#, Питоне, пхп(грехи молодости...), JavaScript + всякие специализированые языки как SQL, Bison, внутренние DSL разных систем, некоторый из которых спроэктировал и заимплементил сам. Чисто с академичиской точки зрения изучал Паскаль, Схему, CL. "Щупал" Хаскел и Пролог, серьезным изучением которых и займусь в следующий раз, когда решусь потратить время на что-то "быдлокодерское", не связаное напрямую с CS.

Sidrian
()
Ответ на: комментарий от eao197

>У меня еще ни разу не сложилось впечатление, что здесь про C++ кто-то говорил что-нибудь вменяемое. А недостатки C++ я и так хорошо знаю, но они не мешают мне нормально C++ использовать.

На колу мочало, начинай сначала. Задача: передать долговыполняющейся функции калбэк чтобы обновлять прогрессбар. На Си я бы передал void (*)(void* handback, int percentDone). На плюсах - наверно только монстроидальное шаблонное говнище типа boost::function.

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

> А недостатки C++ я и так хорошо знаю, но они не мешают мне нормально C++ использовать

Естественно, недостатки любого языка мешают только плохому программисту. Другое дело, что недостатки языка не позволяют программисту использовать свои возможности рационально, приходится употреблять свой интеллект на борьбу с языком, а не с непосредственной задачей, а это уже плохо. Так что, C++ не выгодно применять там, где соотношение "трах с языком"/"трах с задачей" будет более 0.05.

Правда, когда на рынке труда до фига программистов, кое-как знающих язык, то соотношение можно и поднять за счет дешевых кодеров. Только надо тогда не забывать еще и дорогих тестеров и архитекторов, ага.

anonymous
()
Ответ на: комментарий от Sidrian

> Какая милая привычка у апологетов Александреску орать "сам дурак!".

Александреску - преDатель.

> Даже в этом треде высказали вагон с тележкой этих самых недостатков.

Как из наличия недостатков (они же - фичи, поскольку любой недостаток - результат сознательно выбранного компромисса) следует, что язык - "говно"? Недостатки есть у любого языка, поскольку универсального языка быть не может. У зубочистки есть недостаток - ей нельзя забить гвозь. У молотка есть недостаток, им в зубах не поковыряешься. Зубочистка и молоток - говно?

anonymous
()
Ответ на: комментарий от Sidrian

>>На C++ используя библиотеки и шаблоны можно писать ЛЮБОЕ приложение так же эффективно, как и на узкоспециализированном языке.

>Покажи, как твои кресты сравняются по эфективности работы с текстом с регекспами и в работе с реляционными БД с SQL.

Sidrian (*) (10.09.2008 12:20:46)

Чушь пишете.

anonymous
()
Ответ на: комментарий от Sidrian

>>Телеком. Банки. Оборонка. Авиация. Медицина. Транспорт. [линки поскипаны]

>По такой логике вот Вам линк http://www.lispworks.com/success-stories/index.html который доказывает, что Лисп - самый популярный язык в мире.

То, что на Лиспе в свое время было много чего сделано и продолжается делаться -- это факт. Сравнивать популярность Лиспа и C++ я не берусь, но то, что для C++ есть много областей где он использовался, используется и будет использоваться указанные мной линки доказывают.

>Знаю, но это все уже давно и безповоротно пишется на Жабе и точкаНЕТе, выходите из анабиоза. (нет, я не фанат ни того, ни другого)

На счет безповоротно -- это преувеличение.

>>По поводу системного программирования: Linux и BSD пишутся на C таким огромным количеством людей, что и бюджет MS не позволил бы их всех прокормить. При таком количестве ресурсов можно и на C писать.

> Феерический бред, в Редмонде одних 314дарасов почти столько же, как суммарное количество разработчиков Кернела. Предвижу Ваши визги, поэтому сразу предоставляю пруфлинки:

>http://www.linuxdevices.com/news/NS6925891609.html

>http://www.microsoft.com/about/diversity/programs/dac/gleam.mspx

Ну и сравните результат -- на практически любой ноутбук встает Windows без проблем. А Linux только, если железо "правильное" или если повезет.

>>А что касается embedded, то если для платформы есть нормальный C++ компилятор, то люди его используют. Сам видел.

>Не знаю, что Вы там и где видели, но я единственый, кто использует иногда кресты в моей команде, при том, что крестовый компилер на VxWorks под Арм и Повер есть. А так все пишется на чистом С.

С вашей любовью к C++ лучше бы вам этого не делать. А то по незнанию и от отвращения к C++ такого понапишете.

>И Вам до сих пор нравятся кресты? Нет, они Вам имено _нравятся_ а не просто Вам их навязывает работодатель как меньшее из зол(для работодателя естественно)?

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

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

>>У меня еще ни разу не сложилось впечатление, что здесь про C++ кто-то говорил что-нибудь вменяемое. А недостатки C++ я и так хорошо знаю, но они не мешают мне нормально C++ использовать.

>На колу мочало, начинай сначала. Задача: передать долговыполняющейся функции калбэк чтобы обновлять прогрессбар. На Си я бы передал void (*)(void* handback, int percentDone). На плюсах - наверно только монстроидальное шаблонное говнище типа boost::function.

На C++ я бы либо передал указатель на функцию, либо завел интерфейс с нужным виртуальным методом и передавал ссылку на него, либо же передавал ссылку на объект и указатель на метод этого объекта. Ну, если бы в проекте уже использовался Boost, то можно было бы попробовать и boost::function.

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

Нет уж, ты все же покажи, как с одним C++ и STL, без всяких библиотек и внешних приложений (которые знать надо, ага), уделать, ну, например, Java + Hibernate + JDBC + MySQL. А то тут глупые и больные плюсплюсники заявляли, что кроме знаний C++ и STL им для работы ничего не нужно.

anonymous
()
Ответ на: комментарий от eao197

> я к нему привык

Ты очень плохой программист.

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

>Недостатки есть у любого языка, поскольку универсального языка быть не может. У зубочистки есть недостаток - ей нельзя забить гвозь. У молотка есть недостаток, им в зубах не поковыряешься. Зубочистка и молоток - говно?

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

Sidrian
()
Ответ на: комментарий от anonymous

>>На C++ используя библиотеки и шаблоны можно писать ЛЮБОЕ приложение так же эффективно, как и на узкоспециализированном языке.

>Чушь пишете.

Глупыш, SQL и регекспы как раз и являются специализироваными языками(DSL). То, что у тебя в голове каша, и ты пытаешься оперировать терминами сути которых не понимаешь - это твои личные половые проблемы...

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

>в области системного программирования и эмбеда все еще большинство пишется на чистом Ц

Ничего подобного, на c++ за редким исключением

>Вас не смущает, что кресты вначале тоже были всего лишь препроцессором и юзали Цшные библиотеки по причинам отсутсвия в них СТЛ и шаблонов?

А вас не смущает, что дотнет бы сначала джавой, php перлом:)

anonymous
()
Ответ на: комментарий от Sidrian

>>Покажи, как твои кресты сравняются по эфективности работы с текстом с регекспами и в работе с реляционными БД с SQL.

>Глупыш, SQL и регекспы как раз и являются специализироваными языками(DSL). То, что у тебя в голове каша, и ты пытаешься оперировать терминами сути которых не понимаешь - это твои личные половые проблемы...

Речь шла о несоответствующем действительности выводе о том что эффективность регекспов может быть выше с++

anonymous
()
Ответ на: комментарий от eao197

>На счет безповоротно -- это преувеличение.

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

>Ну и сравните результат -- на практически любой ноутбук встает Windows без проблем. А Linux только, если железо "правильное" или если повезет.

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

>С вашей любовью к C++ лучше бы вам этого не делать. А то по незнанию и от отвращения к C++ такого понапишете.

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

>Так что C++ мне не то, что бы нравится, я к нему привык и не испытываю сложностей в его использовании. Плюс большой объем имеющихся наработок, которые просто так никуда не перенесешь.

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

Sidrian
()
Ответ на: комментарий от anonymous

>Ничего подобного, на c++ за редким исключением

Интересно, у меня что галюцинации? Я в этой области вроде как работаю, а кучка крестовиков-ванаби-геймдевов пытается мне рассказать как тут на самом деле дела обстоят. На всякий случай: эмбед он разный бывает.

Sidrian
()
Ответ на: комментарий от eao197

>>>У меня еще ни разу не сложилось впечатление, что здесь про C++ кто-то говорил что-нибудь вменяемое. А недостатки C++ я и так хорошо знаю, но они не мешают мне нормально C++ использовать.

>>На колу мочало, начинай сначала. Задача: передать долговыполняющейся функции калбэк чтобы обновлять прогрессбар. На Си я бы передал void (*)(void* handback, int percentDone). На плюсах - наверно только монстроидальное шаблонное говнище типа boost::function.

>На C++ я бы либо передал указатель на функцию,

Обнослять прогресс-бар будет метод класса-окна содежащего прогресс-бар. В контексте свободной функции нету нужной ссылки.

>либо завел интерфейс с нужным виртуальным методом

Еще один файл в помойном ведре проекта под названием /util/: /util/YetAnotherStupidCallbackInterface.h. Утиль, короче.

>либо же передавал ссылку на объект и указатель на метод этого объекта.

Тут уже надо писать шаблон и переносить код в .h файле - void(U::*)() и void(V::*)() это неприводимые друг к другу типы даже если V унаследован от U.

>Ну, если бы в проекте уже использовался Boost, то можно было бы попробовать и boost::function.

В каждом cpp файле компилировать одни и те же десятки килобайт шаблонов. Зашиьбись.

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

>Речь шла о несоответствующем действительности выводе о том что эффективность регекспов может быть выше с++

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

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

>>С вашей любовью к C++ лучше бы вам этого не делать. А то по незнанию и от отвращения к C++ такого понапишете.

>Спасибо, я как-то без Вас разберусь на чем мне писать.

Да, вы уж разберитесь. А то, если разберется ваш работодатель...

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

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

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

>>>На колу мочало, начинай сначала. Задача: передать долговыполняющейся функции калбэк чтобы обновлять прогрессбар. На Си я бы передал void (*)(void* handback, int percentDone). На плюсах - наверно только монстроидальное шаблонное говнище типа boost::function.

>>На C++ я бы либо передал указатель на функцию,

>Обнослять прогресс-бар будет метод класса-окна содежащего прогресс-бар. В контексте свободной функции нету нужной ссылки.

Ой правда, что ли? А чем void (*)(void* handback, int percentDone) в C будет отличаться от того же в C++? Или укзатели на функции в C++ какие-то другие?

>>либо же передавал ссылку на объект и указатель на метод этого объекта.

>Тут уже надо писать шаблон и переносить код в .h файле - void(U::*)() и void(V::*)() это неприводимые друг к другу типы даже если V унаследован от U.

Это если нужно сделать универсальное отображение прогрессбара. А если у меня есть конкретное окно и конкретный объект, которые поставляет этому окну данные, то можно обойтись без шаблонов.

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

> Я по работе программировал на С, С++. С#, Питоне, пхп(грехи молодости...), JavaScript + всякие специализированые языки как SQL, Bison, внутренние DSL разных систем, некоторый из которых спроэктировал и заимплементил сам. Чисто с академичиской точки зрения изучал Паскаль, Схему, CL.

Молодежь... А где Фортран в списке?

Показательно, что на ЛОРе очень редко вспоминают о Фортране. Много говорит о среднем возрасте аудитории ;)

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

>>Ничего подобного, на c++ за редким исключением

>Интересно, у меня что галюцинации? Я в этой области вроде как работаю, а кучка крестовиков-ванаби-геймдевов пытается мне рассказать как тут на самом деле дела обстоят. На всякий случай: эмбед он разный бывает.

А вы значицца, за весь эмбед расписываетесь.

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

> Да вы не стесняйтесь, расскажите нам еще. ЛОР и не такие запущеные случаи повидал.

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

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

>А вы значицца, за весь эмбед расписываетесь.

Так я вроде не абстрактным эмбедом в вакууме занимаюсь. Вижу кто чем занят у меня на работе и слышу от людей чем занимаются в "конкурирующих фирмах". Да и бывал на собеседованиях, где речь шла о работниках, которые будут писать софт под девайсы где вообще ОС нету. Угадай с 3х раз какой язык там предполагалось использовать и куда бы там тебе предложили засунуть кресты?

Sidrian
()
Ответ на: комментарий от eao197

>То-то вы здесь соловьем заливаетесь, думаете, наверно, что были и похуже вас.

Продолжайте пациент, не стесняйтесь.

Sidrian
()
Ответ на: комментарий от dave

>Показательно, что на ЛОРе очень редко вспоминают о Фортране. Много говорит о среднем возрасте аудитории ;)

Дело в том, что я не только не крестовик и не жабакодер, я еще и не физик :)

Sidrian
()
Ответ на: комментарий от eao197

>>>На C++ я бы либо передал указатель на функцию,

>>Обновлять прогресс-бар будет метод класса-окна содежащего прогресс-бар. В контексте свободной функции нету нужной ссылки.

>Ой правда, что ли? А чем void (*)(void* handback, int percentDone) в C будет отличаться от того же в C++?

В ООП языке чтобы сделать такую простую фичу надо воспользоваться Си-указателем на функцию и протаскивать указатель на объект через void*. Зашибись.

>>>либо же передавал ссылку на объект и указатель на метод этого объекта.

>>Тут уже надо писать шаблон и переносить код в .h файле - void(U::*)() и void(V::*)() это неприводимые друг к другу типы даже если V унаследован от U.

>Это если нужно сделать универсальное отображение прогрессбара. А если у меня есть конкретное окно и конкретный объект, которые поставляет этому окну данные, то можно обойтись без шаблонов.

Привет, инкапсуляция и абстракция.

Absurd ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.