ALT Linux Team development discussions
 help / color / mirror / Atom feed
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

  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