tag:blogger.com,1999:blog-10303035.post2353580480027486959..comments2024-02-04T23:20:04.066+03:00Comments on Алёна C++: Сравнение C++/CORBA, Erlang и GdHAlenahttp://www.blogger.com/profile/09389124127364799922noreply@blogger.comBlogger20125tag:blogger.com,1999:blog-10303035.post-83550596577765655152015-04-17T03:33:35.697+03:002015-04-17T03:33:35.697+03:00До сих пор никто не написал удовлетворительного сб...До сих пор никто не написал удовлетворительного сборщика мусора... Хотя пишут уже лет 20 так..И неудивительно, ибо это интеллектуальная задача, плохо программируемых. И потому всегда будут минусы. Но большой необходимости в ней и нету...Анатолийhttps://www.blogger.com/profile/02700420498359358572noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-72330497495174797952015-04-17T03:18:56.073+03:002015-04-17T03:18:56.073+03:00Аргуменыты ниже плинтуса... типа много кода на С++...Аргуменыты ниже плинтуса... типа много кода на С++ а на Хаскеле мало...Много не значит непонятно, а мало не значит понятно. Куда важнее ясность. Но ясности как раз нету... А чем меньше кода тем хуже ясность!Анатолийhttps://www.blogger.com/profile/02700420498359358572noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-75960272723201631042015-04-17T03:18:54.724+03:002015-04-17T03:18:54.724+03:00Аргуменыты ниже плинтуса... типа много кода на С++...Аргуменыты ниже плинтуса... типа много кода на С++ а на Хаскеле мало...Много не значит непонятно, а мало не значит понятно. Куда важнее ясность. Но ясности как раз нету... А чем меньше кода тем хуже ясность!Анатолийhttps://www.blogger.com/profile/02700420498359358572noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-54921576069128309472007-06-26T18:52:00.000+04:002007-06-26T18:52:00.000+04:00Насколько я помню, этот вопрос уже тут обсуждался,...<I>Насколько я помню, этот вопрос уже тут обсуждался, и я давал ссылку на survey разных техник - там приведены были оценки быстродействия и прочих затрат</I><BR/><BR/>Продублирую все ссылки по сборке мусора оттуда, пожалуй. Пускай тут тоже будут.<BR/><BR/><BR/>http://citeseer.ist.psu.edu/wilson95dynamic.html, http://citeseer.ist.psu.edu/255424.html http://citeseer.ist.psu.edu/jones03garbage.htmlAlenahttps://www.blogger.com/profile/09389124127364799922noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-6183752102969238292007-06-22T01:38:00.000+04:002007-06-22T01:38:00.000+04:00В Эрланге сборщик мусора соответствует требованиям...В Эрланге сборщик мусора соответствует требованиям soft realtime.<BR/><BR/>А вот в Хаскелле, увы, нет. По крайней мере, в GHC (вряд ли в GdH по другому)...<BR/>Скомпилил как-то FRAG - квейкоподобный шутер на Хаскелле - каждые несколько секунд возникает кратковременная пауза на долю секунды, видимо из-за сборщика мусора... Малозаметный лаг, но есть...<BR/>Но, говорят, работа над многопоточным сборщиком мусора ведётся - возможно, скоро в GHC станет получше...Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-82933752911096148402007-06-20T00:58:00.000+04:002007-06-20T00:58:00.000+04:00Люди собственно и пытаются в таких исследованиях о...<I>Люди собственно и пытаются в таких исследованиях очертить эти области. Или эти области уже раз и навсегда где-то очерчены? Покажите где..</I><BR/><BR/>Такие исследования проводятся постоянно, только ценность от них, на мой взгляд, нулевая. Выбор языка зависит не от области, а от больше задачи. Разумеется с перспективами.<BR/><BR/>Тюнинг в коммерческий проектах действительно мало применим, по разным причинам. <BR/><BR/>И все-таки говорить о неэффективности разработки кода на C++ говрить рано. Пока еще реальной замены ему не существует. Универсальность, огромный инструментарий, полная свобода действий... это весомые аргументы. Сборка мусора? Элементарно (в смысле большое количество готовых решений), любой алгоритм. Много кода? Возможно поможет ООП (в частности большое количество готовых библиотек на все случаи жизни).<BR/><BR/>Хотя в больших проектах частенько приходится применять комбинацию C++ с каким-либо скриптовым языком программирования. Все плюсы C++ вместе с плюсами интерпретируемого языка программирования дают хороший результат. И в играх этот подход тоже применяется.Alex Nekipelovhttps://www.blogger.com/profile/11644484550750096086noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-62010995774157051362007-06-19T14:57:00.000+04:002007-06-19T14:57:00.000+04:00У каждого из языков есть своя довольно хорошо очер...<I>У каждого из языков есть своя довольно хорошо очерченная область применения</I><BR/><BR/>Люди собственно и пытаются в таких исследованиях очертить эти области. Или эти области уже раз и навсегда где-то очерчены? Покажите где..Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-70228235975320929832007-06-19T14:24:00.000+04:002007-06-19T14:24:00.000+04:00Никто ведь не объясняет токарюЧ-ч-чёрт, конечно же...<I>Никто ведь не объясняет токарю</I><BR/>Ч-ч-чёрт, конечно же столяру :)Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-4975534110881822692007-06-19T14:23:00.000+04:002007-06-19T14:23:00.000+04:00Оно конечно да. Но тогда вообще непонятно каким об...<I>Оно конечно да. Но тогда вообще непонятно каким образом мерить подобные вещи. Авторы исследования честно старались как могли обеспечить наиболее реальные условия для своего эксперимента.</I><BR/><BR/>Просто надо перестать сравнивать вес с длинной :)<BR/>У каждого из языков есть своя довольно хорошо очерченная область применения, а решать, что лучше подойдёт для решения некоей конкретной задачи -- это уже задача и работа программиста. Никто ведь не объясняет токарю, где лучше стамеской, а где циркуляркой?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-37403516346444484752007-06-19T13:27:00.000+04:002007-06-19T13:27:00.000+04:00Интересней даже не размер кода, а сколько для чего...Интересней даже не размер кода, а сколько для чего нужно писать.<BR/><BR/>Для erlang<BR/>Application 62.2%<BR/>Communication 15.1%<BR/>Process Mgmnt 9.5%<BR/>...<BR/>Для C++<BR/>Defensive 25.3%<BR/>Communication 22.1%<BR/>Application 19.2%<BR/>Memory management 11.3%<BR/>Type declarations 11.2%<BR/>...Константинhttps://www.blogger.com/profile/16921883657883339810noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-19186148453348871402007-06-19T12:01:00.000+04:002007-06-19T12:01:00.000+04:00ну честно говоря, при разговоре про сборку мусора ...ну честно говоря, при разговоре про сборку мусора и игры, мне кажется, что разработчики просто не особо разбирались с этим вопросом. многие сборщики позволяют сказать, что от сих до сих - мусор не собирать, или собирать, но только в паузы или не больше какого-то объема. А если машина многопроцессорная-многоядерная, то это вообще становится проще. <BR/>Насколько я помню, этот вопрос уже тут обсуждался, и я давал ссылку на survey разных техник - там приведены были оценки быстродействия и прочих затратAlex Otthttps://www.blogger.com/profile/13001951608173211050noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-10665714070908759992007-06-19T11:20:00.000+04:002007-06-19T11:20:00.000+04:002Fester:К сожалению, опять сделали из сферического...<B>2Fester:</B><BR/><I>К сожалению, опять сделали из сферического коня в вакууме линейку, и давай ей мерять вес, ширину и время. Что-то как-то сравнили, но как и зачем сказать толком не могут, а что дали результаты -- тем более.</I><BR/><BR/>Оно конечно да. Но тогда вообще непонятно каким образом мерить подобные вещи. Авторы исследования честно старались как могли обеспечить наиболее реальные условия для своего эксперимента.<BR/><BR/><B>2Sergey:</B><BR/><I>ссылка на Erlang не корректна</I><BR/>Поправила, спасибо<BR/><BR/><B>2Alex Ott</B><BR/><I>Стоит (хотя бы в рамках уменьшения зашоренности :-) еще посмотреть на интересный проект - Termite</I><BR/>Интересно, посмотрим, посмотрим :-)<BR/><BR/><BR/><B>2Анонимный</B><BR/><I>Дорогие скептики, наберите в гугле, к примеру, "realtime garbage collection", и будет вам счастье. Ссылаясь на результаты, которым в обед сто лет, вы демонстрируете лишь собственную отсталость.</I><BR/><BR/>Я тут больше читала/слышала претензии от разработчиков игр, нежели от разработчиков телекоммуникационных систем, так вот отношение следующее: автоматическая сборка мусора в играх не есть хорошая идея, потому как привнесет неконтролируемые тормоза в самых неожиданных местах. Я не могу сказать о каких именно алгоритмах автоматической сборки мусора идет речь. Возможно, эта позиция и устарела уже, но она очень популярная до сих пор.<BR/><BR/><I>Что касается "потюнить", то чаще бывает дешевле купить дополнительный сервер, чем маяться с оптимизацией, потом вычищать ошибки, которые при этой оптимизации внесли...</I><BR/><BR/>Иногда бывает дешевле, а иногда не дешевле... Я бы смотрела по ситуации. Мне вообще нравится ситуация с Питоном, где модули, где особенно важна производительность, пишут на С.<BR/>Ну тут опять же я не хочу каким-либо образом критиковать Эрланг, потому что не знаю как там и чего.Alenahttps://www.blogger.com/profile/09389124127364799922noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-46487902966422466062007-06-19T09:47:00.000+04:002007-06-19T09:47:00.000+04:00К слову про ерланг - стоит отметить, что он проект...К слову про ерланг - стоит отметить, что он проектировался сразу для длительной работы приложений, и поэтому там есть такая штука, как обновление компонентов "на лету" - т.е. вы отладили код на своей машине, а потом начали заливать на коммутаторы.<BR/>Стоит (хотя бы в рамках уменьшения зашоренности :-) еще посмотреть на интересный проект - <A HREF="http://theschemeway.blogspot.com/search/label/termite" REL="nofollow">Termite</A>, который приносит в язык Scheme Erlang'овские возможности - легковесные процессы, обмен сообщениями и даже, захват состояния и перенос процедур, вместе с состоянием в другой процесс или нодуAlex Otthttps://www.blogger.com/profile/13001951608173211050noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-90138823867633898012007-06-19T09:16:00.000+04:002007-06-19T09:16:00.000+04:00Дорогие скептики, наберите в гугле, к примеру, "re...Дорогие скептики, наберите в гугле, к примеру, "realtime garbage collection", и будет вам счастье. Ссылаясь на результаты, которым в обед сто лет, вы демонстрируете лишь собственную отсталость.<BR/><BR/>Кроме того, в Эрланге у каждого процесса своя куча, в результате кучи небольшие, и сборка мусора работает быстро.<BR/><BR/>Что касается "потюнить", то чаще бывает дешевле купить дополнительный сервер, чем маяться с оптимизацией, потом вычищать ошибки, которые при этой оптимизации внесли...<BR/><BR/>В некотором смысле спор напоминает "языки программирования высокого уровня (Pascal, Algol, Fortran) против ассемблера". Ассемблерщики, ухмыляясь, тоже говорили: "А если надо потюнить?" И где теперь эти ассемблерщики?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-13227690812708230882007-06-19T07:13:00.000+04:002007-06-19T07:13:00.000+04:00Автоматическая сборка мусора приводит иногда и не ...Автоматическая сборка мусора приводит иногда и не к сильно хорошим последствиям. Всем кто не в курсе советую вспомнить робота Томми который на скорости в 70км/ч въехал в стену :)norguhtarhttps://www.blogger.com/profile/01590300726098472855noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-9189547042992243272007-06-19T02:25:00.000+04:002007-06-19T02:25:00.000+04:00ссылка на Erlang не корректна. Правильная http://w...ссылка на Erlang не корректна. Правильная http://www.erlang.org/Сергейhttps://www.blogger.com/profile/10973621537470546724noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-82410953838398442602007-06-19T01:31:00.000+04:002007-06-19T01:31:00.000+04:00К сожалению, опять сделали из сферического коня в ...К сожалению, опять сделали из сферического коня в вакууме линейку, и давай ей мерять вес, ширину и время. Что-то как-то сравнили, но как и зачем сказать толком не могут, а что дали результаты -- тем более.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-13628515209083469232007-06-18T22:40:00.000+04:002007-06-18T22:40:00.000+04:00Насчет размера кода -- приведу опять мою любимую ф...Насчет размера кода -- приведу опять мою любимую фразу из хелпа к Fox GUI Toolkit<BR/>"Every line of code not written is a correct one" ;)<BR/><BR/>Что касается сборки мусора -- она при совремнных технологиях сборки совсем не приводит к жестоким неожиданным лагам. Тем более тут лаги будут скорее на уровне сетевого транспорта между узлами распределенного приложения. <BR/>А вообще вон есть realtime java -- там вообще отсутствие лагов <I>гарантировано</I> by design, звание realtime обязывает-с )lrrrhttps://www.blogger.com/profile/12742106367384624657noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-49747934154160395202007-06-18T21:57:00.000+04:002007-06-18T21:57:00.000+04:002 anton: меньше кода — шанс, что легче поддерживат...<B>2 anton</B>: меньше кода — шанс, что легче поддерживать и меньше ошибок.<BR/><BR/><B>2 Алёна</B>: про Erlang и ФП встречал в какой-то статье мнение — Ericsson’овские прошивки работают годами без перезапуска. При этом обновляясь в боевом режиме.Anonymoushttps://www.blogger.com/profile/06005266564802484423noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-71887356713028563582007-06-18T19:53:00.000+04:002007-06-18T19:53:00.000+04:00Интересный критерий - размер кода :)Интересный критерий - размер кода :)Unknownhttps://www.blogger.com/profile/07244217663690653267noreply@blogger.com