From: "Alexander Bokovoy" <ab@altlinux.org> To: "ALT Linux Team development discussions" <devel@lists.altlinux.org> Subject: Re: [devel] Управление группами пользователя Date: Sun, 16 Nov 2008 20:14:16 +0300 Message-ID: <6062a6e60811160914h1ab21082t95a8948a30270e66@mail.gmail.com> (raw) In-Reply-To: <47c0071b0811160839p3207e6dfk71e9c02ad44a66d6@mail.gmail.com> 2008/11/16 Dmitriy M. Maslennikov <maslennikovdm@gmail.com>: > 16 ноября 2008 г. 18:54 пользователь Alexander Bokovoy > <ab@altlinux.org> написал: >> Посмотрите на Vala как на пример высокоуровневого языка, использующего >> для выражения средства glib2. Vala написана на самой себе, так что >> качестве примера довольно выразительна. > Я не спорю, что вокруг glib2 можно построить высокоуровневую систему. > Но это уже не С. Я полагаю, что вы не предлагаете нам написать модул > на vala? Нет, не предлагаю. А на Vala посмотрите. И с точки зрения "не C", и с точки зрения высокоуровневости. Для понимания проблематики стоит также посмотреть, например, на http://live.gnome.org/IteratorsAPI. >> У меня тоже есть пожелание к переезду libstdc++ в /lib. >> >> Впрочем, от необдуманного написания кода это не спасает и "легче >> выражаются языковыми конструкциями" вряди может служить в качестве >> обоснования при написании низкоуровневых компонент, критичность >> которых довольно высока. > Легче выражается -> меньше шансов допустить ошибку. Главная ошибка уже допущена: для решения задачи выбрано средство, которое не соответствует уровню абстракции, на котором должен работать модуль. > По-моему инструмент надо выбирать не минимально достаточный для > выполнения задачи, а наиболее удобный. Разве не так? Нет. Должен выбираться соответствующий области применения инструмент. В данном случае есть целый ряд требований к интерфейсу и побочным эффектам от уже существующих приложений. Этот "монастырь" со своими правилами, которые надо соблюдать, существует уже очень давно и выбор средств тут ограничен именно требованиями совместимости. Не важно, удобно лично Вам это средство или нет, важно, чтобы оно производило результат, который удовлетворяет требованиям к таким модулям. Надо отметить, что не все из этих требований нормально описаны в письменной форме, но тем не менее они существуют. > Я утверждаю, что так как С++ поддерживает практически все конструкции > С, но добавляет много новых, то он практически всегда удобнее. > Единственный недостаток - шаблоны раздувают код, поэтому он может не > подходить для встраиваемых систем. Для написания приложений для > толстого desktop он практически всюду лучше С. Не путайте Ваши приложения для десктопа и низкоуровневые компоненты операционной системы. >> Я не говорю уже про втягивание pthreads во >> все приложения, которые могут быть и не готовы к этому. Один такой >> пример плохой реализации внутри glibc мы уже видели >> (http://samba.org/~tridge/junkcode/aio_uid.c). > Да, на втягивании pthread в модуль (другой) мы уже наступали. В старом > тулчейне gettext переставал работать) Вот видите. Но тем не менее, тянете его за собой. >> Главное, что я хотел продемонстрировать в этом обсуждении и что вы с >> Дмитрием так пока и не поняли, что архитектурные и дизайнерские >> решения не всегда принимаются на основании личных предпочтений. Прежде >> всего необходимо думать о тех, кто использует разработанное. В случае >> компонент ОС это прежде всего другие приложения и принцип "не навреди" >> здесь играет главенствующую роль. > Согласен. Но все-таки, чем С++ плох? Хочется услышать именно > конструктивную критику, а не заявления, типа, "плох и все". В данном конкретном случае C++ не является средством, которое используется для написания низкоуровневых компонент, динамически загружаемых во все приложения в системе из-за невозможности проконтролировать все побочные эффекты, которые возникают при загрузке и использовании такого сложного кода, как C++ stdlib. -- / Alexander Bokovoy
next prev parent reply other threads:[~2008-11-16 17:14 UTC|newest] Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top 2008-11-14 16:53 Dmitriy M. Maslennikov 2008-11-14 18:01 ` Alexander Bokovoy 2008-11-14 18:35 ` Dmitriy M. Maslennikov 2008-11-14 18:49 ` Alexander Bokovoy 2008-11-14 19:11 ` Dmitriy M. Maslennikov 2008-11-14 19:28 ` Evgeny Sinelnikov 2008-11-14 19:45 ` Alexander Bokovoy 2008-11-14 19:51 ` Dmitriy M. Maslennikov 2008-11-14 19:55 ` Led 2008-11-14 19:56 ` Dmitriy M. Maslennikov 2008-11-14 20:01 ` Led 2008-11-14 20:07 ` Stanislav Ievlev 2008-11-14 20:10 ` Pavlov Konstantin 2008-11-14 20:20 ` Stanislav Ievlev 2008-11-14 20:24 ` Led 2008-11-14 20:28 ` Stanislav Ievlev 2008-11-14 20:29 ` Dmitriy M. Maslennikov 2008-11-14 22:00 ` Денис Смирнов 2008-11-15 6:29 ` Dmitriy M. Maslennikov 2008-11-16 14:40 ` Stanislav Ievlev 2008-11-16 15:15 ` Evgeny Sinelnikov 2008-11-16 15:54 ` Alexander Bokovoy 2008-11-16 16:39 ` Dmitriy M. Maslennikov 2008-11-16 16:50 ` Andrey Rahmatullin 2008-11-16 16:52 ` Mikhail Gusarov 2008-11-16 17:46 ` Dmitriy M. Maslennikov 2008-11-16 17:54 ` Andrey Rahmatullin 2008-11-16 18:39 ` Evgeny Sinelnikov 2008-11-16 18:45 ` Led 2008-11-16 18:56 ` Evgeny Sinelnikov 2008-11-16 19:02 ` Dmitry V. Levin 2008-11-16 19:35 ` Dmitriy M. Maslennikov 2008-11-16 19:42 ` Alexander Bokovoy 2008-11-16 19:49 ` Evgeny Sinelnikov 2008-11-16 19:57 ` Alexander Bokovoy 2008-11-16 20:04 ` Dmitriy M. Maslennikov 2008-11-16 19:50 ` Dmitriy M. Maslennikov 2008-11-16 19:56 ` Alexander Bokovoy 2008-11-16 17:14 ` Alexander Bokovoy [this message] 2008-11-19 12:25 ` [devel] [JT] " Michael Shigorin 2008-11-19 12:38 ` Dmitriy M. Maslennikov 2008-11-19 13:35 ` Денис Смирнов 2008-11-19 13:44 ` Evgeny Sinelnikov 2008-11-19 13:44 ` Mikhail Gusarov 2008-11-19 13:54 ` Dmitriy M. Maslennikov 2008-11-19 14:12 ` Michael Shigorin 2008-11-19 14:15 ` Mikhail Gusarov 2008-11-19 14:17 ` Andrey Rahmatullin 2008-11-19 14:46 ` [devel] [JT] " Michael Shigorin 2008-11-19 14:05 ` Michael Shigorin 2008-11-19 14:22 ` [devel] [JT] " Alexey I. Froloff 2008-11-19 14:25 ` Evgeny Sinelnikov 2008-11-19 14:28 ` Mikhail Gusarov 2008-11-19 15:27 ` Alexey I. Froloff 2008-11-19 16:33 ` Evgeny Sinelnikov 2008-11-19 17:57 ` Денис Смирнов 2008-11-19 21:21 ` Evgeny Sinelnikov 2008-11-19 21:24 ` Денис Смирнов 2008-11-19 21:38 ` Evgeny Sinelnikov 2008-11-19 21:26 ` Mikhail Gusarov 2008-11-19 21:39 ` Evgeny Sinelnikov 2008-11-19 21:49 ` Mikhail Gusarov 2008-11-20 8:53 ` Evgeny Sinelnikov 2008-11-20 9:31 ` Mikhail Gusarov 2008-11-20 13:21 ` Evgeny Sinelnikov 2008-11-20 13:36 ` Mikhail Gusarov 2008-11-20 15:48 ` Evgeny Sinelnikov 2008-11-20 15:50 ` Mikhail Gusarov 2008-11-20 15:44 ` Alexey I. Froloff 2008-11-20 15:54 ` Evgeny Sinelnikov 2008-11-20 15:57 ` Damir Shayhutdinov 2008-11-20 7:33 ` Andrey Rahmatullin 2008-11-19 21:52 ` Mikhail Gusarov 2008-11-19 12:46 ` Alexey I. Froloff 2008-11-16 15:38 ` [devel] " Dmitriy M. Maslennikov 2008-11-16 15:54 ` Led 2008-11-16 18:08 ` Dmitry V. Levin 2008-11-14 20:13 ` Led 2008-11-19 12:20 ` [devel] [JT] alterator (was: Управление группами пользователя) Michael Shigorin 2008-11-14 19:54 ` [devel] Управление группами пользователя Led 2008-11-14 19:10 ` Stanislav Ievlev 2008-11-14 19:52 ` Led 2008-11-14 19:54 ` Dmitriy M. Maslennikov 2008-11-14 19:59 ` Led 2008-11-14 20:03 ` Dmitriy M. Maslennikov 2008-11-14 20:09 ` Led 2008-11-14 20:11 ` Dmitriy M. Maslennikov 2008-11-14 20:06 ` Dmitriy M. Maslennikov 2008-11-14 20:14 ` Led 2008-11-14 20:24 ` Dmitriy M. Maslennikov 2008-11-14 20:58 ` Sergey Bolshakov 2008-11-14 22:25 ` Evgeny Sinelnikov 2008-11-16 20:07 ` Dmitry V. Levin 2008-11-16 20:17 ` Evgeny Sinelnikov 2008-11-16 23:44 ` Vitaly Lipatov 2008-11-17 0:29 ` Evgeny Sinelnikov 2008-11-14 20:16 ` Alexey I. Froloff 2008-11-14 20:23 ` Stanislav Ievlev 2008-11-14 20:37 ` Alexey I. Froloff 2008-11-16 14:44 ` Stanislav Ievlev 2008-11-14 20:26 ` Dmitriy M. Maslennikov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=6062a6e60811160914h1ab21082t95a8948a30270e66@mail.gmail.com \ --to=ab@altlinux.org \ --cc=devel@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git