Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Valentin Nechayev                    2:5020/400     31 Jan 2003  17:14:48
 To : Aleksey Cheusov
 Subject : Re: 386SX and RedHat_8.0
 -------------------------------------------------------------------------------- 
 
 >>> Aleksey Cheusov wrote:
 
 >> Можно. Принимал я тут давеча некоторый проект этак на 25К строк C++.
 >> Я там долго плакал глядя, как автор аккуратно прячет в try/catch все
 >> куски кода где используется какой-то динамически аллоцируемый локальный
 >> storage. Это же повеситься можно - без garbage collector-а писать.
 AC> Тут недавно пробегали сообщения об "еффективности" garbage collector-ов.
 AC> Что-то меня на это не особо тянет. Кроме того, не очень то я понимаю,
 AC> от чего он всем так нравится. Видимо не было подходящих задач.
 
 Hачиная с некоторого уровня сложности структур данных (разные сетевые и прочие
 многосвязные построения) garbage collector становится практически неизбежным.
 Hу и просто удобно перестать заботиться о целостности указателей, о слежении
 за использованием, и так далее.
 Да, за всё приходится платить.
 
 AC> Вообще-то try/catch вставить не так уж и сложно.
 
 Дело не в try/catch. Дело в том, что или надо строить объекты, которые
 специфичны для каждой функции и выполняют для неё восстановление статус-кво
 (освободить память, etc.), или пользоваться готовыми классами (если они есть),
 или дублировать код в общем завершении и в каждом catch, в котором есть новый
 throw. Зверски неудобно. Страуструп как-то писал, почему он не захотел 
 делать try/finally, но объяснения выглядят неубедительно.
 
 AC> Кроме того, в C++ удобнее "локальные stotage" писать не с помощью
 AC> new/delete, а с помощью классов, а этом случае сработает деструктор
 AC> и ничего специально catch-ить не надо.
 
 А каждый раз писать новый класс для этого разве удобно?
 
 >> Hу забыл, забыл Страуструп оператор <=> в язык включить. Ларри Уолл был
 >> хитрее.
 AC> Ларри Уолл - не первый.
 AC> Такое AFAIR даже а Фортране было.
 
 Hет. Если ты про арифметический IF, то это несколько не то, и вообще
 он был ранней затычкой вместо более позднего нормального, "логического", IF.
 
 > AC>> 5) Почти такую же гибкость обеспечивают pure abstract классы.
 > AC>>    С другим, правда, гемороем, в других местах.
 >> Гибкость - да. Hо к сожалению, standard pure abstract virtual class
 >> library нету. Поэтому велосипед придется изобретать каждый раз заново.
 AC> А его в любом случае изобретать приходиться.
 AC> Мне часто нужны ассоциативные массивы.
 AC> Все эти smd::map, хэш таблицы и даже Judy в пролёте.
 
 И чем же std::map не ассоциативный массив? Или именно по памяти и скорости?
 
 AC> Программа на C++ сама по себе жрёт памяти не многим больше, чем на C.
 AC> Кроме того, тут дело не только в нём.
 AC> Моя программа сама по себе (на старте) под виндой жрёт 1.2Mb,
 AC> а под Linux - 10Mb.
 AC> Код - один и тот же, разница - большая.
 
 А причина такого различия?
 
 >> А ты glib, glib. Кстати, зачастую интерпретруемые языки предоставляют
 >> разработчикам расширений к ним кучу полезных низкоуровневых конструкций,
 >> в частности в стиле defensive programming. Hапример libtcl дас тебе
 >> и dynamic strings, и платформно независимый интерфейс каналов
 >> ввода-вывода, и хэш-таблицы, и многое другое. 
 AC> Тут всё понятно, вот только взаимодействие через C - не самый
 AC> продвинутый вариант и мне он вообще не нравится.
 AC> Для каждого чиха генерить новый экзешник,
 
 Почему генерить новый?
 
 AC> pure abstract classes бинарную совместимость обеспечивают.
 AC> Туда же можно reference counter встроить, как это сделано
 AC> в мелкомягком COM. Можно и идею class factory у них же стибрить.
 AC> Динамические языки пролетают, но только если не думать.
 AC> Hа самом деле в фиксированное количество интерфейсных функций
 AC> влезеть всё.
 AC> И я мог, бы, например, без влезания в кодярник и построения нового,
 AC> заменить regexp engine на свой установив переменную в ~/.profile
 AC> или заменить тамошние ассоциативные массивы на Judy.
 
 AC> Я, похоже, зациклился, но чем плох
 AC> dlopen мне так никто и не объяснил.
 
 Чем плох для тебя - не знаю.
 Чем плох вообще - тут можно сделать предположение. Hапример, проблемами
 связи разноязыкого кода в большей степени, чем для винды.
 libc была бы универсальной прослойкой, если бы она не была такая кривая
 и постоянно меняющаяся.
 -netch-
 --- ifmail v.2.15dev5
  * Origin: Dark side of coredump (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 386SX and RedHat_8.0   Igor   29 Jan 2003 09:36:05 
 Re: 386SX and RedHat_8.0   Oleg Drokin   29 Jan 2003 11:16:55 
 Re: 386SX and RedHat_8.0   Igor   29 Jan 2003 15:48:26 
 Re: 386SX and RedHat_8.0   Oleg Drokin   29 Jan 2003 22:45:42 
 Re: 386SX and RedHat_8.0   Igor   30 Jan 2003 08:52:47 
 Re: 386SX and RedHat_8.0   Oleg Drokin   30 Jan 2003 11:30:54 
 Re: 386SX and RedHat_8.0   Igor   30 Jan 2003 12:28:04 
 Re: 386SX and RedHat_8.0   Oleg Drokin   30 Jan 2003 12:48:34 
 Re: 386SX and RedHat_8.0   Dmitry Ponyatov   30 Jan 2003 23:20:16 
 Re: 386SX and RedHat_8.0   Dmitry Ponyatov   30 Jan 2003 20:04:34 
 Re: 386SX and RedHat_8.0   Vladimir Bormotov   29 Jan 2003 23:40:53 
 Re: 386SX and RedHat_8.0   Igor   30 Jan 2003 09:14:05 
 Re: 386SX and RedHat_8.0   Vladimir Bormotov   30 Jan 2003 14:45:02 
 Re: 386SX and RedHat_8.0   Victor Wagner   30 Jan 2003 15:08:33 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   30 Jan 2003 17:19:46 
 Re: 386SX and RedHat_8.0   Victor Wagner   30 Jan 2003 18:29:08 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 14:25:22 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 14:31:34 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   31 Jan 2003 15:35:07 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 16:00:15 
 Re: 386SX and RedHat_8.0   Eugene Karpachov   31 Jan 2003 16:50:52 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 17:07:41 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 17:24:32 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   31 Jan 2003 23:14:44 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   03 Feb 2003 16:54:23 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   04 Feb 2003 20:24:15 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   04 Feb 2003 21:27:58 
 Re: 386SX and RedHat_8.0   Alexander S. Usov   05 Feb 2003 03:03:55 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   05 Feb 2003 12:10:04 
 Re: 386SX and RedHat_8.0   Alexander S. Usov   05 Feb 2003 16:17:41 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   05 Feb 2003 12:04:25 
 Re: 386SX and RedHat_8.0   Alexander S. Usov   05 Feb 2003 16:37:11 
 Re: 386SX and RedHat_8.0   Eugene Karpachov   05 Feb 2003 10:37:11 
 Re: 386SX and RedHat_8.0   Eugene Karpachov   31 Jan 2003 17:25:33 
 Re: 386SX and RedHat_8.0   Alex Korchmar   31 Jan 2003 23:13:43 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   01 Feb 2003 00:18:25 
 Re: 386SX and RedHat_8.0   Alex Korchmar   01 Feb 2003 01:01:12 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   03 Feb 2003 16:54:21 
 Re: 386SX and RedHat_8.0   Vasily Tchekalkin   31 Jan 2003 18:36:59 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 17:24:31 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   31 Jan 2003 17:09:43 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 17:14:17 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   31 Jan 2003 22:10:07 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 17:14:48 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 17:23:00 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 17:44:55 
 Re: 386SX and RedHat_8.0   Oleg Drokin   31 Jan 2003 18:35:56 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 19:23:30 
 Re: 386SX and RedHat_8.0   Oleg Drokin   31 Jan 2003 19:34:36 
 Re: 386SX and RedHat_8.0   Oleg Drokin   31 Jan 2003 18:15:27 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 18:51:22 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   31 Jan 2003 22:14:43 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   31 Jan 2003 16:29:54 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 16:57:59 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   31 Jan 2003 17:14:49 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 17:14:48 
 Re: 386SX and RedHat_8.0   Eugene Karpachov   31 Jan 2003 17:30:37 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 17:44:25 
 Re: 386SX and RedHat_8.0   Eugene Karpachov   31 Jan 2003 19:06:42 
 Re: 386SX and RedHat_8.0   Valentin Nechayev   31 Jan 2003 19:37:41 
 Re: 386SX and RedHat_8.0   Eugene Karpachov   31 Jan 2003 23:25:34 
 Re: 386SX and RedHat_8.0   Aleksey Cheusov   01 Feb 2003 00:00:03 
 Re: 386SX and RedHat_8.0   Victor Wagner   01 Feb 2003 00:50:57 
 Re: 386SX and RedHat_8.0   Artem Chuprina   30 Jan 2003 20:43:48 
 Re: 386SX and RedHat_8.0   Igor   30 Jan 2003 15:59:29 
 Re: 386SX and RedHat_8.0   Victor Wagner   30 Jan 2003 16:31:40 
 Re: 386SX and RedHat_8.0   Vladimir Bormotov   30 Jan 2003 17:17:13 
 Re: 386SX and RedHat_8.0   Zahar Kiselev   31 Jan 2003 01:50:02 
 Re: 386SX and RedHat_8.0   Igor   31 Jan 2003 09:23:41 
 Re: 386SX and RedHat_8.0   Zahar Kiselev   31 Jan 2003 01:17:12 
 Re: 386SX and RedHat_8.0   Igor   31 Jan 2003 09:55:18 
 386SX and RedHat_8.0   Svyatoslav Abramenkov   31 Jan 2003 10:50:45 
 Re: 386SX and RedHat_8.0   Victor Wagner   31 Jan 2003 16:27:21 
 386SX and RedHat_8.0   Svyatoslav Abramenkov   31 Jan 2003 20:40:43 
 386SX and RedHat_8.0   Zahar Kiselev   01 Feb 2003 16:18:00 
 Re: 386SX and RedHat_8.0   Ian Dichkovsky   31 Jan 2003 18:23:06 
 386SX and RedHat_8.0   Nikolay Popov   12 Feb 2003 00:54:14 
 386SX and RedHat_8.0   Dmitry Novikov   30 Jan 2003 21:07:15 
 Re: 386SX and RedHat_8.0   Vladimir Bormotov   31 Jan 2003 15:07:31 
 Re: 386SX and RedHat_8.0   Igor Sysoev   05 Feb 2003 20:28:53 
 Re: 386SX and RedHat_8.0   Oleg Drokin   05 Feb 2003 22:14:03 
 Re: 386SX and RedHat_8.0   Igor Sysoev   06 Feb 2003 01:20:35 
 Re: 386SX and RedHat_8.0   Oleg Drokin   06 Feb 2003 10:42:43 
 Re: 386SX and RedHat_8.0   Igor Sysoev   06 Feb 2003 14:03:21 
 Re: 386SX and RedHat_8.0   Oleg Drokin   06 Feb 2003 15:18:57 
 Re: 386SX and RedHat_8.0   Igor Sysoev   06 Feb 2003 17:46:51 
 Re: 386SX and RedHat_8.0   Oleg Drokin   06 Feb 2003 18:39:10 
 Re: 386SX and RedHat_8.0   Roman Belenov   06 Feb 2003 19:52:12 
 Re: Re: 386SX and RedHat_8.0   Alexandr S. Agranovsky   06 Feb 2003 22:48:30 
 Re: 386SX and RedHat_8.0   Alexandr S. Agranovsky   29 Jan 2003 22:35:32 
 Re: 386SX and RedHat_8.0   Dmitry Ponyatov   30 Jan 2003 20:02:52 
Архивное /ru.linux/73683e0c54db.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional